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=efe55c8afe89bd1d090c59513f2be82ad3ab9b0d;hp=4242c4f20a8da4e61a0ba503d38b3e445239ae3c;hpb=540c5242ac6cd8ab330f1642b0fc82e3b49d20db;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasIRMView.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasIRMView.cxx index 4242c4f..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/14 14:48:07 $ - Version: $Revision: 1.4 $ + Date: $Date: 2009/05/29 13:39:56 $ + Version: $Revision: 1.9 $ Copyright: (c) 2002, 2003 License: @@ -20,10 +20,16 @@ // EOF - wxMaracasMPR.cxx #include "wxMaracasIRMView.h" +//#include "wxMaracasIRMViewPanel.h" +#include "wxMaracasIRMViewProp3DMHD.h" +#include "wxMaracasIRMViewProp3D.h" #include #include +#include +#include + wxMaracasIRMView* wxMaracasIRMView::instance=NULL; wxMaracasIRMView::wxMaracasIRMView( wxWindow* parent,std::string path) @@ -84,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); } @@ -191,113 +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(){ - 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); - _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(){ - -} -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()); - -} /** ** **/ @@ -309,9 +224,10 @@ ToolBar::ToolBar(wxWindow * parent,std::string iconsdir) std::string iconfil = iconsdir; - iconfil+= "/OpenImage.png"; - wxBitmap* bitmap0 = new wxBitmap(wxString(iconfil.c_str(),wxConvUTF8), wxBITMAP_TYPE_PNG); - this->AddTool(0, wxString(_T("test")),*bitmap0); + //iconfil+= "/OpenImage.png"; + //wxBitmap* bitmap0 = new wxBitmap(wxString(iconfil.c_str(),wxConvUTF8), wxBITMAP_TYPE_PNG); + wxBitmap bitmap0(OpenImage_xpm); + this->AddTool(0, wxString(_T("test")),bitmap0); /*iconfil+= "/Open.png"; wxBitmap* bitmap2 = new wxBitmap(wxString(iconfil.c_str(),wxConvUTF8), wxBITMAP_TYPE_PNG); @@ -339,3 +255,5 @@ BEGIN_EVENT_TABLE(ToolBar, wxToolBar) EVT_MENU(0, ToolBar::onLoadImageFile) END_EVENT_TABLE() + +