]> Creatis software - creaMaracasVisu.git/blob - bbtk/src/bbmaracasvisuSliderMinMax.cxx
no message
[creaMaracasVisu.git] / bbtk / src / bbmaracasvisuSliderMinMax.cxx
1 #include "bbmaracasvisuSliderMinMax.h"
2 #include "bbcreaMaracasVisuPackage.h"
3
4
5 namespace bbcreaMaracasVisu
6 {
7
8   //------------------------------------------------------------------------------------------------------------------------------------
9   // Event handling auxiliar class
10   //------------------------------------------------------------------------------------------------------------------------------------
11  
12           //--------------------------------------------------------------------------------------------------------------------------------
13           // Constructors ans destructors
14           //--------------------------------------------------------------------------------------------------------------------------------
15                 wxWidgetSliderMinMax :: wxWidgetSliderMinMax(SliderMinMax *bbParent,mBarRange * modelBarRange)//(wxWindow *parent, mBarRange * modelBarRange)
16                 :wxEvtHandler()
17                 {                       
18                         modBarRange = modelBarRange;
19                         mbbtkSliderMinMax = bbParent;
20                         modBarRange->PushEventHandler(this);
21                         Connect(modBarRange->GetId(),wxEVT_TSBAR,(wxObjectEventFunction) (wxCommandEventFunction) &wxWidgetSliderMinMax::onBarrange );
22 //                      Connect(modBarRange->GetId(),98765,(wxObjectEventFunction) (wxCommandEventFunction)  &wxWidgetSliderMinMax::onActualChange_Bar );
23                         Connect(modBarRange->GetId(),wxEVT_TSBAR_ACTUAL,(wxObjectEventFunction) (wxCommandEventFunction)  &wxWidgetSliderMinMax::onActualChange_Bar );
24                         Connect(modBarRange->GetId(),wxEVT_TSBAR_START,(wxObjectEventFunction) (wxCommandEventFunction)  &wxWidgetSliderMinMax::onStartChange_Bar );            
25                         Connect(modBarRange->GetId(),wxEVT_TSBAR_END,(wxObjectEventFunction) (wxCommandEventFunction)  &wxWidgetSliderMinMax::onEndChange_Bar );
26                         Connect(modBarRange->GetId(),wxEVT_SELECTION_END,(wxObjectEventFunction) (wxCommandEventFunction)  &wxWidgetSliderMinMax::onSelectionEnd );
27                         Connect(modBarRange->GetId(),wxEVT_TSBAR_MOVED,(wxObjectEventFunction) (wxCommandEventFunction)  &wxWidgetSliderMinMax::onMovedBar );           
28                 }
29
30                 wxWidgetSliderMinMax ::  ~wxWidgetSliderMinMax()
31                 {
32                 }
33                 
34
35           //--------------------------------------------------------------------------------------------------------------------------------
36           // Min-Max Barrange received events
37           //--------------------------------------------------------------------------------------------------------------------------------
38                 void wxWidgetSliderMinMax :: onBarrange(wxCommandEvent& event)
39                 {
40                 }
41
42                 void wxWidgetSliderMinMax :: onActualChange_Bar(wxCommandEvent& event)
43                 {
44                         mbbtkSliderMinMax->bbSetOutputOutActual(modBarRange->GetActual());
45                         mbbtkSliderMinMax->bbSignalOutputModification(std::string("OutActual"));
46                 }
47
48                 void wxWidgetSliderMinMax :: onStartChange_Bar(wxCommandEvent& event)
49                 {
50                         mbbtkSliderMinMax->bbSetOutputOutStart(modBarRange->GetStart());                        
51                         mbbtkSliderMinMax->bbSetInputInMinShow(modBarRange->GetStart());
52                         mbbtkSliderMinMax->bbSignalOutputModification(std::string("OutStart"));
53                 }
54         
55                 void wxWidgetSliderMinMax :: onEndChange_Bar(wxCommandEvent& event)
56                 {
57                         mbbtkSliderMinMax->bbSetOutputOutEnd(modBarRange->GetEnd());
58                         mbbtkSliderMinMax->bbSignalOutputModification(std::string("OutEnd"));
59                 }
60         
61                 void wxWidgetSliderMinMax :: onSelectionEnd(wxCommandEvent& event)
62                 {
63                 }
64
65                 void wxWidgetSliderMinMax :: onMovedBar(wxCommandEvent& event)
66                 {
67                 }
68
69
70   //--------------------------------------------------------------------------
71   //-------------------------------------------------------------------------
72   //--------------------------------------------------------------------------
73   //--------------------------------------------------------------------------
74
75
76 BBTK_ADD_BLACK_BOX_TO_PACKAGE(creaMaracasVisu,SliderMinMax)
77 BBTK_BLACK_BOX_IMPLEMENTATION(SliderMinMax,bbtk::WxBlackBox);
78
79 //------------------------------------------------------
80 void SliderMinMax::Process()
81 {
82         if (mwxwidget!=NULL){
83                 if (firsttime==true)
84                 {
85                         firsttime=false;
86                         mwxwidget -> setRepresentedValues( bbGetInputInMin(), bbGetInputInMax() );
87                         mwxwidget -> SetStart(bbGetInputInMinShow());
88                         mwxwidget -> SetEnd(bbGetInputInMaxShow());  
89                 }
90                 bbSetOutputOutStart(mwxwidget->GetStart());
91                 bbSetOutputOutEnd(mwxwidget->GetEnd());
92                 bbSetOutputOutActual(mwxwidget->GetActual());
93         } // mwxwidget
94 }
95
96 //------------------------------------------------------
97 void SliderMinMax::CreateWidget(wxWindow* parent)
98 {
99
100     bbtkDebugMessageInc("Core",9,"SliderMinMax::CreateWidget()"<<std::endl);
101
102                 mwxwidget = new mBarRange(parent ,bbGetInputInW(), bbGetInputInH()); 
103                 mwxwidget -> SetOrientation( bbGetInputOrientation()==1 );
104                 mwxwidget -> setActiveStateTo(true);
105                 mwxwidget -> setVisibleLabels( bbGetInputShowLabels()==1 );
106                 mwxwidget -> setDeviceEndMargin(10);
107 //          mwxwidget -> setRepresentedValues(bbGetInputInMin(), bbGetInputInMax());
108                 mwxwidget -> setDeviceBlitStart(10,10); 
109                 mwxwidget -> setIfWithActualDrawed(bbGetInputShowActual());
110 //              mwxwidget -> SetStart(bbGetInputInMinShow());
111 //              mwxwidget -> SetEnd(bbGetInputInMaxShow());  
112         
113         
114                 wxWidgetSliderMinMax * eventHandler = new wxWidgetSliderMinMax(this, mwxwidget); //JPRx   //EED ?????
115         
116         
117                 bbtkDebugDecTab("Core",9);
118
119         bbSetOutputWidget( mwxwidget );
120
121
122 }
123
124 //------------------------------------------------------
125 void SliderMinMax::bbUserSetDefaultValues()
126 {
127                 firsttime       =       true;
128                 mwxwidget       =       NULL;
129                 bbSetInputOrientation(1);
130                 bbSetInputInW(200);
131                 bbSetInputInH(65);
132                 bbSetInputInMax(200);
133                 bbSetInputInMin(1);
134                 bbSetInputInMaxShow(200);
135                 bbSetInputInMinShow(1);
136                 bbSetInputShowLabels(1);
137                 bbSetInputShowActual(true);
138
139                 bbSetOutputOutStart(0);
140                 bbSetOutputOutEnd(0);
141                 bbSetOutputOutActual(0);
142 }
143
144                 
145         //-----------------------------------------------------------------     
146         void SliderMinMax::bbUserInitializeProcessing()
147         {
148         }
149         
150         //-----------------------------------------------------------------     
151         void SliderMinMax::bbUserFinalizeProcessing()
152         {
153         }
154         
155         //-----------------------------------------------------------------     
156
157 }
158 // EO namespace bbcreaMaracasVisu
159
160