]> Creatis software - creaMaracasVisu.git/blobdiff - lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracas_N_ViewersWidget.cxx
*** empty log message ***
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / wxMaracas_N_ViewersWidget.cxx
index cf83734180310faa211ba60bfaeff29c9ae215e9..d791fd378dcf97b3149349b6cf986e22744b5458 100644 (file)
@@ -3,8 +3,8 @@
   Program:   wxMaracas
   Module:    $RCSfile: wxMaracas_N_ViewersWidget.cxx,v $
   Language:  C++
-  Date:      $Date: 2009/03/30 15:31:15 $
-  Version:   $Revision: 1.4 $
+  Date:      $Date: 2009/05/14 13:54:35 $
+  Version:   $Revision: 1.9 $
 
   Copyright: (c) 2002, 2003
   License:
@@ -49,7 +49,8 @@
                wxwindow2       = NULL;
                wxwindow3       = NULL;
                wxwindow4       = NULL;
-               currentwxwindow = NULL;
+
+               _currentwxw = NULL;
 
                wxSizer *sizer  = new wxBoxSizer(wxVERTICAL);
                this->SetSizer(sizer);
@@ -67,6 +68,7 @@
          
        wxMaracas_N_ViewersWidget::~wxMaracas_N_ViewersWidget()
        {
+               
        }
        //------------------------------------------------------------------------------------------------------------
        // Methods
 
  void wxMaracas_N_ViewersWidget::UpdateLayout(vtkImageData* imagedata){
 
-               wxPanel                         *panel          = this;
                wxWindow                                *wxwindow       = NULL;
-               wxSizer *sizer  = panel->GetSizer();
-       
-               if(currentwxwindow!=NULL){
-                       sizer->Remove(currentwxwindow);                 
-                       delete currentwxwindow;
+               wxSizer *sizer  = this->GetSizer();     
+               
+               if(_currentwxw != NULL){
+                       _currentwxw->Show(false);
+                       delete _currentwxw;
+                       //sizer->Remove(currentwxwindow);                       
+                       //delete currentwxwindow;
                }
 
                //std::cout<<"size "<<nTypeView->size()<<std::endl;
                if (nTypeView->size()==1)
                {
+                       wxwindow1 = new wxMaracas_ViewerWidget(this, imagedata, (*nTypeView)[0]);
 
-                       std::cout<<"type "<<(*nTypeView)[0]<<std::endl;
-                       wxwindow1 = new wxMaracas_ViewerWidget(panel, imagedata, (*nTypeView)[0]);
                        wxwindow1->ConfigureVTK();
                        wxwindow = wxwindow1;
                }else   if (nTypeView->size()==2)       {
 
                        
-                       wxSplitterWindow        *spliter        = new wxSplitterWindow( panel , -1);
+                       wxSplitterWindow        *spliter        = new wxSplitterWindow( this , -1);
                        wxwindow1 = new wxMaracas_ViewerWidget(spliter, imagedata, (*nTypeView)[0]);
                        wxwindow2 = new wxMaracas_ViewerWidget(spliter, imagedata, (*nTypeView)[1]);
                        wxwindow1->ConfigureVTK();
                        wxwindow = spliter;
                }else if (nTypeView->size()==3)
                {
-                       wxSplitterWindow        *spliter        = new wxSplitterWindow( panel , -1);
+                       wxSplitterWindow        *spliter        = new wxSplitterWindow( this , -1);
                        wxSplitterWindow        *spliterA       = new wxSplitterWindow( spliter , -1);
                        wxwindow1 = new wxMaracas_ViewerWidget(spliter , imagedata, (*nTypeView)[0]);
                        wxwindow2 = new wxMaracas_ViewerWidget(spliterA, imagedata, (*nTypeView)[1]);
                        spliterA-> SplitHorizontally( wxwindow2 , wxwindow3  );
                        wxwindow = spliter;
                }else if (nTypeView->size()>=4){
-                       wxSplitterWindow        *spliter        = new wxSplitterWindow( panel , -1);
+                       wxSplitterWindow        *spliter        = new wxSplitterWindow( this , -1);
                        wxSplitterWindow        *spliterA       = new wxSplitterWindow( spliter , -1);
                        wxSplitterWindow        *spliterB       = new wxSplitterWindow( spliter , -1);
                        wxwindow1 = new wxMaracas_ViewerWidget(spliterA, imagedata, (*nTypeView)[0]);
                }
                
                //panel->SetDimension()
-               sizer->Add( wxwindow , 1, wxGROW);
+               sizer->Add( wxwindow , 1, wxEXPAND);
                sizer->Layout();
-               currentwxwindow = wxwindow;             
-               currentwxwindow->Show(true);
+               _currentwxw = wxwindow;         
+               _currentwxw->Show(true);
                
                this->Layout();
                this->Refresh();