| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- /*=========================================================================
- Program: CMake - Cross-Platform Makefile Generator
- Module: $RCSfile$
- Language: C++
- Date: $Date$
- Version: $Revision$
- Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
- See Copyright.txt or http://www.cmake.org/HTML/Copyright.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.
- =========================================================================*/
- #ifndef __cmCursesStringWidget_h
- #define __cmCursesStringWidget_h
- #include "cmCursesWidget.h"
- class cmCursesMainForm;
- /** \class cmCursesStringWidget
- * \brief A simple entry widget.
- *
- * cmCursesStringWdiget is a simple text entry widget.
- */
- class cmCursesStringWidget : public cmCursesWidget
- {
- public:
- cmCursesStringWidget(int width, int height, int left, int top);
-
- /**
- * Handle user input. Called by the container of this widget
- * when this widget has focus. Returns true if the input was
- * handled.
- */
- virtual bool HandleInput(int& key, cmCursesMainForm* fm, WINDOW* w);
- /**
- * Set/Get the string.
- */
- void SetString(const char* value);
- const char* GetString();
- virtual const char* GetValue();
- /**
- * Set/Get InEdit flag. Can be used to tell the widget to leave
- * edit mode (in case of a resize for example).
- */
- void SetInEdit(bool inedit)
- { m_InEdit = inedit; }
- bool GetInEdit()
- { return m_InEdit; }
- /**
- * This method is called when different keys are pressed. The
- * subclass can have a special implementation handler for this.
- */
- virtual void OnTab(cmCursesMainForm* fm, WINDOW* w);
- virtual void OnReturn(cmCursesMainForm* fm, WINDOW* w);
- virtual void OnType(int& key, cmCursesMainForm* fm, WINDOW* w);
- /**
- * If there are any, print the widget specific commands
- * in the toolbar and return true. Otherwise, return false
- * and the parent widget will print.
- */
- virtual bool PrintKeys();
- protected:
- cmCursesStringWidget(const cmCursesStringWidget& from);
- void operator=(const cmCursesStringWidget&);
- // true if the widget is in edit mode
- bool m_InEdit;
- char* m_OriginalString;
- bool m_Done;
- };
- #endif // __cmCursesStringWidget_h
|