/*========================================================================= Program: bbtk Module: $RCSfile: bbwxLayoutLine.cxx,v $ Language: C++ Date: $Date: 2008/06/19 09:46:46 $ Version: $Revision: 1.4 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or http://www.creatis.insa-lyon.fr/Public/bbtk/License.html for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. =========================================================================*/ /** * \file * \brief */ #ifdef _USE_WXWIDGETS_ #include "bbwxLayoutLine.h" #include "bbwxPackage.h" #include "bbtkUtilities.h" namespace bbwx { BBTK_ADD_BLACK_BOX_TO_PACKAGE(wx, LayoutLine); BBTK_BLACK_BOX_IMPLEMENTATION(LayoutLine,bbtk::WxBlackBox); void LayoutLine::bbUserConstructor() { bbSetInputOrientation("VERTICAL"); bbSetInputWidget1(NULL); bbSetInputWidget2(NULL); bbSetInputWidget3(NULL); bbSetInputWidget4(NULL); bbSetInputWidget5(NULL); bbSetInputWidget6(NULL); bbSetInputWidget7(NULL); bbSetInputWidget8(NULL); bbSetInputWidget9(NULL); } void LayoutLine::Process() { } void LayoutLine::TryInsertWindow(wxWindow *parent, wxWindow *w,wxBoxSizer *sizer) { if (w!=NULL) { w->Reparent(parent); sizer->Add(w, 1, wxEXPAND, 0); } } void LayoutLine::CreateWidget() { wxBoxSizer *sizer; wxPanel *w=new wxPanel(bbGetWxParent(), -1); w->SetName( bbtk::std2wx( bbGetInputWinTitle() ) ); int style=0; if (bbtk::Utilities::loosematch(bbGetInputOrientation(), "0|H|HORIZONTAL")==true) { style=wxHORIZONTAL; } if (bbtk::Utilities::loosematch(bbGetInputOrientation(), "1|V|VERTICAL")==true) { style=wxVERTICAL; } sizer = new wxBoxSizer(style); TryInsertWindow(w,bbGetInputWidget1(),sizer); TryInsertWindow(w,bbGetInputWidget2(),sizer); TryInsertWindow(w,bbGetInputWidget3(),sizer); TryInsertWindow(w,bbGetInputWidget4(),sizer); TryInsertWindow(w,bbGetInputWidget5(),sizer); TryInsertWindow(w,bbGetInputWidget6(),sizer); TryInsertWindow(w,bbGetInputWidget7(),sizer); TryInsertWindow(w,bbGetInputWidget8(),sizer); TryInsertWindow(w,bbGetInputWidget9(),sizer); w -> SetSizer(sizer); bbSetOutputWidget( w ); } // This callback is necessary to get actual processing of the view // when window is shown void LayoutLine::bbUserOnShow() { bbUserOnShowWidget("Widget1"); bbUserOnShowWidget("Widget2"); bbUserOnShowWidget("Widget3"); bbUserOnShowWidget("Widget4"); bbUserOnShowWidget("Widget5"); bbUserOnShowWidget("Widget6"); bbUserOnShowWidget("Widget7"); bbUserOnShowWidget("Widget8"); bbUserOnShowWidget("Widget9"); } }//namespace bbwx #endif // _USE_WXWIDGETS_