Freeciv21
Develop your civilization from humble roots to a global empire
tab_building.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_BUILDING_H
15 #define FC__TAB_BUILDING_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_building : public QWidget {
29  Q_OBJECT
30 
31 public:
32  explicit tab_building(ruledit_gui *ui_in);
33  void refresh();
34 
35 private:
37  void update_bldg_info(struct impr_type *pimpr);
38  bool initialize_new_bldg(struct impr_type *pimpr);
39 
40  QLineEdit *name;
41  QLineEdit *rname;
42  QListWidget *bldg_list;
43  QRadioButton *same_name;
44 
46 
47 private slots:
48  void name_given();
49  void select_bldg();
50  void add_now2(); // "2" in name to workaround segfault on program start.
51  // Due to compiler bug?
52  void delete_now();
53  void same_name_toggle(bool checked);
54  void edit_reqs();
55  void edit_effects();
56 };
57 
58 #endif // FC__TAB_BUILDING_H
struct impr_type * selected
Definition: tab_building.h:45
void add_now2()
User requested new building.
void refresh()
Refresh the information.
void edit_reqs()
User wants to edit reqs.
bool initialize_new_bldg(struct impr_type *pimpr)
Initialize new tech for use.
ruledit_gui * ui
Definition: tab_building.h:36
void name_given()
User entered name for the building.
void update_bldg_info(struct impr_type *pimpr)
Update info of the building.
void select_bldg()
User selected building from the list.
tab_building(ruledit_gui *ui_in)
Setup tab_building object.
QListWidget * bldg_list
Definition: tab_building.h:42
void edit_effects()
User wants to edit effects.
QLineEdit * rname
Definition: tab_building.h:41
QRadioButton * same_name
Definition: tab_building.h:43
void delete_now()
User requested building deletion.
void same_name_toggle(bool checked)
Toggled whether rule_name and name should be kept identical.
QLineEdit * name
Definition: tab_building.h:40