1 /* -*- Mode: C; tab-width: 4 -*-
3 * Copyright (c) 2002-2004 Apple Computer, Inc. All rights reserved.
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
9 * http://www.apache.org/licenses/LICENSE-2.0
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.
17 Change History (most recent first):
19 $Log: ConfigPropertySheet.h,v $
20 Revision 1.5 2006/08/14 23:25:28 cheshire
21 Re-licensed mDNSResponder daemon source code under Apache License, Version 2.0
23 Revision 1.4 2005/03/03 19:55:21 shersche
24 <rdar://problem/4034481> ControlPanel source code isn't saving CVS log info
29 #ifndef _ConfigPropertySheet_h
30 #define _ConfigPropertySheet_h
33 #include "FirstPage.h"
34 #include "SecondPage.h"
35 #include "ThirdPage.h"
42 //---------------------------------------------------------------------------------------------------------------------------
43 // CConfigPropertySheet
44 //---------------------------------------------------------------------------------------------------------------------------
46 class CConfigPropertySheet
: public CPropertySheet
50 CConfigPropertySheet();
51 virtual ~CConfigPropertySheet();
53 typedef std::list
<CString
> StringList
;
55 StringList m_browseDomains
;
56 StringList m_regDomains
;
60 CFirstPage m_firstPage
;
61 CSecondPage m_secondPage
;
62 CThirdPage m_thirdPage
;
64 //{{AFX_VIRTUAL(CConfigPropertySheet)
67 DECLARE_DYNCREATE(CConfigPropertySheet
)
69 //{{AFX_MSG(CConfigPropertySheet)
73 afx_msg BOOL
OnInitDialog();
74 afx_msg BOOL
OnCommand( WPARAM wParam
, LPARAM lParam
);
76 afx_msg LONG
OnDataReady( WPARAM inWParam
, LPARAM inLParam
);
78 afx_msg LONG
OnRegistryChanged( WPARAM inWParam
, LPARAM inLParam
);
91 SetupRegistryNotifications();
94 TearDownRegistryNotifications();
97 DecodeDomainName( const char * raw
, CString
& decoded
);
100 GetNextLabel( const char * cstr
, char label
[64] );
102 static void DNSSD_API
106 DNSServiceFlags flags
,
107 uint32_t interfaceIndex
,
108 DNSServiceErrorType errorCode
,
109 const char * replyDomain
,
113 static void DNSSD_API
117 DNSServiceFlags flags
,
118 uint32_t interfaceIndex
,
119 DNSServiceErrorType errorCode
,
120 const char * replyDomain
,
124 // This thread will watch for registry changes
126 static unsigned WINAPI
134 HANDLE m_threadExited
;
135 DNSServiceRef m_browseDomainsRef
;
136 DNSServiceRef m_regDomainsRef
;
137 CRITICAL_SECTION m_lock
;