/*============================================================================ CMake - Cross Platform Makefile Generator Copyright 2000-2009 Kitware, Inc., Insight Software Consortium Distributed under the OSI-approved BSD License (the "License"); see accompanying file Copyright.txt for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the License for more information. ============================================================================*/ #ifndef cmCursesPathWidget_h #define cmCursesPathWidget_h #include "cmCursesStringWidget.h" class cmCursesPathWidget : public cmCursesStringWidget { public: cmCursesPathWidget(int width, int height, int left, int top); /** * 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); protected: cmCursesPathWidget(const cmCursesPathWidget& from); void operator=(const cmCursesPathWidget&); std::string LastString; std::string LastGlob; bool Cycle; std::string::size_type CurrentIndex; }; #endif // cmCursesPathWidget_h