|
|
//==============================================================;
//
// This source code is only intended as a supplement to
// existing Microsoft documentation.
//
//
//
//
// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
// PURPOSE.
//
// Copyright (C) 1999 Microsoft Corporation. All Rights Reserved.
//
//
//
//==============================================================;
#ifndef _SPACE_H
#define _SPACE_H
#include "globals.h"
#include "DeleBase.h"
//forward declaration
class CSpaceVehicle;
class CRocket : public CDelegationBase {
public: CRocket(_TCHAR *szName, int id, LONG lWeight, LONG lHeight, LONG lPayload, CSpaceVehicle *pParent); virtual ~CRocket();
virtual const _TCHAR *GetDisplayName(int nCol = 0); virtual const GUID & getNodeType() { return thisGuid; } virtual const int GetBitmapIndex() { return INDEX_SPACEICON; } BOOL getDeletedStatus() { return isDeleted; }
public: // virtual functions go here (for MMCN_*)
virtual HRESULT OnRename(LPOLESTR pszNewName); virtual HRESULT OnSelect(CComponent *pComponent, IConsole *pConsole, BOOL bScope, BOOL bSelect);
virtual HRESULT CreatePropertyPages(IPropertySheetCallback *lpProvider, LONG_PTR handle); virtual HRESULT HasPropertySheets(); virtual HRESULT GetWatermarks(HBITMAP *lphWatermark, HBITMAP *lphHeader, HPALETTE *lphPalette, BOOL *bStretch);
virtual HRESULT OnPropertyChange(IConsole *pConsole, CComponent *pComponent);
virtual HRESULT OnToolbarCommand(IConsole *pConsole, MMC_CONSOLE_VERB verb, IDataObject *pDataObject); virtual HRESULT OnSetToolbar(IControlbar *pControlbar, IToolbar *pToolbar, BOOL bScope, BOOL bSelect); virtual HRESULT OnUpdateItem(IConsole *pConsole, long item, ITEM_TYPE itemtype); virtual HRESULT OnRefresh(IConsole *pConsole); virtual HRESULT OnDelete(IConsole *pConsoleComp);
private: // {B95E11F5-6BE7-11d3-9156-00C04F65B3F9}
static const GUID thisGuid;
_TCHAR *szName; LONG lWeight; LONG lHeight; LONG lPayload; int nId; enum ROCKET_STATUS {RUNNING, PAUSED, STOPPED} iStatus;
LONG_PTR m_ppHandle;
static BOOL CALLBACK DialogProc( HWND hwndDlg, // handle to dialog box
UINT uMsg, // message
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
);
CSpaceVehicle* m_pParent;
BOOL isDeleted; };
class CSpaceVehicle : public CDelegationBase { public: CSpaceVehicle();
virtual ~CSpaceVehicle();
virtual const _TCHAR *GetDisplayName(int nCol = 0) { return _T("Future Vehicles"); } virtual const GUID & getNodeType() { return thisGuid; } virtual const int GetBitmapIndex() { return INDEX_SPACEICON; }
virtual void SetScopeItemValue(HSCOPEITEM hscopeitem) { m_hParentHScopeItem = hscopeitem; } virtual HSCOPEITEM GetParentScopeItem() { return m_hParentHScopeItem; }
public: // virtual functions go here (for MMCN_*)
virtual HRESULT OnShow(IConsole *pConsole, BOOL bShow, HSCOPEITEM scopeitem); virtual HRESULT OnAddMenuItems(IContextMenuCallback *pContextMenuCallback, long *pInsertionsAllowed); virtual HRESULT OnMenuCommand(IConsole *pConsole, IConsoleNameSpace *pConsoleNameSpace, long lCommandID, IDataObject *piDataObject);
private: enum { IDM_NEW_SPACE = 4 };
// {B95E11F4-6BE7-11d3-9156-00C04F65B3F9}
static const GUID thisGuid;
private: enum { NUMBER_OF_CHILDREN = 4 }; enum { MAX_NUMBER_OF_CHILDREN = 6 }; CRocket *children[MAX_NUMBER_OF_CHILDREN]; int m_cchildren; HSCOPEITEM m_hParentHScopeItem; };
#endif // _SPACE_H
|