ManaPlus
skilltab.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_WIDGETS_TABS_SKILLTAB_H
25 #define GUI_WIDGETS_TABS_SKILLTAB_H
26 
28 
31 
32 #include "gui/widgets/tabs/tab.h"
33 
34 #include "localconsts.h"
35 
36 class SkillTab final : public Tab
37 {
38  public:
39  SkillTab(const Widget2 *const widget,
40  const std::string &name,
41  SkillListBox *const listBox) :
42  Tab(widget),
43  mListBox(listBox),
45  {
46  setCaption(name);
47  }
48 
49  SkillTab(const Widget2 *const widget,
50  const std::string &name,
51  SkillRectangleListBox *const listBox) :
52  Tab(widget),
54  mRectangleListBox(listBox)
55  {
56  setCaption(name);
57  }
58 
60 
62  {
65  }
66 
68  {
69  if (mListBox != nullptr)
70  return mListBox->getSelectedInfo();
71  else if (mRectangleListBox != nullptr)
73  else
74  return nullptr;
75  }
76 
77  protected:
78  void setCurrent() override
79  {
80  if (skillDialog != nullptr)
82  }
83 
84  private:
87 };
88 
89 #endif // GUI_WIDGETS_TABS_SKILLTAB_H
void updateTabSelection()
SkillInfo * getSelectedInfo() const
Definition: skilllistbox.h:80
SkillInfo * getSelectedInfo() const
SkillListBox * mListBox
Definition: skilltab.h:85
SkillRectangleListBox * mRectangleListBox
Definition: skilltab.h:86
SkillTab(const Widget2 *const widget, const std::string &name, SkillListBox *const listBox)
Definition: skilltab.h:39
SkillInfo * getSelectedInfo() const
Definition: skilltab.h:67
SkillTab(const Widget2 *const widget, const std::string &name, SkillRectangleListBox *const listBox)
Definition: skilltab.h:49
~SkillTab()
Definition: skilltab.h:61
void setCurrent()
Definition: skilltab.h:78
Definition: tab.h:88
void setCaption(const std::string &caption)
Definition: tab.cpp:458
#define delete2(var)
Definition: delete2.h:25
#define override
Definition: localconsts.h:47
#define final
Definition: localconsts.h:46
#define A_DELETE_COPY(func)
Definition: localconsts.h:53
#define nullptr
Definition: localconsts.h:45
SkillDialog * skillDialog
Definition: skilldialog.cpp:66