#include <vtkColorTransferFunction.h>
#include <vtkVolumeRayCastMapper.h>
#include <vtkVolume.h>
- #include "../wxMPRWidget.h"
+ //#include "../wxMPRWidget.h"
+
+#include "HistogramDialogComboBoxItem.h"
+#include <wx/checkbox.h>
+#include <wx/statbmp.h>
class HistogramDialog:public wxDialog
{
/*
Constructor
*/
- HistogramDialog(wxWindow *parent,wxString title,vtkImageData* imageData,int type);
+ HistogramDialog(wxWindow *parent,wxString title,vtkImageData* imageData,bool extracontrols=false);
/*
Constructor
*/
- HistogramDialog(wxWindow *parent,wxString title);
+ HistogramDialog(wxWindow *parent,wxString title,bool extracontrols=false);
+ ~HistogramDialog();
/*
Methods
*/
void setTF(vtkPiecewiseFunction* tf);
void setVolumeMapper(vtkVolumeRayCastMapper* volMapper);
void setVolume(vtkVolume* vol);
- void setMPR3Dview(wxVtkMPR3DView *wxvtkmpr3Dview1);
- void setClipping3DView(wxVtkClipping3DView *wxvtkclipping3Dview1);
+ //void setMPR3Dview(wxVtkMPR3DView *wxvtkmpr3Dview1);
+ //void setClipping3DView(wxVtkClipping3DView *wxvtkclipping3Dview1);
//--------------------
// plotter Information
void OnSaveData(wxCommandEvent& event);
void OnLoadData(wxCommandEvent& event);
void OnRefreshBtn(wxCommandEvent& event);
+
/**
** Initialize the histogram
std::vector<double>& green,
std::vector<double>& blue);
void SetFunctions(vtkPiecewiseFunction* _opac, vtkColorTransferFunction* _color);
+
+ /**
+ ** Set to true in the constructor
+ **/
+ void setInfoPanExtraControls(std::vector<HistogramDialogComboBoxItem*> comboitems);
+
+
+ /**
+ *
+ */
+ void OnEditColorsCombo(wxCommandEvent& event);
+ void OnDeleteColor(wxCommandEvent& event);
+
+ std::vector<HistogramDialogComboBoxItem*> getComboBoxItems(){return _comboitems;}
+
+ void UpdateCurrentComboElement();
+
private:
/*
Histogram Widget
*/
HistogramWidget* histogramW;
-
+/**
+**
+**/
/*
ok Button
*/
- wxButton *okBtn;
+ //wxButton *okBtn;
+ wxBitmapButton *okBtn;
/*
cancel Button
*/
- wxButton *cancelBtn;
+ //wxButton *cancelBtn;
+ wxBitmapButton *cancelBtn;
/*
save Button
*/
*/
wxButton *refreshBtn;
+ wxPanel* _panextracontrols;
// the user had pressed refresh
vtkVolume *newvol;
//things to refresh
- wxVtkMPR3DView *wxvtkmpr3Dview;
- wxVtkClipping3DView *wxvtkclipping3Dview;
+ //wxVtkMPR3DView *wxvtkmpr3Dview;
+ //wxVtkClipping3DView *wxvtkclipping3Dview;
+
+
+ wxSizer* getControls(bool extracontrols = false);
+
// DECLARE_CLASS(HistogramDialog);
// any class wishing to process wxWindows events must use this macro
//DECLARE_EVENT_TABLE()
+
+ void initializeHistogramDialog(bool extracontrols);
+
+ wxPanel* getPanExtraControls();
+
+ std::vector<wxBitmapButton*> bitmapbuttonsvect;
+ std::vector<HistogramDialogComboBoxItem*> _comboitems;
+
+ void setCurrentColorConfigurationIntoButton();
+ void AddNewBitmapButton();
+ wxSizer* getBitmapButtonDelete(wxBitmap bitmap);
+ std::vector<wxBitmapButton*> _deletebuttonsvector;
+
+ int _maxgreyvalue;
+ int _currentcolorselectedbitmap;
};
#endif