ManaPlus
textselectdialog.h
Go to the documentation of this file.
1 /*
2  * The ManaPlus Client
3  * Copyright (C) 2004-2009 The Mana World Development Team
4  * Copyright (C) 2009-2010 The Mana Developers
5  * Copyright (C) 2011-2019 The ManaPlus Developers
6  * Copyright (C) 2019-2021 Andrei Karas
7  *
8  * This file is part of The ManaPlus Client.
9  *
10  * This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program. If not, see <http://www.gnu.org/licenses/>.
22  */
23 
24 #ifndef GUI_WINDOWS_TEXTSELECTDIALOG_H
25 #define GUI_WINDOWS_TEXTSELECTDIALOG_H
26 
27 #include "gui/widgets/window.h"
28 
30 
33 
34 class Button;
35 class ScrollArea;
36 class NamesModel;
37 class ListBox;
38 
40  public ActionListener,
41  private SelectionListener
42 {
43  public:
47  TextSelectDialog(const std::string &name,
48  const std::string &selectButton,
49  const AllowQuit allowQuit);
50 
52 
53 
56  ~TextSelectDialog() override final;
57 
61  void action(const ActionEvent &event) override final;
62 
68  void valueChanged(const SelectionEvent &event) override final;
69 
73  void setVisible(Visible visible) override final;
74 
75  void postInit() override;
76 
77  void addText(const std::string &text);
78 
79  std::string getText() const noexcept2 A_WARN_UNUSED
80  { return mText; }
81 
82  void setTag(const int tag) noexcept2
83  { mTag = tag; }
84 
86  { return mTag; }
87 
88  protected:
93 
94  std::string mSelectButtonName;
95  std::string mText;
102  int mTag;
103 };
104 
105 #endif // GUI_WINDOWS_TEXTSELECTDIALOG_H
bool AllowQuit
Definition: allowquit.h:30
Definition: button.h:102
void setTag(const int tag)
void valueChanged(const SelectionEvent &event)
std::string getText() const
ScrollArea * mScrollArea
void addText(const std::string &text)
void setVisible(Visible visible)
int getTag() const
void action(const ActionEvent &event)
NamesModel * mModel
std::string mSelectButtonName
TextSelectDialog(const std::string &name, const std::string &selectButton, const AllowQuit allowQuit)
Definition: window.h:102
#define A_WARN_UNUSED
Definition: localconsts.h:161
#define notfinal
Definition: localconsts.h:261
#define A_NONNULLPOINTER
Definition: localconsts.h:266
#define noexcept2
Definition: localconsts.h:50
#define A_DELETE_COPY(func)
Definition: localconsts.h:53
bool Visible
Definition: visible.h:30