Program: bbtk
Module: $RCSfile: bbwxInputText.cxx,v $
Language: C++
- Date: $Date: 2010/04/08 14:36:32 $
- Version: $Revision: 1.9 $
+ Date: $Date: 2010/04/09 14:02:15 $
+ Version: $Revision: 1.10 $
=========================================================================*/
/* ---------------------------------------------------------------------
~InputTextWidget();
std::string GetValue();
+ void OnTextEnter(wxCommandEvent& event);
void OnTextUpdate(wxCommandEvent& event);
void SetTitle(wxString);
{
wxPanel *panel = this;
- mwxTextCtrl = new wxTextCtrl( panel, -1, In,
- wxDefaultPosition, wxSize(800,20));
+ mwxTextCtrl = new wxTextCtrl( panel, -1, In,wxDefaultPosition, wxSize(800,20),wxTE_PROCESS_ENTER);
+ Connect( mwxTextCtrl->GetId(), wxEVT_COMMAND_TEXT_ENTER,
+ (wxObjectEventFunction)
+ (wxEventFunction)
+ (wxCommandEventFunction)
+ (void (wxPanel::*)(wxCommandEvent&))
+ &InputTextWidget::OnTextEnter );
- // The following was supposed to generate an event, only on ENTER key ...
- // ... but nothing happens (no event at all ?!?)
- //Connect( mwxTextCtrl->GetId(), wxEVT_COMMAND_TEXT_ENTER,
-
- Connect( mwxTextCtrl->GetId(), wxEVT_COMMAND_TEXT_UPDATED,
+ Connect( mwxTextCtrl->GetId(), wxEVT_COMMAND_TEXT_UPDATED,
(wxObjectEventFunction)
(wxEventFunction)
(wxCommandEventFunction)
(void (wxPanel::*)(wxCommandEvent&))
&InputTextWidget::OnTextUpdate );
+
wxFlexGridSizer *sizer = new wxFlexGridSizer(1);
- /*
- if (title!=_T(""))
- {
- */
mwxTitle = new wxStaticText(panel, -1, title );
sizer-> Add( mwxTitle );
- // }
sizer-> Add( mwxTextCtrl, 1, wxGROW );
sizer-> AddGrowableCol(0);
//--------------------------------------------------------------------------
void InputTextWidget::OnTextUpdate(wxCommandEvent& event)
{
- mBox->bbSetOutputOut( GetValue() );
- mBox->bbSetInputIn( GetValue() );
- mBox->bbSignalOutputModification("Out");
+ if (mBox->bbGetInputReactiveOnKeystroke()==2){
+ mBox->bbSetOutputOut( GetValue() );
+ mBox->bbSetInputIn( GetValue() );
+ mBox->bbSignalOutputModification("Out");
+ }
}
+ //--------------------------------------------------------------------------
+ void InputTextWidget::OnTextEnter(wxCommandEvent& event)
+ {
+ if (mBox->bbGetInputReactiveOnKeystroke()==1){
+ mBox->bbSetOutputOut( GetValue() );
+ mBox->bbSetInputIn( GetValue() );
+ mBox->bbSignalOutputModification("Out");
+ }
+ }
+
+
//--------------------------------------------------------------------------
//-------------------------------------------------------------------------
//--------------------------------------------------------------------------
bbSetInputTitle("");
bbSetInputIn("");
bbSetOutputWidget(0);
+ bbSetInputReactiveOnKeystroke(2);
}
//-----------------------------------------------------------------