GME
13
|
00001 //################################################################################################ 00002 // 00003 // Decorator Event Sink implementation 00004 // DecoratorEventSink.h 00005 // 00006 //################################################################################################ 00007 00008 #if !defined(AFX_DECORATOREVENTSINK_H__EB95C56D_04BC_47c9_A71B_305184F5FC44__INCLUDED_) 00009 #define AFX_DECORATOREVENTSINK_H__EB95C56D_04BC_47c9_A71B_305184F5FC44__INCLUDED_ 00010 00011 #if _MSC_VER > 1000 00012 #pragma once 00013 #endif // _MSC_VER > 1000 00014 00015 #include "StdAfx.h" 00016 #include "mga.h" 00017 #include "GmeLib.h" 00018 #include "resource.h" 00019 00020 00021 class CGMEView; 00022 class CGuiObject; 00023 00024 //################################################################################################ 00025 // 00026 // CLASS : CDecoratorEventSink 00027 // 00028 //################################################################################################ 00029 00030 class ATL_NO_VTABLE CDecoratorEventSink : 00031 public CComObjectRootEx<CComSingleThreadModel>, 00032 public CComCoClass<CDecoratorEventSink, &__uuidof(DecoratorEventSink)>, 00033 public ISupportErrorInfoImpl<&__uuidof(IMgaElementDecoratorEvents)>, 00034 public IMgaElementDecoratorEvents 00035 { 00036 protected: 00037 CDecoratorEventSink(); // protected constructor used by dynamic creation 00038 00039 public: 00040 DECLARE_REGISTRY_RESOURCEID(IDR_DECORATOREVENTSINK) 00041 DECLARE_NOT_AGGREGATABLE(CDecoratorEventSink) 00042 00043 BEGIN_COM_MAP(CDecoratorEventSink) 00044 COM_INTERFACE_ENTRY(IMgaElementDecoratorEvents) 00045 COM_INTERFACE_ENTRY(IMgaCommonDecoratorEvents) 00046 COM_INTERFACE_ENTRY(ISupportErrorInfo) 00047 END_COM_MAP() 00048 00049 // Attributes 00050 public: 00051 00052 // Operations 00053 public: 00054 void SetView(CGMEView* view); 00055 void SetGuiObject(CGuiObject* guiObject); 00056 00057 // Overrides 00058 public: 00059 // Implementation 00060 00061 public: 00062 ~CDecoratorEventSink(); 00063 00064 protected: 00065 CGMEView* m_view; 00066 CGuiObject* m_guiObject; 00067 void* m_operationData; 00068 00069 public: 00070 STDMETHOD( Refresh ) ( /*[in]*/ refresh_mode_enum refreshMode ); 00071 STDMETHOD( OperationCanceled ) ( void ); 00072 STDMETHOD( CursorChanged ) ( /*[in]*/ LONG newCursorID ); 00073 STDMETHOD( CursorRestored ) ( void ); 00074 00075 STDMETHOD( LabelEditingStarted ) ( /*[in]*/ LONG left, /*[in]*/ LONG top, /*[in]*/ LONG right, /*[in]*/ LONG bottom ); 00076 STDMETHOD( LabelEditingFinished ) ( /*[in]*/ LONG left, /*[in]*/ LONG top, /*[in]*/ LONG right, /*[in]*/ LONG bottom ); 00077 STDMETHOD( LabelChanged ) ( /*[in]*/ BSTR newLabel ); 00078 STDMETHOD( LabelMovingStarted ) ( /*[in]*/ LONG nFlags, /*[in]*/ LONG left, /*[in]*/ LONG top, /*[in]*/ LONG right, /*[in]*/ LONG bottom ); 00079 STDMETHOD( LabelMoving ) ( /*[in]*/ LONG nFlags, /*[in]*/ LONG left, /*[in]*/ LONG top, /*[in]*/ LONG right, /*[in]*/ LONG bottom ); 00080 STDMETHOD( LabelMovingFinished ) ( /*[in]*/ LONG nFlags, /*[in]*/ LONG left, /*[in]*/ LONG top, /*[in]*/ LONG right, /*[in]*/ LONG bottom ); 00081 STDMETHOD( LabelMoved ) ( /*[in]*/ LONG nFlags, /*[in]*/ LONG x, /*[in]*/ LONG y ); 00082 STDMETHOD( LabelResizingStarted ) ( /*[in]*/ LONG nFlags, /*[in]*/ LONG left, /*[in]*/ LONG top, /*[in]*/ LONG right, /*[in]*/ LONG bottom ); 00083 STDMETHOD( LabelResizing ) ( /*[in]*/ LONG nFlags, /*[in]*/ LONG left, /*[in]*/ LONG top, /*[in]*/ LONG right, /*[in]*/ LONG bottom ); 00084 STDMETHOD( LabelResizingFinished ) ( /*[in]*/ LONG nFlags, /*[in]*/ LONG left, /*[in]*/ LONG top, /*[in]*/ LONG right, /*[in]*/ LONG bottom ); 00085 STDMETHOD( LabelResized ) ( /*[in]*/ LONG nFlags, /*[in]*/ LONG cx, /*[in]*/ LONG cy ); 00086 00087 STDMETHOD( GeneralOperationStarted ) ( /*[in]*/ ULONGLONG operationData ); 00088 STDMETHOD( GeneralOperationFinished ) ( /*[out]*/ ULONGLONG* operationData ); 00089 00090 STDMETHOD( WindowMovingStarted ) ( /*[in]*/ LONG nFlags, /*[in]*/ LONG left, /*[in]*/ LONG top, /*[in]*/ LONG right, /*[in]*/ LONG bottom ); 00091 STDMETHOD( WindowMoving ) ( /*[in]*/ LONG nFlags, /*[in]*/ LONG left, /*[in]*/ LONG top, /*[in]*/ LONG right, /*[in]*/ LONG bottom ); 00092 STDMETHOD( WindowMovingFinished ) ( /*[in]*/ LONG nFlags, /*[in]*/ LONG left, /*[in]*/ LONG top, /*[in]*/ LONG right, /*[in]*/ LONG bottom ); 00093 STDMETHOD( WindowMoved ) ( /*[in]*/ LONG nFlags, /*[in]*/ LONG x, /*[in]*/ LONG y ); 00094 00095 STDMETHOD( WindowResizingStarted ) ( /*[in]*/ LONG nFlags, /*[in]*/ LONG left, /*[in]*/ LONG top, /*[in]*/ LONG right, /*[in]*/ LONG bottom ); 00096 STDMETHOD( WindowResizing ) ( /*[in]*/ LONG nFlags, /*[in]*/ LONG left, /*[in]*/ LONG top, /*[in]*/ LONG right, /*[in]*/ LONG bottom ); 00097 STDMETHOD( WindowResizingFinished ) ( /*[in]*/ LONG nFlags, /*[in]*/ LONG left, /*[in]*/ LONG top, /*[in]*/ LONG right, /*[in]*/ LONG bottom ); 00098 STDMETHOD( WindowResized ) ( /*[in]*/ LONG nFlags, /*[in]*/ LONG cx, /*[in]*/ LONG cy ); 00099 }; 00100 00101 OBJECT_ENTRY_AUTO(__uuidof(DecoratorEventSink), CDecoratorEventSink) 00102 00103 00104 00105 //{{AFX_INSERT_LOCATION}} 00106 // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 00107 00108 #endif // !defined(AFX_DECORATOREVENTSINK_H__EB95C56D_04BC_47c9_A71B_305184F5FC44__INCLUDED_)