|
|
/*++
Copyright (C) Microsoft Corporation, 1995 - 1999 All rights reserved.
Module Name:
srvprop.hxx
Abstract:
Server properties header.
Author:
Steve Kiraly (steveKi) 11-Nov-1995
Revision History:
--*/ #ifndef _LOCPROP_HXX_
#define _LOCPROP_HXX_
class TFindLocDlg; class TLocationPropertySheet;
/********************************************************************
Location property sheet front end.
********************************************************************/
class TLocationPropertySheetFrontEnd { SIGNATURE( 'lofe' )
public:
TLocationPropertySheetFrontEnd( IN IShellPropSheetExt *pShellPropSheetExt, IN LPDATAOBJECT lpdobj, IN LPFNADDPROPSHEETPAGE lpfnAddPage, IN LPARAM lParam );
~TLocationPropertySheetFrontEnd( VOID );
BOOL bValid( VOID ) const;
static HRESULT Create( IN OUT TLocationPropertySheetFrontEnd **ppPropertySheet, IN IShellPropSheetExt *pShellPropSheetExt, IN LPDATAOBJECT lpdobj, IN LPFNADDPROPSHEETPAGE lpfnAddPage, IN LPARAM lParam );
static VOID Destroy( IN OUT TLocationPropertySheetFrontEnd **ppPropertySheet );
BOOL AddPropertyPages( IN LPFNADDPROPSHEETPAGE lpfnAddPage, IN LPARAM lParam );
BOOL CreatePropertyPage( IN LPFNADDPROPSHEETPAGE lpfnAddPage, IN LPARAM lParam, IN MGenericProp *pPage, IN UINT Template );
private:
//
// Copying and assignment not supported.
//
TLocationPropertySheetFrontEnd( const TLocationPropertySheetFrontEnd & );
TLocationPropertySheetFrontEnd & operator = ( const TLocationPropertySheetFrontEnd & );
BOOL _bValid; IShellPropSheetExt *_pShellPropSheetExt; LPDATAOBJECT _lpdobj; TLocationPropertySheet *_pLocation;
};
/********************************************************************
Location property sheet.
********************************************************************/
class TLocationPropertySheet : public MGenericProp { SIGNATURE( 'lops' )
public:
TLocationPropertySheet( IN IShellPropSheetExt *pIShellPropSheetExt, IN IDataObject *_pdobj );
~TLocationPropertySheet( VOID );
BOOL bValid( VOID ) const;
UINT uGetResourceTemplateID( VOID ) const;
private:
enum EPropertyAccess { kPropertyAccessNone, kPropertyAccessRead,
//
// Implies read permission.
//
kPropertyAccessWrite, };
//
// Copying and assignment not supported.
//
TLocationPropertySheet( const TLocationPropertySheet & );
TLocationPropertySheet & operator = ( const TLocationPropertySheet & );
BOOL bHandleMessage( IN UINT uMsg, IN WPARAM wParam, IN LPARAM lParam ); VOID vDestroy( VOID );
BOOL CheckPropertyAccess( IN LPCTSTR pszDsObjectName, IN EPropertyAccess &Access );
BOOL InitializeDsObjectClipboardFormat( VOID );
BOOL GetDsObjectNameFromIDataObject( IN IDataObject *pdobj, IN TString &strDsObjectName, IN TString &strDsObjectClass );
LPTSTR ByteOffset( IN LPDSOBJECTNAMES pObject, IN UINT uOffset );
BOOL Handle_InitDialog( IN WPARAM wParam, IN LPARAM lParam );
BOOL Handle_Help( IN UINT uMsg, IN WPARAM wParam, IN LPARAM lParam );
BOOL Handle_Command( IN WPARAM wParam, IN LPARAM lParam );
BOOL Handle_Notify( IN WPARAM wParam, IN LPARAM lParam );
BOOL GetObjectInterface( IN LPCTSTR strDsObject, IN OUT IADs **ppDsObject );
BOOL GetDefaultSiteName( IN TString &strLocation );
VOID BrowseLocations( VOID );
IShellPropSheetExt *_pShellPropSheetExt; BOOL _bValid; UINT _cfDsObjectNames; TString _strDsObjectName; TString _strDsObjectClass; IADs *_pDsObject; TDirectoryService _Ds; EPropertyAccess _PropertyAccess; UINT _uLocationEditID; UINT _uBrowseID; TString _strLocation; };
#endif // end _LOCPROP_HXX_
|