X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FwxMaracasIRMView.h;h=5e90935ca22a291f570b4c2e5e901c6adc42ff41;hb=4db65eb4d687cf3695582df7098db27b0d24ab97;hp=d8de471a0cffbf998c184fc27e068b8cc750dac1;hpb=bf59a58c8e18d27d491ce9681c06e50c8213cb23;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasIRMView.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasIRMView.h index d8de471..5e90935 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasIRMView.h +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasIRMView.h @@ -3,8 +3,8 @@ Program: wxMaracas Module: $RCSfile: wxMaracasIRMView.h,v $ Language: C++ - Date: $Date: 2009/04/01 16:16:59 $ - Version: $Revision: 1.1 $ + Date: $Date: 2009/05/14 13:54:35 $ + Version: $Revision: 1.4 $ Copyright: (c) 2002, 2003 License: @@ -15,168 +15,69 @@ =========================================================================*/ +#ifndef __wxMaracasIRMViewPanelH__ +#define __wxMaracasIRMViewPanelH__ -#ifndef __wxMaracasIRMViewH__ -#define __wxMaracasIRMViewH__ - - +#include #include #include "wx/aui/aui.h" - #include - #include "marTypes.h" - #include "vtkProp3D.h" #include "wxMaracasIRMViewManager.h" +#include "wxMaracasIRMViewPanel.h" + + class creaMaracasVisu_EXPORT wxMaracasIRMView : public wxPanel { public: - wxMaracasIRMView( wxWindow* parent); + wxMaracasIRMView( wxWindow* parent, std::string path); ~wxMaracasIRMView( ); - static wxMaracasIRMView* getInstance(wxWindow* parent); + static wxMaracasIRMView* getInstance(wxWindow* parent,std::string path=""); static wxMaracasIRMView* getInstance(); void setRenderer(vtkRenderer* renderer); - void changeOpacity(int _propid, int value); + void changeOpacity(int propid, int value); - void changeIsoValue(int _propid, int value); + void changeIsoValue(int propid, double value); + void addRemoveActor(int propid, bool addremove); + void changeColor(int propid, double red, double green, double blue); - void addProp3D(vtkProp3D* prop3D); + void addProp3D(vtkProp3D* prop3D, std::string dataname=""); + void addPropMHD(vtkImageData* imgdata, std::string dataname=""); - void loadProp3D(); + void loadProp3D(wxString filename, wxString dataname); -private: - static wxMaracasIRMView* instance; - - wxMaracasIRMViewManager* irmmanager; - - wxAuiManager* wxauimanager; + void loadPropMHD(wxString filename, wxString dataname); - void createFileChooser(); -}; - -#endif // __wxMaracasIRMViewH__ + void onLoadImageFile(); -// EOF - wxMaracasIRMView.h + void addIRMViewPanel(wxMaracasIRMViewPanel* irmview, std::string dataname=""); -#ifndef __wxMaracasIRMViewPanelH__ -#define __wxMaracasIRMViewPanelH__ - -class wxMaracasIRMViewPanel : public wxPanel{ -public: - wxMaracasIRMViewPanel(wxWindow* parent) - : wxPanel(parent, -1, wxDefaultPosition, wxDefaultSize){ - createPanel(); - } - //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); - } - } - - /** - ** Hides or show the controls in the panel - **/ - virtual void onActionButtonPressedHide( wxCommandEvent& event ){ - wxList list = sizercontrols->GetChildren(); - int i; - for(i=0; iShow(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; + std::string getPath(); + void deleteActor(int propid); private: - wxBoxSizer* sizercontrols; - bool show; + static wxMaracasIRMView* instance; -}; + wxMaracasIRMViewManager* irmmanager; -#endif + wxAuiManager* wxauimanager; -#ifndef __wxMaracasIRMViewPanelProp3DH__ -#define __wxMaracasIRMViewPanelProp3DH__ + void createFileChooser(); -class wxMaracasIRMViewProp3D : public wxMaracasIRMViewPanel{ -public: - wxMaracasIRMViewProp3D(wxWindow* parent, int propid); - ~wxMaracasIRMViewProp3D(); - void createControls(); - void onActionButtonPressedEliminate( wxCommandEvent& event ); - void onOpacityRelease(wxScrollEvent& event ); - void onIsoValueRelease(wxScrollEvent& event ); - void onRadioBoxChange(wxCommandEvent& event); + std::string _path; - -private: - wxRadioBox* radiob; - wxSlider* opacity; - wxSlider* isovalue; - int _propid; - }; -#endif - - -#pragma once - -#ifndef __ToolBar__ -#define __ToolBar__ - -#include - -#include @@ -184,13 +85,11 @@ class ToolBar : public wxToolBar{ public: - ToolBar(wxWindow * parent,std::string iconsdir="C:/Creatis/creaAppli/Development/creaPipeline/Data/Icons/"); + ToolBar(wxWindow * parent,std::string iconsdir); ~ToolBar(void); - void onExecPipeline(wxCommandEvent& event); - - void onLoadConfig(wxCommandEvent& event); + void onLoadImageFile(wxCommandEvent& event); private: