]> Creatis software - creaMaracasVisu.git/blob - bbtk/src/bbmaracasvisuSliderMinMax.h
no message
[creaMaracasVisu.git] / bbtk / src / bbmaracasvisuSliderMinMax.h
1 #ifdef _USE_WXWIDGETS_
2 #ifndef __bbcreaMaracasVisuSliderMinMax_h_INCLUDED__
3 #define __bbcreaMaracasVisuSliderMinMax_h_INCLUDED__
4 #include "bbtkWxBlackBox.h"
5
6 #include "mBarRange.h"
7
8 namespace bbcreaMaracasVisu
9 {
10
11
12 //--------------------------------------------------------------------------------------------------------------------------------
13 //--------------------------------------------------------------------------------------------------------------------------------
14 //--------------------------------------------------------------------------------------------------------------------------------
15
16   class SliderMinMax;
17   //------------------------------------------------------------------------------------------------------------------------------------
18   // Event handling auxiliar class
19   //------------------------------------------------------------------------------------------------------------------------------------
20   class wxWidgetSliderMinMax : wxEvtHandler
21   {
22   public:
23           //--------------------------------------------------------------------------------------------------------------------------------
24           // Constructors ans destructors
25           //--------------------------------------------------------------------------------------------------------------------------------
26                 wxWidgetSliderMinMax(SliderMinMax *bbParent,mBarRange * modelBarRange);
27                 ~wxWidgetSliderMinMax();                
28
29           //--------------------------------------------------------------------------------------------------------------------------------
30           // Min-Max Barrange received events
31           //--------------------------------------------------------------------------------------------------------------------------------
32                 void onBarrange(wxCommandEvent& event);
33                 void onActualChange_Bar(wxCommandEvent& event);
34                 void onStartChange_Bar(wxCommandEvent& event);
35                 void onEndChange_Bar(wxCommandEvent& event);
36                 void onSelectionEnd(wxCommandEvent& event);
37                 void onMovedBar(wxCommandEvent& event);
38                 
39           void PushEventHandler();
40
41
42   private:
43           //--------------------------------------------------------------------------------------------------------------------------------
44           // Attributes
45           //--------------------------------------------------------------------------------------------------------------------------------
46           SliderMinMax  *mbbtkSliderMinMax;
47           mBarRange             *modBarRange;
48   };
49
50
51
52 //--------------------------------------------------------------------------------------------------------------------------------
53 //--------------------------------------------------------------------------------------------------------------------------------
54 //--------------------------------------------------------------------------------------------------------------------------------
55
56
57
58 class /*BBTK_EXPORT*/ SliderMinMax
59  : 
60    public bbtk::WxBlackBox
61 {
62   BBTK_BLACK_BOX_INTERFACE(SliderMinMax,bbtk::WxBlackBox);
63         BBTK_DECLARE_INPUT(Orientation, int);
64         BBTK_DECLARE_INPUT(InW, int);
65         BBTK_DECLARE_INPUT(InH, int);
66         BBTK_DECLARE_INPUT(InMax, int );
67         BBTK_DECLARE_INPUT(InMin, int );
68         BBTK_DECLARE_INPUT(InMaxShow, int );
69         BBTK_DECLARE_INPUT(InMinShow, int );
70         BBTK_DECLARE_INPUT(ShowLabels, int );
71         BBTK_DECLARE_INPUT(ShowActual, bool );
72     BBTK_DECLARE_OUTPUT(OutStart,int);
73         BBTK_DECLARE_OUTPUT(OutEnd,int);
74         BBTK_DECLARE_OUTPUT(OutActual,int);
75   BBTK_PROCESS(Process);
76   void Process();
77   BBTK_CREATE_WIDGET(CreateWidget);
78   void CreateWidget(wxWindow*);
79
80   private:
81         bool                    firsttime;
82         mBarRange               *mwxwidget;
83 };
84
85 BBTK_BEGIN_DESCRIBE_BLACK_BOX(SliderMinMax,bbtk::WxBlackBox);
86 BBTK_NAME("SliderMinMax");
87 BBTK_AUTHOR("eduardo.davila [at] creatis.insa-lyon.fr");
88 BBTK_DESCRIPTION("Slider min max");
89 //BBTK_CATEGORY("__CategoryBlackBox__");
90   BBTK_INPUT(SliderMinMax,Orientation,"Orientation ", int,"");
91   BBTK_INPUT(SliderMinMax,InW,"Width ", int,"");
92   BBTK_INPUT(SliderMinMax,InH,"Height ", int,"");
93   BBTK_INPUT(SliderMinMax,InMax,"Max value ", int,"");
94   BBTK_INPUT(SliderMinMax,InMin, "Min value ",int ,"");
95   BBTK_INPUT(SliderMinMax,InMaxShow,"Max showed value ", int ,"");
96   BBTK_INPUT(SliderMinMax,InMinShow, "Min showed value ",int ,"");
97   BBTK_INPUT(SliderMinMax,ShowLabels, "Show labels ",int ,"");
98   BBTK_INPUT(SliderMinMax,ShowActual, "Show actual (default true)",bool ,"");
99   BBTK_OUTPUT(SliderMinMax,OutStart,"Min value output",int,"");
100   BBTK_OUTPUT(SliderMinMax,OutEnd,"Max value output",int,"");
101   BBTK_OUTPUT(SliderMinMax,OutActual,"Actual value output",int,"");
102 BBTK_END_DESCRIBE_BLACK_BOX(SliderMinMax);
103 }
104 // EO namespace bbcreaMaracasVisu
105
106 #endif // __bbcreaMaracasVisuSliderMinMax_h_INCLUDED__
107 #endif // _USE_WXWIDGETS_
108