| 1 |
#ifndef C3DPLUGINMODE_H_INCLUDED |
| 2 |
#define C3DPLUGINMODE_H_INCLUDED |
| 3 |
|
| 4 |
#include "CInterfaceMode.h" |
| 5 |
|
| 6 |
class CModelPlugin; |
| 7 |
|
| 8 |
/* |
| 9 |
* レンダリングプラグインモード |
| 10 |
*/ |
| 11 |
class C3DPluginMode: public CPluginMode{ |
| 12 |
protected: |
| 13 |
public: |
| 14 |
C3DPluginMode(char *); |
| 15 |
virtual ~C3DPluginMode(){} |
| 16 |
virtual void WindowResized(int w, int h, CWindowCtrl * wnd){ |
| 17 |
CPluginMode::WindowResized(w, h, wnd); |
| 18 |
} |
| 19 |
virtual CPopMenu *Dispatch(CMDTYPE, DWORD) = 0; |
| 20 |
virtual bool DrawBackground(){ return false; } |
| 21 |
virtual char *PluginDirName() = 0; |
| 22 |
virtual CPluginList *GetPluginList() = 0; |
| 23 |
CPlugin *FindPlugin(char *type, char *id){ return Find3DPlugin(type, id); } |
| 24 |
virtual CPlugin *Find3DPlugin(char *, char *){ return NULL; } |
| 25 |
char *LoadPluginSetting(char *str){ return Load3DPluginSetting(str); } |
| 26 |
virtual char *Load3DPluginSetting(char *str){ return str; } |
| 27 |
void EnterPlugin(); |
| 28 |
virtual void Enter3DPlugin() = 0; |
| 29 |
void ModalFuncPlugin(){ ModalFunc3DPlugin(); } |
| 30 |
virtual void ModalFunc3DPlugin(){} |
| 31 |
void ScanInputPlugin(); |
| 32 |
virtual void ScanInput3DPlugin() = 0; |
| 33 |
void RenderPlugin(); |
| 34 |
virtual void Render3DPlugin() = 0; |
| 35 |
}; |
| 36 |
|
| 37 |
/* |
| 38 |
* モデルプラグインモード |
| 39 |
*/ |
| 40 |
class CModelPluginMode: public C3DPluginMode{ |
| 41 |
protected: |
| 42 |
CCamera m_MyCamera; // カメラ |
| 43 |
CWindowCtrl m_SwitchWindow; // スイッチ窓 |
| 44 |
CListView m_SwitchListView; // スイッチリスト |
| 45 |
CListView m_OptionListView; // オプションリスト |
| 46 |
CModelPlugin *m_PreviewModel; // 表示中プラグイン |
| 47 |
public: |
| 48 |
CModelPluginMode(char *); |
| 49 |
virtual ~CModelPluginMode(){} |
| 50 |
void InitSwitchWindow(); |
| 51 |
virtual void WindowResized(int, int, CWindowCtrl *); |
| 52 |
virtual CPopMenu *Dispatch(CMDTYPE, DWORD) = 0; |
| 53 |
virtual CModelPlugin *GetModelPlugin() = 0; |
| 54 |
virtual char *PluginDirName() = 0; |
| 55 |
virtual CPluginList *GetPluginList() = 0; |
| 56 |
CPlugin *Find3DPlugin(char *type, char *id){ return FindModelPlugin(type, id); } |
| 57 |
virtual CPlugin *FindModelPlugin(char *, char *){ return NULL; } |
| 58 |
char *Load3DPluginSetting(char *str){ return LoadModelPluginSetting(str); } |
| 59 |
virtual char *LoadModelPluginSetting(char *str){ return str; } |
| 60 |
void Enter3DPlugin(); |
| 61 |
virtual void EnterModelPlugin() = 0; |
| 62 |
void ModalFunc3DPlugin(){ ModalFuncModelPlugin(); } |
| 63 |
virtual void ModalFuncModelPlugin(){} |
| 64 |
void ScanInput3DPlugin(); |
| 65 |
virtual CModelInst *ScanInputModelPlugin() = 0; |
| 66 |
void Render3DPlugin(); |
| 67 |
virtual void RenderModelPlugin() = 0; |
| 68 |
}; |
| 69 |
|
| 70 |
#endif |