wxMaracasIRMViewProp3D.cxx

Go to the documentation of this file.
00001 #include "wxMaracasIRMViewProp3D.h"
00002 
00003 #include <wx/colordlg.h>
00004 #include "wxMaracasIRMView.h"
00005 #include "Color.xpm"
00010 wxMaracasIRMViewProp3D::wxMaracasIRMViewProp3D(wxWindow* parent,int propid)
00011 :wxMaracasIRMViewPanel(parent, propid){
00012         createControls();       
00013 }
00014 
00015 wxMaracasIRMViewProp3D::~wxMaracasIRMViewProp3D(){      
00016         //wxMaracasIRMView::getInstance()->addRemoveActor(_propid, false);
00017         wxMaracasIRMView::getInstance()->deleteActor(_propid);
00018 }
00019 
00020 void wxMaracasIRMViewProp3D::createControls(){
00021 
00022         wxFlexGridSizer* sizerirmprop = new wxFlexGridSizer(1,1,1);
00023         
00024         wxString choices[2];
00025         choices[0] = wxString(_T("On"));
00026         choices[1] = wxString(_T("Off"));
00027         checkbox = new  wxCheckBox(this,-1,wxString(_T("Show Actor")));
00028         Connect(checkbox->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasIRMViewProp3D::onCheckBoxChange);   
00029         checkbox->SetValue(true);       
00030 
00031         sizerirmprop->Add(checkbox,wxFIXED_MINSIZE);
00032 
00033         //this->addControl(checkbox);   
00034         
00035         wxBitmap bitmap(Color_xpm);
00036         _colorchoose = new wxBitmapButton(this, -1, bitmap,wxDefaultPosition,wxSize(30,30));    
00037         Connect(_colorchoose->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&wxMaracasIRMViewProp3D::onColorChange);                    
00038         sizerirmprop->Add(_colorchoose,wxFIXED_MINSIZE);        
00039 
00040         //sizercolor->Add(checkbox,wxFIXED_MINSIZE);
00041         //sizercolor->Add(_colorchoose,wxFIXED_MINSIZE);
00042         //this->addControl(sizercolor);
00043         
00044         
00045         wxStaticText* label = new wxStaticText(this, -1, wxString(_T("Opacity")));              
00046         opacity = new wxSlider(this, -1,100,0,100,wxDefaultPosition,wxDefaultSize,wxSL_HORIZONTAL|wxSL_LABELS); 
00047         Connect(opacity->GetId(), wxEVT_SCROLL_CHANGED, (wxObjectEventFunction)&wxMaracasIRMViewProp3D::onOpacityRelease);      
00048         wxFlexGridSizer* sizeropacity = new wxFlexGridSizer(1,1,1);     
00049         sizeropacity->Add(label,wxFIXED_MINSIZE);
00050         sizeropacity->Add(opacity,wxFIXED_MINSIZE);
00051 
00052         sizerirmprop->Add(sizeropacity,wxFIXED_MINSIZE);
00053 
00054         //this->addControl(sizeropacity);
00055         this->addControl(sizerirmprop);
00056         
00057 }
00058 void wxMaracasIRMViewProp3D::onCheckBoxChange(wxCommandEvent& event){   
00059         wxMaracasIRMView::getInstance()->addRemoveActor(this->getPropId(), checkbox->GetValue());
00060 }
00061 void wxMaracasIRMViewProp3D::onColorChange(wxCommandEvent& event){
00062         wxColourDialog* colourdiag = new wxColourDialog(this);
00063         if(colourdiag->ShowModal()==wxID_OK){
00064                 wxColour colour = colourdiag->GetColourData().GetColour();
00065                 _colorchoose->SetBackgroundColour(colour);
00066 
00067                 double r = (double)(colour.Red())/255.0;
00068                 double g = (double)(colour.Green())/255.0;
00069                 double b = (double)(colour.Blue())/255.0;
00070                 
00071                 wxMaracasIRMView::getInstance()->changeColor(this->getPropId(),r,g,b);
00072         }
00073         delete colourdiag;
00074 }
00075 /*void wxMaracasIRMViewProp3D::onActionButtonPressedEliminate( wxCommandEvent& event ){ 
00076 
00077 }*/
00078 
00079 void wxMaracasIRMViewProp3D::onOpacityRelease(wxScrollEvent& event ){
00080 
00081         wxMaracasIRMView::getInstance()->changeOpacity(this->getPropId(),opacity->GetValue());
00082 
00083 }
00084 

Generated on Wed Jul 29 16:35:30 2009 for creaMaracasVisu_lib by  doxygen 1.5.3