1 /* Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
2    file Copyright.txt or https://cmake.org/licensing for details.  */
3 #pragma once
4 
5 #include "cmConfigure.h" // IWYU pragma: keep
6 
7 #include <string>
8 
9 #include "cmCursesStandardIncludes.h"
10 #include "cmCursesWidget.h"
11 
12 class cmCursesMainForm;
13 
14 class cmCursesLabelWidget : public cmCursesWidget
15 {
16 public:
17   cmCursesLabelWidget(int width, int height, int left, int top,
18                       const std::string& name);
19   ~cmCursesLabelWidget() override;
20 
21   cmCursesLabelWidget(cmCursesLabelWidget const&) = delete;
22   cmCursesLabelWidget& operator=(cmCursesLabelWidget const&) = delete;
23 
24   // Description:
25   // Handle user input. Called by the container of this widget
26   // when this widget has focus. Returns true if the input was
27   // handled
28   bool HandleInput(int& key, cmCursesMainForm* fm, WINDOW* w) override;
29 };
30