]> Creatis software - creaMaracasVisu.git/blobdiff - lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasIRMViewPanel.h
*** empty log message ***
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / wxMaracasIRMViewPanel.h
diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasIRMViewPanel.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasIRMViewPanel.h
new file mode 100644 (file)
index 0000000..f3a3bb2
--- /dev/null
@@ -0,0 +1,94 @@
+#ifndef WXMARACASIRMVIEWPANEL_H_
+#define WXMARACASIRMVIEWPANEL_H_
+
+#include "wx/wx.h"
+
+class wxMaracasIRMViewPanel : public wxPanel{
+public:
+       wxMaracasIRMViewPanel(wxWindow* parent, int propid)
+               : wxPanel(parent, -1, wxDefaultPosition, wxDefaultSize){
+                       createPanel();
+                       _propid = propid;
+       }       
+       //virtual ~wxMaracasIRMViewPanel();
+       virtual void createPanel(){
+               show = false;
+        /*wxBoxSizer* sizerButtons = new wxBoxSizer(wxVERTICAL);
+
+               wxButton* b = new wxButton(this, -1, wxString(_T("-")), wxDefaultPosition, wxDefaultSize, wxBU_EXACTFIT, 
+                                                               wxDefaultValidator, wxString(_T("-"))); 
+               Connect(b->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&wxMaracasIRMViewPanel::onActionButtonPressedHide);
+               wxButton* b1 = new wxButton(this, -1, wxString(_T("-")), wxDefaultPosition, wxDefaultSize, wxBU_EXACTFIT, 
+                                                               wxDefaultValidator, wxString(_T("x"))); 
+               Connect(b1->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&wxMaracasIRMViewPanel::onActionButtonPressedEliminate);
+
+               sizerButtons->Add(b, wxFIXED_MINSIZE);
+               sizerButtons->Add(b1, wxFIXED_MINSIZE);*/
+
+               sizercontrols = new wxBoxSizer(wxVERTICAL);
+
+               wxBoxSizer* sizerpanel = new wxBoxSizer(wxHORIZONTAL);
+
+               //sizerpanel->Add(sizerButtons,wxGROW);
+               sizerpanel->Add(sizercontrols,wxGROW);
+       
+               this->SetSizer(sizerpanel, true);               
+               this->SetAutoLayout( true );
+       }
+
+       /**
+       **      Adds a new control to the panel (sizer, radiob, etc)
+       **/
+       virtual void addControl(wxWindow* win){
+               if(sizercontrols!=NULL){
+                       sizercontrols->Add(win, wxGROW);
+               }
+       }
+       /**
+       **      Adds a new control to the panel (sizer, radiob, etc)
+       **/
+       virtual void addControl(wxSizer* sizer){
+               if(sizercontrols!=NULL){
+                       sizercontrols->Add(sizer, wxGROW);
+               }
+       }
+
+       /**
+       **      Hides or show the controls in the panel
+       **/
+       virtual void onActionButtonPressedHide( wxCommandEvent& event ){
+               wxList list = sizercontrols->GetChildren();             
+               int i;
+               for(i=0; i<list.size();i++){
+                       sizercontrols->Show(i,show);
+               }
+               show = !show;
+               sizercontrols->Layout();
+               this->Layout();
+       }
+
+    /**
+       **      The user must implement this function to remove the panel from the 
+       **/
+       //virtual void onActionButtonPressedEliminate( wxCommandEvent& event )=0;
+
+       /**
+       **      The user must implement this function to add the necessary controls to the panel
+       **/
+       virtual void createControls( )=0;
+       /**
+       ** returns the id of the panel
+       **/
+       int getPropId(){
+               return _propid;
+       }
+
+private:
+       wxBoxSizer* sizercontrols;
+       bool show;
+protected:
+       int _propid;
+
+};
+
+#endif /*WXMARACASIRMVIEWPANEL_H_*/