]> Creatis software - bbtk.git/blobdiff - packages/wx/src/bbwxCommandButton.cxx
*** empty log message ***
[bbtk.git] / packages / wx / src / bbwxCommandButton.cxx
index a89bcc8efc717c1d1ee6e313c7751aac09e2b2f8..e216d9904ad0efc8ab52ac0ed2c306e1a82901ff 100644 (file)
@@ -2,8 +2,8 @@
   Program:   bbtk
   Module:    $RCSfile: bbwxCommandButton.cxx,v $
   Language:  C++
-  Date:      $Date: 2008/10/17 08:18:32 $
-  Version:   $Revision: 1.11 $
+  Date:      $Date: 2008/12/12 08:55:23 $
+  Version:   $Revision: 1.14 $
 =========================================================================*/
 
 /* ---------------------------------------------------------------------
 
 namespace bbwx
 {
-  BBTK_ADD_BLACK_BOX_TO_PACKAGE(wx,CommandButton);
-  
+
+
+   //--------------------------------------------------------------------------
+  class CommandButtonWidget : public wxPanel
+  {
+  public:
+    CommandButtonWidget(CommandButton* box, wxWindow *parent, 
+                       wxString title);
+    ~CommandButtonWidget();
+    void OnCommandButton( wxEvent& );
+    void SetLabel(wxString title);
+    void SetColour(wxColour color);
+       
+  private:
+    CommandButton* mBox;
+    wxButton   *mwxCommandButton;
+  }; 
+   
+  //--------------------------------------------------------------------------
+  //--------------------------------------------------------------------------
+
   CommandButtonWidget::CommandButtonWidget(CommandButton* box,
                                           wxWindow *parent, 
                                           wxString title )
@@ -166,7 +185,7 @@ namespace bbwx
   //--------------------------------------------------------------------------
   //-------------------------------------------------------------------------- 
 
-
+  BBTK_ADD_BLACK_BOX_TO_PACKAGE(wx,CommandButton);
   BBTK_BLACK_BOX_IMPLEMENTATION(CommandButton,bbtk::WxBlackBox);
 
   void CommandButton::bbUserConstructor() 
@@ -178,13 +197,18 @@ namespace bbwx
     lstColour.push_back(0.75);
     lstColour.push_back(0.75);
     bbSetInputColour(lstColour);
+    bbSetOutputWidget(0);
   }
   
   
   void CommandButton::Process() 
   { 
-    UpdateColour();
-    UpdateLabel();
+    CommandButtonWidget* w = (CommandButtonWidget*)bbGetOutputWidget();
+    if (w) 
+      {
+       UpdateColour();
+       UpdateLabel();
+      }
   }
   
   void CommandButton::UpdateColour()
@@ -216,11 +240,12 @@ namespace bbwx
    * 
    * 
    */  
-  void CommandButton::CreateWidget() 
+  void CommandButton::CreateWidget(wxWindow* parent
   { 
     bbSetOutputWidget
-      ( new CommandButtonWidget ( this, bbGetWxParent(), 
-                                 bbtk::std2wx(bbGetInputLabel()) ) );
+      ( new CommandButtonWidget ( this, //bbGetWxParent(), 
+                                                                parent,
+                                                                bbtk::std2wx(bbGetInputLabel()) ) );
     UpdateColour();
   }