00001 00011 #ifndef __PALETTEWINDOW__H__ 00012 #define __PALETTEWINDOW__H__ 00013 00014 #include <wx/wx.h> 00015 00016 #include "../common.h" 00017 #include "ToolList.h" 00018 #include "Canvas.h" 00019 00020 // A part of the GUI 00021 namespace GUI { 00022 00028 class PaletteWindow: public wxFrame { 00029 public: 00035 PaletteWindow(wxWindow * parent, string pdp); 00036 00040 ~PaletteWindow(); 00041 00045 void CreateMenu(); 00046 00051 void SetToolListCanvas(Canvas * c) { 00052 #if DEBUG_PALETTE 00053 cerr << "DEBUG_PALETTE: PaletteWindow::SetToolListCanvas" << endl; 00054 #endif 00055 00056 toolList->SetCanvas(c); 00057 } 00058 00062 void SetToolListCanvasNULL() { 00063 #if DEBUG_PALETTE 00064 cerr << "DEBUG_PALETTE: PaletteWindow::SetToolListCanvasNULL" << endl; 00065 #endif 00066 00067 toolList->SetCanvasNULL(); 00068 } 00069 00070 private: 00071 DECLARE_EVENT_TABLE() 00072 00073 // Event handlers 00074 void OnWindowClose(wxCloseEvent & event); 00075 void OnOpenSingleObjectConfig(wxCommandEvent & event); 00076 void OnOpenDirectoryConfig(wxCommandEvent & event); 00077 void OnSaveDirectoryConfig(wxCommandEvent & event); 00078 00079 void OnAddObjectAgent(wxCommandEvent & event); 00080 void OnAddObjectTransferable(wxCommandEvent & event); 00081 void OnAddObjectFixed(wxCommandEvent & event); 00082 00084 ToolList * toolList; 00086 string paletteDirectoryPath; 00088 static const wxSize DEFAULT_PALETTE_WINDOW_SIZE; 00089 }; 00090 00091 } /* namespace GUI */ 00092 00093 #endif /* #ifndef __PALETTEWINDOW__H__ */ 00094 00095 /* End of file PaletteWindow.h */