Imported Upstream version 878.70.2
[platform/upstream/mdnsresponder.git] / mDNSMacOSX / DomainBrowser / macOS / CNDomainBrowserView.h
1 /*
2  *
3  * Copyright (c) 2016 Apple Inc. All rights reserved.
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *     http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17
18 #import <Cocoa/Cocoa.h>
19
20 @protocol CNDomainBrowserViewDelegate;
21
22 IB_DESIGNABLE
23
24 @interface CNDomainBrowserView : NSView
25
26 @property (nonatomic) IBInspectable BOOL                                        browseRegistration;
27 @property (nonatomic) IBInspectable BOOL                                        ignoreLocal;
28 @property (nonatomic) IBInspectable BOOL                                        ignoreBTMM;
29 @property (weak)      IBOutlet          id<CNDomainBrowserViewDelegate>             delegate;
30
31 @property (readonly)                NSString *                                  selectedDNSDomain;
32 @property (readonly)                NSString *                                  defaultDNSDomain;
33 @property (readonly)                NSArray *                                   flattenedDNSDomains;
34
35 @property (readonly)                BOOL                                        isBrowsing;
36
37 - (void)startBrowse;
38 - (void)stopBrowse;
39
40 @end
41
42 @protocol CNDomainBrowserViewDelegate <NSObject>
43
44 @optional
45
46 - (void)bonjourBrowserDomainSelected:(NSString *)domain;
47 - (void)bonjourBrowserDomainUpdate:(NSString *)defaultDomain;
48
49 @end
50
51 @interface CNBonjourDomainCell : NSCell
52 @end
53
54 @interface CNBonjourDomainView : NSView
55
56 @property(strong, nonatomic)   NSString *       domain;
57
58 @end