/*========================================================================= Program: bbtk Module: $RCSfile: bbwxInputText.h,v $ Language: C++ Date: $Date: 2008/04/08 06:59:32 $ Version: $Revision: 1.2 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or http://www.creatis.insa-lyon.fr/Public/bbtk/License.html for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. =========================================================================*//** * \brief Short description in one line * * Long description which * can span multiple lines */ /** * \file * \brief Pattern for the definition of a new type of Node (header) */ /** * \class bbtk::NodePatern * \brief Pattern for the definition of a new type of Node */ #ifdef _USE_WXWIDGETS_ #ifndef __bbWxInputText_h__ #define __bbWxInputText_h__ #include "bbtkWxBlackBox.h" namespace bbwx { class InputText; //-------------------------------------------------------------------------- class InputTextWidget : wxPanel { public: InputTextWidget(InputText* box, wxWindow *parent, wxString In, wxString title); ~InputTextWidget(); std::string GetValue(); void OnTextUpdate(wxCommandEvent& event); void SetTitle(wxString); private: InputText *mBox; wxTextCtrl *mwxTextCtrl; wxStaticText *mwxTitle; }; //------------------------------------------------------------------------ //------------------------------------------------------------------------ //------------------------------------------------------------------------ class /*BBTK_EXPORT*/ InputText : public bbtk::WxBlackBox { BBTK_USER_BLACK_BOX_INTERFACE(InputText,bbtk::WxBlackBox); BBTK_DECLARE_INPUT(In,std::string); BBTK_DECLARE_INPUT(Title,std::string); BBTK_DECLARE_OUTPUT(Out,std::string); BBTK_PROCESS(Process); void Process(); BBTK_CREATE_WIDGET(CreateWidget); void CreateWidget(); protected: virtual void bbUserConstructor(); }; //================================================================= // UserBlackBox description BBTK_BEGIN_DESCRIBE_BLACK_BOX(InputText,bbtk::WxBlackBox); BBTK_NAME("InputText"); BBTK_AUTHOR("laurent guigues at creatis.insa-lyon.fr"); BBTK_DESCRIPTION("A zone in which the user can enter a text (wxTextCtrl)"); BBTK_INPUT(InputText,In,"Initial text (default '')",std::string,""); BBTK_INPUT(InputText,Title,"Title of the input zone (default '') ", std::string,""); BBTK_OUTPUT(InputText,Out,"Current text",std::string,""); BBTK_END_DESCRIBE_BLACK_BOX(InputText); //================================================================= } //namespace bbtk #endif //__bbWxInputText_h__ #endif //_USE_WXWIDGETS_