1 /*=========================================================================
4 Module: $RCSfile: bbwxSplit.cxx,v $
6 Date: $Date: 2008/02/14 16:55:07 $
7 Version: $Revision: 1.6 $
9 Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
10 l'Image). All rights reserved. See Doc/License.txt or
11 http://www.creatis.insa-lyon.fr/Public/bbtk/License.html for details.
13 This software is distributed WITHOUT ANY WARRANTY; without even
14 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15 PURPOSE. See the above copyright notices for more information.
17 =========================================================================*/
24 #ifdef _USE_WXWIDGETS_
26 #include "bbwxSplit.h"
27 #include "bbwxPackage.h"
28 #include "bbtkUtilities.h"
35 BBTK_ADD_BLACK_BOX_TO_PACKAGE(wx,Split);
38 BBTK_USER_BLACK_BOX_IMPLEMENTATION(Split,bbtk::WxBlackBox);
41 void Split::bbUserConstructor()
43 bbSetInputWinTitle("Split");
44 bbSetInputOrientation("HORIZONTAL");
45 bbSetInputProportion(50);
46 bbSetInputWidget1(NULL);
47 bbSetInputWidget2(NULL);
54 void Split::CreateWidget()
56 wxSplitterWindow* w = new wxSplitterWindow(bbGetWxParent(),
63 w->SetName( bbtk::std2wx( bbGetInputWinTitle() ) );
64 wxWindow* w1 = bbGetInputWidget1();
65 wxWindow* w2 = bbGetInputWidget2();
67 if (w1==NULL) { w1=new wxPanel(bbGetWxParent()); }
68 if (w2==NULL) { w2=new wxPanel(bbGetWxParent()); }
72 if (bbtk::Utilities::loosematch(bbGetInputOrientation(),"0|H|HORIZONTAL")==true) { orientation=0; }
73 if (bbtk::Utilities::loosematch(bbGetInputOrientation(),"1|V|VERTICAL")==true) { orientation=1; }
74 if (orientation==0) { w->SplitHorizontally( w1, w2, 100); }
75 if (orientation==1) { w->SplitVertically( w1, w2, 100); }
78 bbSetOutputWidget( w );
85 #endif // _USE_WXWIDGETS_