Freeciv-3.3
Loading...
Searching...
No Matches
citydlg.h
Go to the documentation of this file.
1/***********************************************************************
2 Freeciv - Copyright (C) 1996 - A Kjeldberg, L Gregersen, P Unold
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; either version 2, or (at your option)
6 any later version.
7
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
12***********************************************************************/
13#ifndef FC__CITYDLG_H
14#define FC__CITYDLG_H
15
16#ifdef HAVE_CONFIG_H
17#include <fc_config.h>
18#endif
19
20// Qt
21#include <QElapsedTimer>
22#include <QItemDelegate>
23#include <QLabel>
24#include <QProgressBar>
25#include <QScrollArea>
26#include <QTableView>
27#include <QtMath>
28#include <QVariant>
29
30// common
31#include "unittype.h"
32
33// client
34#include "canvas.h"
35
36// gui-qt
37#include "fonts.h"
38#include "dialogs.h"
39
40class QCheckBox;
41class QComboBox;
42class QGridLayout;
43class QGroupBox;
44class QHBoxLayout;
45class QPushButton;
46class QRadioButton;
47class QSplitter;
48class QTableWidget;
49class QVBoxLayout;
50
51#define SPECENUM_NAME city_info
52
53#define SPECENUM_VALUE0 INFO_CITIZEN
54#define SPECENUM_VALUE0NAME N_("Size:")
55#define SPECENUM_VALUE1 INFO_FOOD
56#define SPECENUM_VALUE1NAME N_("Food:")
57#define SPECENUM_VALUE2 INFO_SHIELD
58#define SPECENUM_VALUE2NAME N_("Prod:")
59#define SPECENUM_VALUE3 INFO_TRADE
60#define SPECENUM_VALUE3NAME N_("Trade:")
61#define SPECENUM_VALUE4 INFO_GOLD
62#define SPECENUM_VALUE4NAME N_("Gold:")
63#define SPECENUM_VALUE5 INFO_LUXURY
64#define SPECENUM_VALUE5NAME N_("Luxury:")
65#define SPECENUM_VALUE6 INFO_SCIENCE
66#define SPECENUM_VALUE6NAME N_("Science:")
67#define SPECENUM_VALUE7 INFO_GRANARY
68#define SPECENUM_VALUE7NAME N_("Granary:")
69#define SPECENUM_VALUE8 INFO_GROWTH
70#define SPECENUM_VALUE8NAME N_("Change in:")
71#define SPECENUM_VALUE9 INFO_CORRUPTION
72#define SPECENUM_VALUE9NAME N_("Corruption:")
73#define SPECENUM_VALUE10 INFO_WASTE
74#define SPECENUM_VALUE10NAME N_("Waste:")
75#define SPECENUM_VALUE11 INFO_CULTURE
76#define SPECENUM_VALUE11NAME N_("Culture:")
77#define SPECENUM_VALUE12 INFO_POLLUTION
78#define SPECENUM_VALUE12NAME N_("Pollution:")
79#define SPECENUM_VALUE13 INFO_ILLNESS
80#define SPECENUM_VALUE13NAME N_("Plague risk:")
81#define SPECENUM_VALUE14 INFO_STEAL
82#define SPECENUM_VALUE14NAME N_("Tech Stolen:")
83#define SPECENUM_VALUE15 INFO_AIRLIFT
84#define SPECENUM_VALUE15NAME N_("Airlift:")
85
86#define SPECENUM_COUNT NUM_INFO_FIELDS // number of city_info panel enumerated fields
87#include "specenum_gen.h"
88
89class QImage;
90
93 struct city *pcity = nullptr,
94 bool ext = false);
95QString get_tooltip_unit(const struct unit_type *utype, bool ext = false);
96
97class fc_tooltip : public QObject
98{
100public:
101 explicit fc_tooltip(QObject *parent = nullptr): QObject(parent) {}
102
103protected:
104 bool eventFilter(QObject *obj, QEvent *event);
105};
106
107
108/****************************************************************************
109 Custom progressbar with animated progress and right click event
110****************************************************************************/
111class progress_bar: public QProgressBar
112{
115signals:
116 void clicked();
117
118public:
119 progress_bar(QWidget *parent);
124 void set_pixmap(struct universal *target);
125 void set_pixmap(int n);
126
127protected:
131private:
132 void create_region();
137};
138
139/****************************************************************************
140 Single item on unit_info in city dialog representing one unit
141****************************************************************************/
142class unit_item: public QLabel
143{
155 QMenu *unit_menu;
156
157public:
158 unit_item(QWidget *parent, struct unit *punit, bool supp = false,
159 int happy_cost = 0);
160 ~unit_item();
161 void init_pix();
162
163private:
164 struct unit *qunit;
167 void create_actions();
170
171private slots:
172 void disband();
173 void change_homecity();
174 void activate_unit();
176 void sentry_unit();
177 void fortify_unit();
178 void upgrade_unit();
179 void load_unit();
180 void unload_unit();
181 void unload_all();
182
183protected:
186 void leaveEvent(QEvent *event);
187#ifndef FC_QT5_MODE
189#else // FC_QT5_MODE
190 void enterEvent(QEvent *event);
191#endif // FC_QT5_MODE
192};
193
194/****************************************************************************
195 Shows list of units ( as labels - unit_info )
196****************************************************************************/
197class unit_info: public QFrame
198{
199
201
202public:
203 unit_info(bool supp);
204 ~unit_info();
205 void add_item(unit_item *item);
206 void init_layout();
207 void update_units();
208 void clear_layout();
211
212private:
214protected:
216};
217
218
219/****************************************************************************
220 Single item on unit_info in city dialog representing one unit
221****************************************************************************/
222class impr_item: public QLabel
223{
225
226public:
227 impr_item(QWidget *parent, const struct impr_type *building, struct city *pcity);
228 ~impr_item();
229 void init_pix();
230
231private:
232 const struct impr_type *impr;
234 struct city *dlgcity;
235
236protected:
239 void leaveEvent(QEvent *event);
240#ifndef FC_QT5_MODE
242#else // FC_QT5_MODE
243 void enterEvent(QEvent *event);
244#endif // FC_QT5_MODE
245};
246
247
248/****************************************************************************
249 Shows list of improvements
250****************************************************************************/
251class impr_info: public QFrame
252{
254public:
255 impr_info(QWidget *parent);
256 ~impr_info();
257 void add_item(impr_item *item);
258 void init_layout();
259 void update_buildings();
260 void clear_layout();
263protected:
265};
266
267/****************************************************************************
268 Class used for showing tiles and workers view in city dialog
269****************************************************************************/
270class city_map: public QWidget
271{
272
277
278public:
279 city_map(QWidget *parent);
280 ~city_map();
281 void set_pixmap(struct city *pcity, float z);
282private:
285 struct city *mcity;
287 float zoom;
288 int wdth;
294protected:
295 QSize sizeHint() const;
296 QSize minimumSizeHint() const;
297private slots:
298 void context_menu(QPoint point);
299};
300
301/****************************************************************************
302 Item delegate for production popup
303****************************************************************************/
304class city_production_delegate: public QItemDelegate
305{
307
308public:
309 city_production_delegate(QPoint sh, QObject *parent, struct city *city);
312 const QModelIndex &index) const;
314 const QModelIndex &index) const;
315
316private:
319 struct city *pcity;
320
321protected:
323 const QRect &rect) const;
324};
325
326/****************************************************************************
327 Single item in production popup
328****************************************************************************/
329class production_item: public QObject
330{
332
333public:
334 production_item(struct universal *ptarget, QObject *parent);
336 inline int columnCount() const {
337 return 1;
338 }
339 QVariant data() const;
340 bool setData();
341
342private:
344};
345
346/***************************************************************************
347 City production model
348***************************************************************************/
349class city_production_model : public QAbstractListModel
350{
352
353public:
354 city_production_model(struct city *pcity, bool f, bool su, bool sw, bool sb,
355 QObject *parent = nullptr);
357 inline int rowCount(const QModelIndex &index = QModelIndex()) const {
358 Q_UNUSED(index);
359 return (qCeil(static_cast<float>(city_target_list.size()) / 3));
360 }
363 return 3;
364 }
365 QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
366 bool setData(const QModelIndex &index, const QVariant &value,
367 int role = Qt::DisplayRole);
369 void populate();
371
372private:
374 struct city *mcity;
379};
380
381/****************************************************************************
382 Class for popup available production
383****************************************************************************/
384class production_widget: public QTableView
385{
387
390
391public:
392 production_widget(QWidget *parent, struct city *pcity, bool future,
393 int when, int curr, bool show_units, bool buy = false,
394 bool show_wonders = true, bool show_buildings = true);
396
397public slots:
398 void prod_selected(const QItemSelection &sl, const QItemSelection &ds);
399
400protected:
402 bool eventFilter(QObject *obj, QEvent *ev);
403
404private:
405 struct city *pw_city;
409 bool buy_it;
411};
412
413
414/****************************************************************************
415 city_label is used only for showing citizens icons
416 and was created to catch mouse events
417****************************************************************************/
418class city_label: public QLabel
419{
421
422public:
423 city_label(int type, QWidget *parent = nullptr);
424 void set_city(struct city *pcity);
425
426private:
427 struct city *pcity;
428 int type;
429
430protected:
432};
433
434/****************************************************************************
435 City dialog
436****************************************************************************/
437class city_dialog: public qfc_dialog
438{
440
444
453 QWidget *top_widget;
463 QWidget *info_widget;
466 QLabel *cma_result;
468 QLabel *supp_units;
469 QLabel *curr_units;
470 QLabel *curr_impr;
472 QTableWidget *p_table_p;
473 QTableWidget *nationality_table;
474 QTableWidget *cma_table;
482 QPushButton *button;
483 QPushButton *buy_button;
484 QPushButton *cma_enable_but;
485 QPushButton *next_city_but;
486 QPushButton *prev_city_but;
487 QPushButton *work_next_but;
488 QPushButton *work_prev_but;
489 QPushButton *work_add_but;
490 QPushButton *work_rem_but;
491 QPushButton *happiness_button;
492 QPushButton *counterss_button;
493 QPushButton *zoom_in_button;
494 QPushButton *zoom_out_button;
499 QPushButton *lcity_name;
502
503public:
504 city_dialog(QWidget *parent = nullptr);
505 ~city_dialog();
506 void setup_ui(struct city *qcity);
507 void refresh();
508 struct city *dlgcity;
510 float zoom;
511
512private:
514 void update_title();
516 void update_building();
517 void update_info_label();
518 void update_buy_button();
519 void update_citizens();
520 void update_improvements();
521 void update_units();
522 void update_nation_table();
523 void update_cma_tab();
524 void update_disabled();
525 void update_sliders();
526 void update_prod_buttons();
527 void update_tabs();
528 void change_production(bool next);
529
530private slots:
531 void next_city();
532 void prev_city();
533 void production_changed(int index);
534 void show_targets();
536 void show_happiness();
537 void show_counters();
538 void buy();
540 void item_selected(const QItemSelection &sl, const QItemSelection &ds);
541 void clear_worklist();
542 void save_worklist();
543 void worklist_up();
544 void worklist_down();
545 void worklist_del();
546 void display_worklist_menu(const QPoint &p);
548 void cma_slider(int val);
549 void cma_toggle_changed(Qt::CheckState state);
550 void cma_toggle_changed_depr(int state);
551 void cma_remove();
552 void cma_enable();
553 void cma_changed();
554 void cma_selected(const QItemSelection &sl, const QItemSelection &ds);
555 void cma_double_clicked(int row, int column);
556 void cma_context_menu(const QPoint &p);
557 void save_cma();
558 void city_rename();
559 void zoom_in();
560 void zoom_out();
561protected:
565 bool eventFilter(QObject *obj, QEvent *event);
566};
567
569void city_font_update();
570
571#endif // FC__CITYDLG_H
#define n
Definition astring.c:77
void set_city(struct city *pcity)
Definition citydlg.cpp:1195
struct city * pcity
Definition citydlg.h:427
void mousePressEvent(QMouseEvent *event)
Definition citydlg.cpp:1171
int wdth
Definition citydlg.h:288
int cutted_height
Definition citydlg.h:291
QSize sizeHint() const
Definition citydlg.cpp:1294
void paintEvent(QPaintEvent *event)
Definition citydlg.cpp:1234
void mousePressEvent(QMouseEvent *event)
Definition citydlg.cpp:1310
int height
Definition citydlg.h:289
void set_pixmap(struct city *pcity, float z)
Definition citydlg.cpp:1258
void context_menu(QPoint point)
Definition citydlg.cpp:1332
canvas * miniview
Definition citydlg.h:275
struct city * mcity
Definition citydlg.h:285
QSize minimumSizeHint() const
Definition citydlg.cpp:1302
float zoom
Definition citydlg.h:287
QPixmap zoomed_pixmap
Definition citydlg.h:276
int cutted_width
Definition citydlg.h:290
int radius
Definition citydlg.h:286
canvas * view
Definition citydlg.h:274
int delta_y
Definition citydlg.h:293
int delta_x
Definition citydlg.h:292
void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
Definition citydlg.cpp:4177
QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const
Definition citydlg.cpp:4333
struct city * pcity
Definition citydlg.h:319
void drawFocus(QPainter *painter, const QStyleOptionViewItem &option, const QRect &rect) const
Definition citydlg.cpp:4316
int rowCount(const QModelIndex &index=QModelIndex()) const
Definition citydlg.h:357
QList< production_item * > city_target_list
Definition citydlg.h:373
bool setData(const QModelIndex &index, const QVariant &value, int role=Qt::DisplayRole)
Definition citydlg.cpp:4503
int columnCount(const QModelIndex &parent=QModelIndex()) const
Definition citydlg.h:361
QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const
Definition citydlg.cpp:4408
struct city * mcity
Definition citydlg.h:374
fc_tooltip(QObject *parent=nullptr)
Definition citydlg.h:101
bool eventFilter(QObject *obj, QEvent *event)
Definition citydlg.cpp:3943
void update_buildings()
Definition citydlg.cpp:555
QHBoxLayout * layout
Definition citydlg.h:261
void add_item(impr_item *item)
Definition citydlg.cpp:503
void wheelEvent(QWheelEvent *event)
Definition citydlg.cpp:536
void clear_layout()
Definition citydlg.cpp:511
void init_layout()
Definition citydlg.cpp:482
QList< impr_item * > impr_list
Definition citydlg.h:262
void mouseDoubleClickEvent(QMouseEvent *event)
Definition citydlg.cpp:607
void init_pix()
Definition citydlg.cpp:406
void enterEvent(QEnterEvent *event)
Definition citydlg.cpp:416
struct canvas * impr_pixmap
Definition citydlg.h:233
struct city * dlgcity
Definition citydlg.h:234
const struct impr_type * impr
Definition citydlg.h:232
void leaveEvent(QEvent *event)
Definition citydlg.cpp:446
void wheelEvent(QWheelEvent *event)
Definition citydlg.cpp:587
struct universal * target
Definition citydlg.h:343
QVariant data() const
Definition citydlg.cpp:4367
int columnCount() const
Definition citydlg.h:336
bool eventFilter(QObject *obj, QEvent *ev)
Definition citydlg.cpp:4613
void prod_selected(const QItemSelection &sl, const QItemSelection &ds)
Definition citydlg.cpp:4638
void mousePressEvent(QMouseEvent *event)
Definition citydlg.cpp:4600
city_production_model * list_model
Definition citydlg.h:388
struct city * pw_city
Definition citydlg.h:405
fc_tooltip * fc_tt
Definition citydlg.h:410
city_production_delegate * c_p_d
Definition citydlg.h:389
void paintEvent(QPaintEvent *event)
Definition citydlg.cpp:188
int m_animate_step
Definition citydlg.h:133
void resizeEvent(QResizeEvent *event)
Definition citydlg.cpp:106
QRegion reg
Definition citydlg.h:135
void set_pixmap(struct universal *target)
Definition citydlg.cpp:114
void create_region()
Definition citydlg.cpp:326
QElapsedTimer m_timer
Definition citydlg.h:114
void mousePressEvent(QMouseEvent *event)
Definition citydlg.h:121
void timerEvent(QTimerEvent *event)
Definition citydlg.cpp:176
QPixmap * pix
Definition citydlg.h:134
QFont * sfont
Definition citydlg.h:136
void clicked()
void wheelEvent(QWheelEvent *event)
Definition citydlg.cpp:1077
void init_layout()
Definition citydlg.cpp:1065
void add_item(unit_item *item)
Definition citydlg.cpp:1057
QHBoxLayout * layout
Definition citydlg.h:209
void update_units()
Definition citydlg.cpp:1096
void clear_layout()
Definition citydlg.cpp:1137
QList< unit_item * > unit_list
Definition citydlg.h:210
bool supports
Definition citydlg.h:213
QAction * activate
Definition citydlg.h:147
QAction * disband_action
Definition citydlg.h:145
void enterEvent(QEnterEvent *event)
Definition citydlg.cpp:966
void contextMenuEvent(QContextMenuEvent *ev)
Definition citydlg.cpp:738
QAction * sentry
Definition citydlg.h:149
struct unit * qunit
Definition citydlg.h:164
QAction * activate_and_close
Definition citydlg.h:148
void mousePressEvent(QMouseEvent *event)
Definition citydlg.cpp:1015
int happy_cost
Definition citydlg.h:168
void change_homecity()
Definition citydlg.cpp:924
QAction * unload
Definition citydlg.h:152
QAction * upgrade
Definition citydlg.h:153
bool supported
Definition citydlg.h:169
void fortify_unit()
Definition citydlg.cpp:955
void sentry_unit()
Definition citydlg.cpp:1028
QAction * unload_trans
Definition citydlg.h:154
void load_unit()
Definition citydlg.cpp:888
void wheelEvent(QWheelEvent *event)
Definition citydlg.cpp:995
QAction * load
Definition citydlg.h:151
void activate_unit()
Definition citydlg.cpp:945
QMenu * unit_menu
Definition citydlg.h:155
QAction * change_home
Definition citydlg.h:146
QAction * fortify
Definition citydlg.h:150
QImage unit_img
Definition citydlg.h:165
void create_actions()
Definition citydlg.cpp:792
void unload_all()
Definition citydlg.cpp:904
void disband()
Definition citydlg.cpp:870
void upgrade_unit()
Definition citydlg.cpp:912
void init_pix()
Definition citydlg.cpp:722
void leaveEvent(QEvent *event)
Definition citydlg.cpp:987
void unload_unit()
Definition citydlg.cpp:896
void activate_and_close_dialog()
Definition citydlg.cpp:934
char * incite_cost
Definition comments.c:76
struct unit struct city struct unit struct tile struct extra_type const struct act_prob *act_probs int actor_unit_id struct unit struct unit * punit
Definition dialogs_g.h:74
struct unit struct city struct unit struct tile struct extra_type const struct act_prob *act_probs int actor_unit_id struct unit struct unit int const struct action *paction struct unit struct city * pcity
Definition dialogs_g.h:78
enum event_type event
Definition events.c:81
@ O_LAST
Definition fc_types.h:101
@ NUM_INFO_FIELDS
Definition citydlg.c:123
QString get_tooltip_improvement(const impr_type *building, struct city *pcity=nullptr, bool ext=false)
Definition citydlg.cpp:3997
QString get_tooltip_unit(const struct unit_type *utype, bool ext=false)
Definition citydlg.cpp:4056
void city_font_update()
Definition citydlg.cpp:3886
QString get_tooltip(QVariant qvar)
Definition citydlg.cpp:4126
void destroy_city_dialog()
Definition citydlg.cpp:3839
struct player_slot * slots
Definition player.c:51
void setup_ui(struct city *qcity)
Definition citydlg.cpp:3263
int current_building
Definition citydlg.h:513
void worklist_up()
Definition citydlg.cpp:3694
city_label * citizens_label
Definition citydlg.h:456
QGroupBox * info_labels_group
Definition citydlg.h:459
QPushButton * lcity_name
Definition citydlg.h:499
void show_happiness()
Definition citydlg.cpp:2124
void closeEvent(QCloseEvent *event)
Definition citydlg.cpp:2321
void show_counters()
Definition citydlg.cpp:2159
QWidget * info_widget
Definition citydlg.h:463
void update_nation_table()
Definition citydlg.cpp:3065
void hideEvent(QHideEvent *event)
Definition citydlg.cpp:2293
void cma_toggle_changed_depr(int state)
Definition citydlg.cpp:2704
QPushButton * work_next_but
Definition citydlg.h:487
void next_city()
Definition citydlg.cpp:3373
progress_bar * production_combo_p
Definition citydlg.h:471
QTableWidget * nationality_table
Definition citydlg.h:473
QRadioButton * r3
Definition citydlg.h:481
QTableWidget * cma_table
Definition citydlg.h:474
void showEvent(QShowEvent *event)
Definition citydlg.cpp:2304
QPushButton * happiness_button
Definition citydlg.h:491
void cma_double_clicked(int row, int column)
Definition citydlg.cpp:2497
void display_worklist_menu(const QPoint &p)
Definition citydlg.cpp:2781
void update_disabled()
Definition citydlg.cpp:2194
QLabel * supp_units
Definition citydlg.h:468
QPushButton * next_city_but
Definition citydlg.h:485
QLabel * qlt[NUM_INFO_FIELDS]
Definition citydlg.h:464
QPushButton * work_prev_but
Definition citydlg.h:488
unit_info * supported_units
Definition citydlg.h:497
QHBoxLayout * single_page_layout
Definition citydlg.h:445
void update_buy_button()
Definition citydlg.cpp:2881
int selected_row_p
Definition citydlg.h:500
QHBoxLayout * leftbot_layout
Definition citydlg.h:451
void update_building()
Definition citydlg.cpp:3445
QPushButton * zoom_in_button
Definition citydlg.h:493
void save_worklist()
Definition citydlg.cpp:3760
void worklist_del()
Definition citydlg.cpp:3719
QGridLayout * info_grid_layout
Definition citydlg.h:458
void clear_worklist()
Definition citydlg.cpp:3679
QPushButton * counterss_button
Definition citydlg.h:492
impr_info * city_buildings
Definition citydlg.h:498
QLabel * curr_impr
Definition citydlg.h:470
city_label * lab_table[6]
Definition citydlg.h:457
int scroll_height
Definition citydlg.h:509
QLabel * curr_units
Definition citydlg.h:469
unit_info * current_units
Definition citydlg.h:496
void zoom_out()
Definition citydlg.cpp:2412
void zoom_in()
Definition citydlg.cpp:2399
QPushButton * zoom_out_button
Definition citydlg.h:494
struct city_dialog::@148 happiness
void update_info_label()
Definition citydlg.cpp:3142
QPushButton * work_add_but
Definition citydlg.h:489
QSplitter * central_left_splitter
Definition citydlg.h:449
void disband_state_changed(bool allow_disband)
Definition citydlg.cpp:2740
void update_citizens()
Definition citydlg.cpp:2907
QRadioButton * r1
Definition citydlg.h:481
void cma_slider(int val)
Definition citydlg.cpp:2715
city_map * view
Definition citydlg.h:455
QCheckBox * cma_celeb_checkbox
Definition citydlg.h:475
QCheckBox * show_units
Definition citydlg.h:478
enum city_dialog::city_dialog_tab current_tab
void worklist_down()
Definition citydlg.cpp:3736
void update_title()
Definition citydlg.cpp:3791
QLabel * cma_info_text
Definition citydlg.h:465
void dbl_click_p(QTableWidgetItem *item)
Definition citydlg.cpp:3279
QPushButton * cma_enable_but
Definition citydlg.h:484
QLabel * cma_result
Definition citydlg.h:466
void cma_remove()
Definition citydlg.cpp:2665
QSlider * slider_tab[2 *O_LAST+2]
Definition citydlg.h:501
QPushButton * button
Definition citydlg.h:482
bool eventFilter(QObject *obj, QEvent *event)
Definition citydlg.cpp:2332
QSplitter * prod_unit_splitter
Definition citydlg.h:448
QVBoxLayout * left_layout
Definition citydlg.h:454
void prev_city()
Definition citydlg.cpp:3409
void city_rename()
Definition citydlg.cpp:2369
void refresh()
Definition citydlg.cpp:2991
void update_cma_tab()
Definition citydlg.cpp:2598
QPushButton * work_rem_but
Definition citydlg.h:490
float zoom
Definition citydlg.h:510
QSplitter * central_splitter
Definition citydlg.h:450
QWidget * prod_happ_widget
Definition citydlg.h:452
void show_targets()
Definition citydlg.cpp:3648
void cma_toggle_changed(Qt::CheckState state)
Definition citydlg.cpp:2692
QVBoxLayout * counterss_layout
Definition citydlg.h:447
QFrame * counterss_frame
Definition citydlg.h:462
QWidget * top_widget
Definition citydlg.h:453
void update_tabs()
Definition citydlg.cpp:2103
QPushButton * prev_city_but
Definition citydlg.h:486
void cma_enable()
Definition citydlg.cpp:2461
QLabel * cma_result_pix
Definition citydlg.h:467
struct city * dlgcity
Definition citydlg.h:508
void update_counters_table()
Definition citydlg.cpp:3023
void update_sliders()
Definition citydlg.cpp:2546
void update_improvements()
Definition citydlg.cpp:3513
QHBoxLayout * happiness_layout
Definition citydlg.h:446
QCheckBox * future_targets
Definition citydlg.h:477
void change_production(bool next)
Definition citydlg.cpp:2058
void cma_selected(const QItemSelection &sl, const QItemSelection &ds)
Definition citydlg.cpp:2516
QCheckBox * cma_max_growth
Definition citydlg.h:476
void item_selected(const QItemSelection &sl, const QItemSelection &ds)
Definition citydlg.cpp:3355
void show_targets_worklist()
Definition citydlg.cpp:3664
QCheckBox * show_wonders
Definition citydlg.h:480
void cma_context_menu(const QPoint &p)
Definition citydlg.cpp:2761
void cma_changed()
Definition citydlg.cpp:2476
QPushButton * buy_button
Definition citydlg.h:483
QRadioButton * r4
Definition citydlg.h:481
struct city_dialog::@149 counters
void update_units()
Definition citydlg.cpp:3296
QRadioButton * r2
Definition citydlg.h:481
QTableWidget * p_table_p
Definition citydlg.h:472
void save_cma()
Definition citydlg.cpp:2425
QPixmap * citizen_pixmap
Definition citydlg.h:495
void production_changed(int index)
Definition citydlg.cpp:3630
void update_prod_buttons()
Definition citydlg.cpp:2231
QWidget * happiness_widget
Definition citydlg.h:461
QGroupBox * happiness_group
Definition citydlg.h:460
QCheckBox * show_buildings
Definition citydlg.h:479
Definition city.h:317
Definition climisc.h:82
Definition unit.h:140