]> Creatis software - creaMaracasVisu.git/blobdiff - lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasSurfaceRenderingProp3D.cxx
Diego Caceres: Changes in CMakeLists.txt.
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / wxMaracasSurfaceRenderingProp3D.cxx
index efcf931303e7ea0193ca5487668a941c8cf8ac34..8b8cf8b97f0e5237f3380f88a7913cf93c170a39 100644 (file)
@@ -1,4 +1,5 @@
 #include "wxMaracasSurfaceRenderingProp3D.h"
+#include "wxMaracasDialog_NViewers.h"
 
 #include <wx/colordlg.h>
 #include "wxMaracasSurfaceRendering.h"
@@ -53,15 +54,18 @@ void wxMaracasSurfaceRenderingProp3D::createControls(){
                checkbox = new  wxCheckBox(this,-1,wxString(_T("Show Actor")));
                Connect(checkbox->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasSurfaceRenderingProp3D::onCheckBoxChange);  
                checkbox->SetValue(true);       
-               checkboxsizer->Add(checkbox,wxFIXED_MINSIZE);
+               checkboxsizer->Add(checkbox,1, wxGROW);
+
+
+               if(wxMaracasSurfaceRendering::getInstance()->interactorSet()){
+                       checkboxsurface = new  wxCheckBox(this,-1,wxString(_T("Surface Box")));
+                       Connect(checkboxsurface->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasSurfaceRenderingProp3D::onCheckBoxSurfaceChange);    
+                       checkboxsurface->SetValue(true);
+                       checkboxsizer->Add(checkboxsurface,1, wxGROW);
+               }       
 
-               checkboxsurface = new  wxCheckBox(this,-1,wxString(_T("Surface Box")));
-               Connect(checkboxsurface->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasSurfaceRenderingProp3D::onCheckBoxSurfaceChange);    
-               checkboxsurface->SetValue(true);
-               checkboxsizer->Add(checkboxsurface,wxFIXED_MINSIZE);
-               
 
-               sizersurfprop->Add(checkboxsizer,wxFIXED_MINSIZE);
+               sizersurfprop->Add(checkboxsizer,1, wxGROW);
        }
 
        //this->addControl(checkbox);   
@@ -70,14 +74,15 @@ void wxMaracasSurfaceRenderingProp3D::createControls(){
        wxBitmap bitmap(Color_xpm);
        _colorchoose = new wxBitmapButton(this, -1, bitmap,wxDefaultPosition,wxSize(30,30));    
        Connect(_colorchoose->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&wxMaracasSurfaceRenderingProp3D::onColorChange);                   
-       sizerbut->Add(_colorchoose,wxFIXED_MINSIZE);
+       sizerbut->Add(_colorchoose,1, wxGROW);
 
+       /*
        wxBitmap bitmap1(Add_xpm);
        _viewimage = new wxBitmapButton(this, -1, bitmap1, wxDefaultPosition, wxSize(30,30));   
        Connect(_viewimage->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&wxMaracasSurfaceRenderingProp3D::onViewImage);                       
        sizerbut->Add(_viewimage,wxFIXED_MINSIZE);
-
-       sizersurfprop->Add(sizerbut,wxFIXED_MINSIZE);
+       */
+       sizersurfprop->Add(sizerbut,1, wxGROW);
        //sizercolor->Add(checkbox,wxFIXED_MINSIZE);
        //sizercolor->Add(_colorchoose,wxFIXED_MINSIZE);
        //this->addControl(sizercolor);
@@ -86,10 +91,10 @@ void wxMaracasSurfaceRenderingProp3D::createControls(){
        opacity = new wxSlider(this, -1,100,0,100,wxDefaultPosition,wxDefaultSize,wxSL_HORIZONTAL|wxSL_LABELS); 
        Connect(opacity->GetId(), wxEVT_SCROLL_CHANGED, (wxObjectEventFunction)&wxMaracasSurfaceRenderingProp3D::onOpacityRelease);     
        wxFlexGridSizer* sizeropacity = new wxFlexGridSizer(1,1,1);     
-       sizeropacity->Add(label,wxFIXED_MINSIZE);
-       sizeropacity->Add(opacity,wxFIXED_MINSIZE);
+       sizeropacity->Add(label,1, wxGROW);
+       sizeropacity->Add(opacity,1, wxGROW);
 
-       sizersurfprop->Add(sizeropacity,wxFIXED_MINSIZE);
+       sizersurfprop->Add(sizeropacity,1, wxGROW);
 
        this->addControl(sizersurfprop);
        
@@ -159,8 +164,23 @@ void wxMaracasSurfaceRenderingProp3D::onOpacityRelease(wxScrollEvent& event ){
 ** Loads the volume in a separate window
 **/
 void wxMaracasSurfaceRenderingProp3D::onViewImage(wxCommandEvent& event){      
-       printf("wxMaracasSurfaceRenderingProp3D->onViewImage: Test View Image \n");
-       vtkImageData* image = ((wxMaracasRendererView::getInstance())->getTabbedPanel(this->_propid))->getVolImage();
-
+       vtkImageData* img;
+       if(this->isComplexBox){
+               if(this->getPanId() == 1)
+                       img = (wxMaracasRendererView::getInstance())->getTabbedPanel(_propid)->getSurfAImage();
+               if(this->getPanId() == 2)
+                       img = (wxMaracasRendererView::getInstance())->getTabbedPanel(_propid)->getSurfBImage();
+               if(this->getPanId() == 3)
+                       img = (wxMaracasRendererView::getInstance())->getTabbedPanel(_propid)->getSurfCImage();
                
+               std::vector<int> type;
+               type.push_back(6);
+
+               wxMaracasDialog_NViewers* dialog1 = new wxMaracasDialog_NViewers(this, img, &type, wxString(_T("Volume Visualization") ));
+               dialog1->SetSize(730, 700);
+               dialog1->Show();
+       }
+       else{   
+               //vtkImageData* img = wxMaracasMultipleVolumeRendererView::getInstance()->getVolImage();
+       }
 }
\ No newline at end of file