Freeciv21
Develop your civilization from humble roots to a global empire
tab_extras.h
Go to the documentation of this file.
1 /*__ ___ ***************************************
2 / \ / \ Copyright (c) 1996-2020 Freeciv21 and Freeciv
3 \_ \ / __/ contributors. This file is part of Freeciv21.
4  _\ \ / /__ Freeciv21 is free software: you can redistribute it
5  \___ \____/ __/ and/or modify it under the terms of the GNU General
6  \_ _/ Public License as published by the Free Software
7  | @ @ \_ Foundation, either version 3 of the License,
8  | or (at your option) any later version.
9  _/ /\ You should have received a copy of the GNU
10  /o) (o/\ \_ General Public License along with Freeciv21.
11  \_____/ / If not, see https://www.gnu.org/licenses/.
12  \____/ ********************************************************/
13 
14 #ifndef FC__TAB_EXTRAS_H
15 #define FC__TAB_EXTRAS_H
16 
17 #include <fc_config.h>
18 
19 // Qt
20 #include <QWidget>
21 
22 class QLineEdit;
23 class QListWidget;
24 class QRadioButton;
25 
26 class ruledit_gui;
27 
28 class tab_extras : public QWidget {
29  Q_OBJECT
30 
31 public:
32  explicit tab_extras(ruledit_gui *ui_in);
33  void refresh();
34 
35 private:
37  void update_extra_info(struct extra_type *pextra);
38  bool initialize_new_extra(struct extra_type *pextra);
39 
40  QLineEdit *name;
41  QLineEdit *rname;
42  QListWidget *extra_list;
43  QRadioButton *same_name;
44 
46 
47 private slots:
48  void name_given();
49  void select_extra();
50  void add_now();
51  void delete_now();
52  void same_name_toggle(bool checked);
53  void edit_reqs();
54  void edit_effects();
55 };
56 
57 #endif // FC__TAB_EXTRAS_H
void same_name_toggle(bool checked)
Toggled whether rule_name and name should be kept identical.
Definition: tab_extras.cpp:282
void add_now()
User requested new extra.
Definition: tab_extras.cpp:243
void update_extra_info(struct extra_type *pextra)
Update info of the extra.
Definition: tab_extras.cpp:132
QListWidget * extra_list
Definition: tab_extras.h:42
void name_given()
User entered name for the extra.
Definition: tab_extras.cpp:175
tab_extras(ruledit_gui *ui_in)
Setup tab_extras object.
Definition: tab_extras.cpp:39
QLineEdit * name
Definition: tab_extras.h:40
QRadioButton * same_name
Definition: tab_extras.h:43
QLineEdit * rname
Definition: tab_extras.h:41
void refresh()
Refresh the information.
Definition: tab_extras.cpp:113
void delete_now()
User requested extra deletion.
Definition: tab_extras.cpp:208
struct extra_type * selected
Definition: tab_extras.h:45
void edit_effects()
User wants to edit effects.
Definition: tab_extras.cpp:304
ruledit_gui * ui
Definition: tab_extras.h:36
void edit_reqs()
User wants to edit reqs.
Definition: tab_extras.cpp:293
bool initialize_new_extra(struct extra_type *pextra)
Initialize new extra for use.
Definition: tab_extras.cpp:229
void select_extra()
User selected extra from the list.
Definition: tab_extras.cpp:160