+/*# ---------------------------------------------------------------------
+#
+# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
+# pour la Sant�)
+# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
+# Previous Authors : Laurent Guigues, Jean-Pierre Roux
+# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
+#
+# This software is governed by the CeCILL-B license under French law and
+# abiding by the rules of distribution of free software. You can use,
+# modify and/ or redistribute the software under the terms of the CeCILL-B
+# license as circulated by CEA, CNRS and INRIA at the following URL
+# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+# or in the file LICENSE.txt.
+#
+# As a counterpart to the access to the source code and rights to copy,
+# modify and redistribute granted by the license, users are provided only
+# with a limited warranty and the software's author, the holder of the
+# economic rights, and the successive licensors have only limited
+# liability.
+#
+# The fact that you are presently reading this means that you have had
+# knowledge of the CeCILL-B license and that you accept its terms.
+# ------------------------------------------------------------------------ */
+
/*=========================================================================
Program: wxMaracas
Module: $RCSfile: wxMaracas_ViewerWidget.cxx,v $
Language: C++
- Date: $Date: 2012/11/14 07:30:52 $
- Version: $Revision: 1.37 $
+ Date: $Date: 2012/11/15 14:14:35 $
+ Version: $Revision: 1.38 $
Copyright: (c) 2002, 2003
License:
wxMaracas_ViewerWidget::wxMaracas_ViewerWidget(wxWindow *parent, vtkImageData* imagedata, int type, vtkMPRBaseData *vtkmprbasedata)
: wxPanel( parent, -1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL)
{
- wxPanel *panel = this;
- wxWindow *wxwindow = NULL, *window3D = 0;
- wxSplitterWindow *panelClipping3D= 0;
-// wxPanel *panelControl = 0;
-// wxFlexGridSizer *sizerCtrol = 0;
- wxPanel *controlPanelMPR3D = 0;
- wxPanel *controlPanelClippingSurf3D = 0;
+ wxPanel *panel = this;
+ wxWindow *wxwindow = NULL;
+ wxWindow *window3D = NULL;
+ wxSplitterWindow *panelClipping3D = NULL;
+// wxPanel *panelControl = NULL;
+// wxFlexGridSizer *sizerCtrol = NULL;
+ wxPanel *controlPanelMPR3D = NULL;
+ wxPanel *controlPanelClippingSurf3D = NULL;
//RaC 03-2010 Adding a tab
- wxPanel *controlPanelClippingVol3D = 0;
+ wxPanel *controlPanelClippingVol3D = NULL;
wxBoxSizer *sizer = 0;
mvtkmprbasedata = vtkmprbasedata;
}
- mvtk2Dbaseview = NULL;
- mvtkmpr2Dview_X = NULL;
- mvtkmpr2Dview_Y = NULL;
- mvtkmpr2Dview_Z = NULL;
- mvtkplane2Dview = NULL;
- mwidgetMesure = NULL;
- mwxsphereview = NULL;
- mwxvtkclipping3Dview = NULL;
- mwxvtk3Dbaseview_Clipping3D = NULL;
- mwxvtkmpr3Dview = NULL;
- vtkmpr3Ddataviewer = NULL;
+ mvtk2Dbaseview = NULL;
+ mvtkmpr2Dview_X = NULL;
+ mvtkmpr2Dview_Y = NULL;
+ mvtkmpr2Dview_Z = NULL;
+ mvtkplane2Dview = NULL;
+ mwidgetMesure = NULL;
+ mwxsphereview = NULL;
+ mwxvtkclipping3Dview = NULL;
+ mwxvtk3Dbaseview_Clipping3D = NULL;
+ mwxvtkmpr3Dview = NULL;
+ vtkmpr3Ddataviewer = NULL;
if (type==-1)
{
}else if (type==5)
{
panelClipping3D = new wxSplitterWindow( panel , -1);
- mwxvtk3Dbaseview_Clipping3D = new wxVtk3DBaseView( panelClipping3D );
+ mwxvtk3Dbaseview_Clipping3D = new wxVtk3DBaseView( panelClipping3D , vtkmprbasedata);
- mwxvtkclipping3Dview = new wxVtkClipping3DView(mwxvtk3Dbaseview_Clipping3D);
+ mwxvtkclipping3Dview = new wxVtkClipping3DView(mwxvtk3Dbaseview_Clipping3D);
vtkClipping3DDataViewer *vtkclipping3Ddataviewer = new vtkClipping3DDataViewer();
vtkclipping3Ddataviewer->SetVtkMPRBaseData(mvtkmprbasedata);
vtkclipping3Ddataviewer->Configure();
panelClipping3D->SplitHorizontally( notebook , window3D , 10 );
//panelClipping3D->SetMinimumPaneSize( 15 );
panelClipping3D->SetMinimumPaneSize( 70 ); // JPR
+ //RaC Nov2012 Correctly resize internal panels with the window resize event
+ panelClipping3D->SetSashGravity(0.5);
/* EED 04 / Febrary / 2010
panelControl = new wxPanel(panelClipping3D,-1);
wxwindow=panelClipping3D;
} else if (type==6) {
- panelClipping3D = new wxSplitterWindow( panel , -1);
- mwxvtk3Dbaseview_Clipping3D = new wxVtk3DBaseView( panelClipping3D );
-
- mwxvtkmpr3Dview = new wxVtkMPR3DView( mwxvtk3Dbaseview_Clipping3D );
-
- vtkmpr3Ddataviewer = new vtkMPR3DDataViewer();
-
- wxWindow *window3D = mwxvtk3Dbaseview_Clipping3D->GetWxVTKRenderWindowInteractor();
-
- wxPanel *panelControl = new wxPanel(panelClipping3D,-1);
- wxPanel *controlPanelMPR3D = mwxvtkmpr3Dview->CreateControlPanel(panelControl, true);
-
- wxFlexGridSizer *sizerCtrol = new wxFlexGridSizer(1);
+ panelClipping3D = new wxSplitterWindow( panel , -1);
+ mwxvtk3Dbaseview_Clipping3D = new wxVtk3DBaseView( panelClipping3D , vtkmprbasedata);
+ mwxvtkmpr3Dview = new wxVtkMPR3DView( mwxvtk3Dbaseview_Clipping3D );
+ vtkmpr3Ddataviewer = new vtkMPR3DDataViewer();
+ wxWindow *window3D = mwxvtk3Dbaseview_Clipping3D->GetWxVTKRenderWindowInteractor();
+ wxPanel *panelControl = new wxPanel(panelClipping3D,-1);
+ wxPanel *controlPanelMPR3D = mwxvtkmpr3Dview->CreateControlPanel(panelControl, true);
+ wxFlexGridSizer *sizerCtrol = new wxFlexGridSizer(1);
sizerCtrol->Add(controlPanelMPR3D, 1, wxALL|wxEXPAND, 2);
panelControl->SetAutoLayout(true);
panelClipping3D->SetMinimumPaneSize( 130 ); // FCY
panelClipping3D->SplitHorizontally( panelControl , window3D , 0 );
//panelClipping3D->SetSashSize(10);
+
+ //RaC Nov2012 Correctly resize internal panels with the window resize event
+ panelClipping3D->SetSashGravity(0.5);
panelClipping3D->UpdateSize(); //FCY
wxwindow=panelClipping3D;
}else if (type==7)
{
- mwxvtk3Dbaseview_Clipping3D = new wxVtk3DBaseView( panel );
+ mwxvtk3Dbaseview_Clipping3D = new wxVtk3DBaseView( panel ,vtkmprbasedata);
wxwindow = (wxWindow*) mwxvtk3Dbaseview_Clipping3D->GetWxVTKRenderWindowInteractor();
}