]> Creatis software - bbtk.git/blob - packages/wx/src/bbwxLayoutLine.h
ba0fe17167c2bfc02987fd5e64dbef772b5de64d
[bbtk.git] / packages / wx / src / bbwxLayoutLine.h
1 /*=========================================================================
2                                                                                 
3   Program:   bbtk
4   Module:    $RCSfile: bbwxLayoutLine.h,v $
5   Language:  C++
6   Date:      $Date: 2008/06/19 09:46:46 $
7   Version:   $Revision: 1.4 $
8                                                                                 
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.
12                                                                                 
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.
16                                                                                 
17 =========================================================================*//**
18  * \brief Short description in one line
19  * 
20  * Long description which 
21  * can span multiple lines
22  */
23 /**
24  * \file 
25  * \brief Pattern for the definition of a new type of Node (header)
26  */
27 /**
28  * \class bbtk::NodePatern 
29  * \brief Pattern for the definition of a new type of Node 
30  */
31
32
33 #ifdef _USE_WXWIDGETS_
34
35
36 #ifndef __bbWxLayoutLine_h__
37 #define __bbWxLayoutLine_h__
38
39 #include "bbtkWxBlackBox.h"
40
41
42
43 namespace bbwx
44 {
45   
46
47   
48   
49   class /*BBTK_EXPORT*/ LayoutLine : public bbtk::WxBlackBox
50   {
51     
52     BBTK_BLACK_BOX_INTERFACE(LayoutLine,bbtk::WxBlackBox);
53     BBTK_DECLARE_INPUT(Widget1,wxWindow*);
54     BBTK_DECLARE_INPUT(Widget2,wxWindow*);
55     BBTK_DECLARE_INPUT(Widget3,wxWindow*);
56     BBTK_DECLARE_INPUT(Widget4,wxWindow*);
57     BBTK_DECLARE_INPUT(Widget5,wxWindow*);
58     BBTK_DECLARE_INPUT(Widget6,wxWindow*);
59     BBTK_DECLARE_INPUT(Widget7,wxWindow*);
60     BBTK_DECLARE_INPUT(Widget8,wxWindow*);
61     BBTK_DECLARE_INPUT(Widget9,wxWindow*);
62     BBTK_DECLARE_INPUT(Orientation,std::string);
63     BBTK_PROCESS(Process);
64     BBTK_CREATE_WIDGET(CreateWidget);
65     
66     void Process();
67     void CreateWidget();
68     void bbUserOnShow();
69     
70   protected:
71         virtual void bbUserConstructor();
72         void TryInsertWindow(wxWindow *parent, wxWindow *w,wxBoxSizer *sizer);
73
74   };
75   
76  
77 //=================================================================
78 // BlackBox description
79   BBTK_BEGIN_DESCRIBE_BLACK_BOX(LayoutLine,bbtk::WxBlackBox);
80   BBTK_NAME("LayoutLine");
81   BBTK_AUTHOR("eduardo.davila@creatis.insa-lyon.fr");
82   BBTK_DESCRIPTION("LayoutLine widget (wxBoxSizer)");
83   // Already inserted for any WxBlackBox  BBTK_CATEGORY("widget");
84   
85   BBTK_INPUT(LayoutLine,Widget1,"widget 1",wxWindow*,"");
86   BBTK_INPUT(LayoutLine,Widget2,"widget 2",wxWindow*,"");
87   BBTK_INPUT(LayoutLine,Widget3,"widget 3",wxWindow*,"");
88   BBTK_INPUT(LayoutLine,Widget4,"widget 4",wxWindow*,"");
89   BBTK_INPUT(LayoutLine,Widget5,"widget 5",wxWindow*,"");
90   BBTK_INPUT(LayoutLine,Widget6,"widget 6",wxWindow*,"");
91   BBTK_INPUT(LayoutLine,Widget7,"widget 7",wxWindow*,"");
92   BBTK_INPUT(LayoutLine,Widget8,"widget 8",wxWindow*,"");
93   BBTK_INPUT(LayoutLine,Widget9,"widget 9",wxWindow*,"");
94   BBTK_INPUT(LayoutLine,Orientation,"Orientation (default V), 0=H=HORIZONTAL , 1=V=VERTICAL",std::string,"");
95   BBTK_END_DESCRIBE_BLACK_BOX(LayoutLine);
96   //=================================================================
97   
98
99
100 }
101
102
103
104 //namespace bbtk
105 #endif  //__bbtkWxLayoutLine_h__
106
107 #endif //_USE_WXWIDGETS_