00001 /*----------------------------------------------------- 00002 DEFINE 00003 *------------------------------------------------------*/ 00004 #if !defined(__TOOLS_MARACAS_TOOLS_H__) 00005 #define __TOOLS_MARACAS_TOOLS_H__ 00006 00007 //#include "interface/wxWindows/widgets/wxManualSegmentation_MPRWidget.h" 00008 /*----------------------------------------------------- 00009 INCLUDE 00010 *------------------------------------------------------*/ 00011 #include <vector> 00012 00013 #include "wx/frame.h" 00014 #include "wx/window.h" 00015 #include "wx/event.h" 00016 00017 #include "osgi/impl/Framework.h" 00018 #include "maracas/toolbox/IToolbox.h" 00019 #include "maracas/toolbox/IClient.h" 00020 #include "maracas/toolbox/IParameter.h" 00021 00022 00023 00024 00025 class wxManualSegmentation_MPRWidget; 00026 00027 00028 00029 00030 //using namespace std; 00031 /*----------------------------------------------------- 00032 Class MaracasTools 00033 00034 Doc goes here. 00035 00036 *------------------------------------------------------*/ 00037 00038 class wxToolsHandler: public wxEvtHandler{ 00039 public: 00040 virtual void OnSelectToolEvent(wxCommandEvent& event)=0; 00041 }; 00042 00043 00044 00045 class MaracasTools: public wxToolsHandler, public IClient{ 00046 public: 00047 static MaracasTools* GetInstance(); 00048 wxFrame* GetToolbox(wxWindow* parent); 00049 IParameter* GetParameter(std::string name); 00050 void SetMPRWidget(wxManualSegmentation_MPRWidget* pWidget){widget = pWidget;} 00051 void OnSelectToolEvent(wxCommandEvent& event); 00052 00053 protected: 00054 MaracasTools(); 00055 private: 00056 static MaracasTools* INSTANCE; 00057 00058 wxManualSegmentation_MPRWidget* widget; 00059 00060 std::vector<int> ids; 00061 00062 FILE* logger; 00063 00064 Framework* framework; 00065 IToolbox* toolbox; 00066 00067 wxFrame* toolsFrame; 00068 wxFrame* optionsFrame; 00069 wxPanel* currentToolPanel; 00070 00071 00072 00073 00074 int GetIndexForButton(int _wxbuttonid); 00075 void SetIndexForButton(int _wxbuttonid); 00076 }; 00077 00078 00079 00080 #endif //__TOOLS_MARACAS_TOOLS_H__ 00081 00082 00083