diff options
author | Berk Geveci <berk.geveci@kitware.com> | 2001-11-04 23:05:21 (GMT) |
---|---|---|
committer | Berk Geveci <berk.geveci@kitware.com> | 2001-11-04 23:05:21 (GMT) |
commit | 939d614978ff6772aae619bfbc3ef89e27b69f73 (patch) | |
tree | 0b6d52df9911a29a10d25afc7650cf7a1c5ba2f1 /Source/CursesDialog/cmCursesWidget.h | |
parent | ef74458b34dcf2d25b3948c535d59273c2307546 (diff) | |
download | CMake-939d614978ff6772aae619bfbc3ef89e27b69f73.zip CMake-939d614978ff6772aae619bfbc3ef89e27b69f73.tar.gz CMake-939d614978ff6772aae619bfbc3ef89e27b69f73.tar.bz2 |
Adding curses support.
Diffstat (limited to 'Source/CursesDialog/cmCursesWidget.h')
-rw-r--r-- | Source/CursesDialog/cmCursesWidget.h | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/Source/CursesDialog/cmCursesWidget.h b/Source/CursesDialog/cmCursesWidget.h new file mode 100644 index 0000000..3e0a8e4 --- /dev/null +++ b/Source/CursesDialog/cmCursesWidget.h @@ -0,0 +1,47 @@ +#ifndef __cmCursesWidget_h +#define __cmCursesWidget_h + +#include <curses.h> +#include <form.h> +#include "cmCacheManager.h" + +class cmCursesWidget +{ +public: + cmCursesWidget(int width, int height, int left, int top); + virtual ~cmCursesWidget(); + + // Description: + // 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, FORM* form, WINDOW* w) = 0; + + // Description: + // Change the position of the widget. Set isNewPage to true + // if this widget marks the beginning of a new page. + virtual void Move(int x, int y, bool isNewPage); + + // Description: + // Set/Get the value (setting the value also changes the contents + // of the field buffer). + virtual void SetValue(const char* value); + virtual const char* GetValue(); + + // Description: + // Get the type of the widget (STRING, PATH etc...) + cmCacheManager::CacheEntryType GetType() + { return m_Type; } + + friend class cmCursesMainForm; + +protected: + cmCursesWidget(const cmCursesWidget& from); + void operator=(const cmCursesWidget&); + + cmCacheManager::CacheEntryType m_Type; + std::string m_Value; + FIELD* m_Field; +}; + +#endif // __cmCursesWidget_h |