diff options
Diffstat (limited to 'mDNSResponder/Clients/ExplorerPlugin/ExplorerBar.h')
-rw-r--r-- | mDNSResponder/Clients/ExplorerPlugin/ExplorerBar.h | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/mDNSResponder/Clients/ExplorerPlugin/ExplorerBar.h b/mDNSResponder/Clients/ExplorerPlugin/ExplorerBar.h new file mode 100644 index 00000000..01d1beee --- /dev/null +++ b/mDNSResponder/Clients/ExplorerPlugin/ExplorerBar.h @@ -0,0 +1,104 @@ +/* -*- Mode: C; tab-width: 4 -*- + * + * Copyright (c) 2003-2004 Apple Computer, Inc. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef __EXPLORER_BAR__ +#define __EXPLORER_BAR__ + +#include "StdAfx.h" + +#include "ExplorerBarWindow.h" +#include "ExplorerPlugin.h" + +//=========================================================================================================================== +// ExplorerBar +//=========================================================================================================================== + +class ExplorerBar : public IDeskBand, + public IInputObject, + public IObjectWithSite, + public IPersistStream, + public IContextMenu +{ +protected: + +DWORD mRefCount; +IInputObjectSite * mSite; +IWebBrowser2 * mWebBrowser; +HWND mParentWindow; +BOOL mFocus; +DWORD mViewMode; +DWORD mBandID; +ExplorerBarWindow mWindow; + +public: + +ExplorerBar( void ); +~ExplorerBar( void ); + +// IUnknown methods + +STDMETHODIMP QueryInterface( REFIID inID, LPVOID *outResult ); +STDMETHODIMP_( DWORD ) AddRef( void ); +STDMETHODIMP_( DWORD ) Release( void ); + +// IOleWindow methods + +STDMETHOD( GetWindow ) ( HWND *outWindow ); +STDMETHOD( ContextSensitiveHelp ) ( BOOL inEnterMode ); + +// IDockingWindow methods + +STDMETHOD( ShowDW ) ( BOOL inShow ); +STDMETHOD( CloseDW ) ( DWORD inReserved ); +STDMETHOD( ResizeBorderDW ) ( LPCRECT inBorder, IUnknown *inPunkSite, BOOL inReserved ); + +// IDeskBand methods + +STDMETHOD( GetBandInfo ) ( DWORD inBandID, DWORD inViewMode, DESKBANDINFO *outInfo ); + +// IInputObject methods + +STDMETHOD( UIActivateIO ) ( BOOL inActivate, LPMSG inMsg ); +STDMETHOD( HasFocusIO ) ( void ); +STDMETHOD( TranslateAcceleratorIO ) ( LPMSG inMsg ); + +// IObjectWithSite methods + +STDMETHOD( SetSite ) ( IUnknown *inPunkSite ); +STDMETHOD( GetSite ) ( REFIID inID, LPVOID *outResult ); + +// IPersistStream methods + +STDMETHOD( GetClassID ) ( LPCLSID outClassID ); +STDMETHOD( IsDirty ) ( void ); +STDMETHOD( Load ) ( LPSTREAM inStream ); +STDMETHOD( Save ) ( LPSTREAM inStream, BOOL inClearDirty ); +STDMETHOD( GetSizeMax ) ( ULARGE_INTEGER *outSizeMax ); + +// IContextMenu methods + +STDMETHOD( QueryContextMenu ) ( HMENU hContextMenu, UINT iContextMenuFirstItem, UINT idCmdFirst, UINT idCmdLast, UINT uFlags ); +STDMETHOD( GetCommandString ) ( UINT_PTR idCmd, UINT uType, UINT* pwReserved, LPSTR pszName, UINT cchMax ); +STDMETHOD( InvokeCommand ) ( LPCMINVOKECOMMANDINFO lpici ); + +// Other + +OSStatus SetupWindow( void ); +OSStatus GoToURL( const CString &inURL ); +}; + +#endif // __EXPLORER_BAR__ |