X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FwxMaracasIRMView.cxx;h=dba00aaf5bfb70c7cf363ce522d6bdf5cf553d52;hb=885faee171b5cdcbcbbcb6cc83e6d196544e005c;hp=2317a81f2fdcb8d9915e5767afa48084b6211625;hpb=0b747197355924160b90ad9e4d9c7499fcef7503;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasIRMView.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasIRMView.cxx index 2317a81..dba00aa 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasIRMView.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasIRMView.cxx @@ -3,8 +3,8 @@ Program: wxMaracas Module: $RCSfile: wxMaracasIRMView.cxx,v $ Language: C++ - Date: $Date: 2009/04/15 12:35:01 $ - Version: $Revision: 1.5 $ + Date: $Date: 2009/05/29 13:39:56 $ + Version: $Revision: 1.9 $ Copyright: (c) 2002, 2003 License: @@ -20,12 +20,15 @@ // EOF - wxMaracasMPR.cxx #include "wxMaracasIRMView.h" +//#include "wxMaracasIRMViewPanel.h" +#include "wxMaracasIRMViewProp3DMHD.h" +#include "wxMaracasIRMViewProp3D.h" #include #include -#include "OpenImage.xpm" -#include "Color.xpm" +#include +#include wxMaracasIRMView* wxMaracasIRMView::instance=NULL; @@ -87,7 +90,7 @@ void wxMaracasIRMView::changeOpacity(int _propid, int value){ irmmanager->changeOpacity(_propid,value); } -void wxMaracasIRMView::changeIsoValue(int propid, int value){ +void wxMaracasIRMView::changeIsoValue(int propid, double value){ irmmanager->changeIsoValue(propid, value); } @@ -194,117 +197,22 @@ void wxMaracasIRMView::addIRMViewPanel(wxMaracasIRMViewPanel* irmview, std::stri wxAuiPaneInfo paneinfo; wxauimanager->AddPane(irmview, paneinfo.DefaultPane().Centre().DestroyOnClose().Caption(s)); wxauimanager->Update(); - -} - -/** -** Implementation of viewProp3D -**/ - -wxMaracasIRMViewProp3D::wxMaracasIRMViewProp3D(wxWindow* parent,int propid) -:wxMaracasIRMViewPanel(parent, propid){ - createControls(); -} - -wxMaracasIRMViewProp3D::~wxMaracasIRMViewProp3D(){ - //this->Show(false); - delete _colorchoose; - wxMaracasIRMView::getInstance()->addRemoveActor(_propid, false); -} - -void wxMaracasIRMViewProp3D::createControls(){ - - wxString choices[2]; - choices[0] = wxString(_T("On")); - choices[1] = wxString(_T("Off")); - checkbox = new wxCheckBox(this,-1,wxString(_T("Show Actor"))); - this->addControl(checkbox); - - Connect(checkbox->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasIRMViewProp3D::onCheckBoxChange); - checkbox->SetValue(true); - - //std::string iconfile = wxMaracasIRMView::getInstance()->getPath(); - //iconfile+= "/Data/Icons/Color.png"; - //wxBitmap* bitmap = new wxBitmap(wxString(iconfile.c_str(),wxConvUTF8), wxBITMAP_TYPE_PNG); - wxBitmap bitmap(Color_xpm); - _colorchoose = new wxBitmapButton(this, -1, bitmap,wxDefaultPosition,wxSize(30,30)); - Connect(_colorchoose->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&wxMaracasIRMViewProp3D::onColorChange); - - wxBoxSizer* sizercolor = new wxBoxSizer(wxVERTICAL); - sizercolor->Add(checkbox,wxFIXED_MINSIZE); - sizercolor->Add(_colorchoose,wxFIXED_MINSIZE); - this->addControl(sizercolor); - - wxStaticText* label = new wxStaticText(this, -1, wxString(_T("Opacity"))); - opacity = new wxSlider(this, -1,100,0,100,wxDefaultPosition,wxDefaultSize,wxSL_HORIZONTAL|wxSL_LABELS); - Connect(opacity->GetId(), wxEVT_SCROLL_CHANGED, (wxObjectEventFunction)&wxMaracasIRMViewProp3D::onOpacityRelease); - wxBoxSizer* sizeropacity = new wxBoxSizer(wxVERTICAL); - sizeropacity->Add(label,wxFIXED_MINSIZE); - sizeropacity->Add(opacity,wxFIXED_MINSIZE); - this->addControl(sizeropacity); } -void wxMaracasIRMViewProp3D::onCheckBoxChange(wxCommandEvent& event){ - wxMaracasIRMView::getInstance()->addRemoveActor(this->getPropId(), checkbox->GetValue()); -} -void wxMaracasIRMViewProp3D::onColorChange(wxCommandEvent& event){ - wxColourDialog* colourdiag = new wxColourDialog(this); - if(colourdiag->ShowModal()==wxID_OK){ - wxColour colour = colourdiag->GetColourData().GetColour(); - _colorchoose->SetBackgroundColour(colour); - - float r = colour.Red()/255; - float g = colour.Green()/255; - float b = colour.Blue()/255; + +void wxMaracasIRMView::deleteActor(int propid){ + try{ + irmmanager->deleteActor(propid); + }catch(char* e){ - wxMaracasIRMView::getInstance()->changeColor(this->getPropId(),r,g,b); } - delete colourdiag; } -/*void wxMaracasIRMViewProp3D::onActionButtonPressedEliminate( wxCommandEvent& event ){ -}*/ -void wxMaracasIRMViewProp3D::onOpacityRelease(wxScrollEvent& event ){ - wxMaracasIRMView::getInstance()->changeOpacity(this->getPropId(),opacity->GetValue()); - -} -/** -** IRM viewProp3DMHD implementation -**/ -wxMaracasIRMViewProp3DMHD::wxMaracasIRMViewProp3DMHD(wxWindow* parent, int propid) -: wxMaracasIRMViewProp3D(parent, propid) -{ - -} -wxMaracasIRMViewProp3DMHD::~wxMaracasIRMViewProp3DMHD(){ - //this->Show(false); - //wxMaracasIRMView::getInstance()->addRemoveActor(_propid, false); -} -void wxMaracasIRMViewProp3DMHD::createControls(int maxisovalue){ - - wxBoxSizer* sizer = new wxBoxSizer(wxVERTICAL); - - wxStaticText* label = new wxStaticText(this, -1, wxString(_T("IsoValue"))); - sizer->Add(label, wxGROW); - //this->addControl(label); - isovalue = new wxSlider(this, -1,maxisovalue,0,maxisovalue,wxDefaultPosition,wxDefaultSize,wxSL_HORIZONTAL|wxSL_LABELS); - sizer->Add(isovalue, wxGROW); - //this->addControl(isovalue); - - this->addControl(sizer); - Connect(isovalue->GetId(), wxEVT_SCROLL_CHANGED, (wxObjectEventFunction)&wxMaracasIRMViewProp3DMHD::onIsoValueRelease); -} - -void wxMaracasIRMViewProp3DMHD::onIsoValueRelease(wxScrollEvent& event ){ - - wxMaracasIRMView::getInstance()->changeIsoValue(this->getPropId(), isovalue->GetValue()); - -} /** ** **/ @@ -347,3 +255,5 @@ BEGIN_EVENT_TABLE(ToolBar, wxToolBar) EVT_MENU(0, ToolBar::onLoadImageFile) END_EVENT_TABLE() + +