/*========================================================================= Program: wxMaracas Module: $RCSfile: CutModelView.h,v $ Language: C++ Date: $Date: 2009/09/01 14:01:35 $ Version: $Revision: 1.2 $ Copyright: (c) 2002, 2003 License: This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notice for more information. =========================================================================*/ #ifndef __CutModelViewPanelH__ #define __CutModelViewPanelH__ #include #include #include #include "wx/aui/aui.h" #include #include "marTypes.h" #include "CutModelManager.h" #include "CutModelException.h" #include "vtkObject.h" #include "vtkCommand.h" class creaMaracasVisu_EXPORT CutModelView : public wxPanel, public vtkCommand { public: CutModelView( wxWindow* parent,double* range); ~CutModelView( ); virtual void Execute(vtkObject *wdg, unsigned long eventId, void* calldata) ; int getId(){ return _id; } void setId(int id){ _id = id; } void ExecuteCut(); void SetCurrentColor(wxColour colour); private: int _id; wxSlider* _sliderrange; wxRadioBox* _radioinsideout; //wxRadioBox* _radiocutstat; wxStaticText* _currentcolor; double* getRange(); bool isCut(); bool isInside(); wxSizer* getBoxControls(wxWindow* parent, double* range); wxSizer* getActorProperties(wxWindow* parent); wxSizer* getColorChooseActor(wxWindow* parent); wxSizer* getOpacityActor(wxWindow* parent); void checkInvariant() throw( CutModelException); }; class CutModelViewEventHandler : public wxEvtHandler{ public: CutModelViewEventHandler(): wxEvtHandler(){}; ~CutModelViewEventHandler(){}; void onColorChange(wxCommandEvent& event); void onOpacityChange(wxScrollEvent& event); void onViewBoxChecked(wxCommandEvent& event); void onShapeChange(wxCommandEvent& event); void onStatistics(wxCommandEvent& event); void onExecute(wxCommandEvent& event); private: }; #endif