]> Creatis software - creaWT.git/blobdiff - wt/bbtk_wt_PKG/src/bbwtComboBox.cxx
#3029 creaWT Feature New Normal - Documentation (config)
[creaWT.git] / wt / bbtk_wt_PKG / src / bbwtComboBox.cxx
index 1f45ad81ab60843b52bb67743d7124d92f564ce0..2a4bf63943863c8f31a9bf6615e63d55cbf77bd1 100644 (file)
@@ -12,17 +12,17 @@ namespace bbwt
       ComboBoxWidget(ComboBox* box, Wt::WContainerWidget *parent,
                       int iSelection,
                       Wt::WString title,
-                      std::vector<std::string> lstIn,
                       int typeForm);
       ~ComboBoxWidget();
       void OnComboBox();
+         void AddItems( std::vector<std::string> lstIn );      
 
     private:
-      int mTypeForm;
-      ComboBox *mBox;
-      Wt::WComboBox *wtCmbBox;  
+      int                              mTypeForm;
+      ComboBox                         *mBox;
+      Wt::WComboBox    *wtCmbBox;  
       Wt::WSelectionBox *wtSlctBox;
-      Wt::WComboBox *selection;
+      Wt::WComboBox    *selection;
       //TODO choice
 
   };
@@ -35,7 +35,6 @@ namespace bbwt
   ComboBoxWidget::ComboBoxWidget(ComboBox* box, Wt::WContainerWidget *parent,
                       int iSelection,
                       Wt::WString title,
-                      std::vector<std::string> lstIn,
                       int typeForm)
                  :
                       Wt::WContainerWidget(parent),
@@ -48,42 +47,31 @@ namespace bbwt
     int i;
     if(title!="")
     {
-      layout->addWidget(new Wt::WText(title),Wt::WBorderLayout::North);
-    
+      layout->addWidget(new Wt::WText(title),Wt::WBorderLayout::North);    
     }
     
-   
-    if(mTypeForm == 1)
+    if(mTypeForm == 0)
     {
-      wtCmbBox = new Wt::WComboBox();
+      wtCmbBox         = new Wt::WComboBox();
       selection = wtCmbBox;
-    }
-    else
-    {
+    } else {
       wtSlctBox = new Wt::WSelectionBox();
      // wtSlctBox->setSelectionMode(Wt::ExtendedSelection);
       selection = wtSlctBox;
     }
-    for (i=0;i<lstIn.size(); i++)
-    {
-      selection->addItem(bbtk::std2wt(lstIn[i]));
-    }
 
     selection->activated().connect(this,&ComboBoxWidget::OnComboBox);
 
     layout->addWidget(selection,Wt::WBorderLayout::Center);
     panel->setLayout(layout);
-      
-    
   }
 
-  //-------------------------------------------------------------------------
-  
+//-------------------------------------------------------------------------  
   ComboBoxWidget::~ComboBoxWidget()
   {
   }
 
-    //--------------------------------------------------------------------------
+//--------------------------------------------------------------------------
   void ComboBoxWidget::OnComboBox()
   {
     mBox->bbSetInputSelection( selection->currentIndex() );
@@ -93,6 +81,17 @@ namespace bbwt
     mBox->bbSignalOutputModification("OutString");
   }
 
+//--------------------------------------------------------------------------
+  void ComboBoxWidget::AddItems( std::vector<std::string> lstIn )
+  {
+       int i;
+    for (i=0;i<lstIn.size(); i++)
+    {
+      selection->addItem(bbtk::std2wt(lstIn[i]));
+    }  // for i
+  }
+
+
   
 BBTK_ADD_BLACK_BOX_TO_PACKAGE(wt,ComboBox)
 BBTK_BLACK_BOX_IMPLEMENTATION(ComboBox,bbtk::WtBlackBox);
@@ -102,7 +101,8 @@ BBTK_BLACK_BOX_IMPLEMENTATION(ComboBox,bbtk::WtBlackBox);
 void ComboBox::Process()
 {
 
-
+       ComboBoxWidget *widget = (ComboBoxWidget *)bbGetOutputWidget();
+       widget->AddItems( bbGetInputIn() );
   
 }
 //===== 
@@ -113,10 +113,10 @@ void ComboBox::CreateWidget(Wt::WContainerWidget* parent)
 
        ComboBoxWidget *w = new ComboBoxWidget(
                                this,
-                                                                       parent,
+                                                       parent,
                                bbGetInputSelection() ,
                                bbGetInputTitle(),
-                               bbGetInputIn(),
+//                             bbGetInputIn(),
                                bbGetInputForm() );
 
    bbSetOutputOut( bbGetInputSelection() );