2 * Copyright (c) 2002-2004 Apple Computer, Inc. All rights reserved.
4 * @APPLE_LICENSE_HEADER_START@
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
21 * @APPLE_LICENSE_HEADER_END@
23 Change History (most recent first):
25 $Log: ConfigPropertySheet.h,v $
26 Revision 1.4 2005/03/03 19:55:21 shersche
27 <rdar://problem/4034481> ControlPanel source code isn't saving CVS log info
32 #ifndef _ConfigPropertySheet_h
33 #define _ConfigPropertySheet_h
36 #include "FirstPage.h"
37 #include "SecondPage.h"
38 #include "ThirdPage.h"
45 //---------------------------------------------------------------------------------------------------------------------------
46 // CConfigPropertySheet
47 //---------------------------------------------------------------------------------------------------------------------------
49 class CConfigPropertySheet
: public CPropertySheet
53 CConfigPropertySheet();
54 virtual ~CConfigPropertySheet();
56 typedef std::list
<CString
> StringList
;
58 StringList m_browseDomains
;
59 StringList m_regDomains
;
63 CFirstPage m_firstPage
;
64 CSecondPage m_secondPage
;
65 CThirdPage m_thirdPage
;
67 //{{AFX_VIRTUAL(CConfigPropertySheet)
70 DECLARE_DYNCREATE(CConfigPropertySheet
)
72 //{{AFX_MSG(CConfigPropertySheet)
76 afx_msg BOOL
OnInitDialog();
77 afx_msg BOOL
OnCommand( WPARAM wParam
, LPARAM lParam
);
78 afx_msg LONG
OnDataReady( WPARAM inWParam
, LPARAM inLParam
);
79 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
;