GME
13
|
00001 // AggregateContextMenu.h: interface for the CAggregateContextMenu class. 00002 // 00004 00005 #if !defined(AFX_AGGREGATECONTEXTMENU_H__E9BEC526_A063_4D7D_AA05_2BE6764245B9__INCLUDED_) 00006 #define AFX_AGGREGATECONTEXTMENU_H__E9BEC526_A063_4D7D_AA05_2BE6764245B9__INCLUDED_ 00007 00008 00009 #if _MSC_VER > 1000 00010 #pragma once 00011 #endif // _MSC_VER > 1000 00012 #include "ActiveBrowserPropertyPage.h" 00013 00014 00015 typedef CComPtr<IMgaMetaBase>MgaMetaBasePtr; 00016 #define ADAPT(x) CAdapt<MgaMetaBasePtr>(x) 00017 00018 class CAggregateContextMenu : public CMenu 00019 { 00020 friend class CAggregatePropertyPage; 00021 00022 CAggregatePropertyPage*m_pParent; 00023 public: 00024 void OnRefreshLibrary(); 00025 void OnAttachLibrary(); 00026 void OnLibraryDependencies(); 00027 void OnLibraryAmbiguityChk(); 00028 void OnMFSourceControlUpdate(); 00029 void OnUsersActive(); 00030 void OnUsersOwner(); 00031 00032 UINT m_nSelectionCount; 00033 BOOL Run(CPoint); 00034 CAggregateContextMenu(CAggregatePropertyPage* pParent); 00035 virtual ~CAggregateContextMenu(); 00036 00037 protected: 00038 void OnOptions(); 00039 void OnCheckConstraint(); 00040 void CreateForAll(); 00041 void SetModelChildren(LPUNKNOWN pUnknown); 00042 void SetFolderChildren(LPUNKNOWN pUnknown); 00043 void CreateForSingleItem(); 00044 void OnReadOnly( bool ro); 00045 void OnHelp(); 00046 void OnShowInParent(); 00047 void OnFollowRef(); 00048 void OnRegistry(); 00049 void OnPreferences(); 00050 void OnAttributes(); 00051 void OnProperties(); 00052 void OnSortCreation(); 00053 void OnSortType(); 00054 void OnSortName(); 00055 void OnInterpret(); 00056 void OnCheckAllConstraint(); 00057 void OnEditDelete(); 00058 void OnEditPaste(); 00059 void OnEditPasteSpecialAsReference(); 00060 void OnEditPasteSpecialAsSubtype(); 00061 void OnEditPasteSpecialAsInstance(); 00062 void OnEditPasteClosure( bool merge = false); 00063 void OnEditCopy(); 00064 void OnEditCopyClosure(); 00065 void OnEditCopySmart(); 00066 void OnEditCut(); 00067 void OnCustomItems(UINT nID); 00068 BOOL DispatchCommand(UINT nSelectedID); 00069 private: 00070 UINT m_InsertionMaxID; 00071 UINT m_InsertionMinID; 00072 CArray<CAdapt<MgaMetaBasePtr>,CAdapt<MgaMetaBasePtr>&>m_MenuItem2MetaObjArray; 00073 }; 00074 00075 #endif // !defined(AFX_AGGREGATECONTEXTMENU_H__E9BEC526_A063_4D7D_AA05_2BE6764245B9__INCLUDED_)