Freeciv-3.4
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);
188};
189
190/****************************************************************************
191 Shows list of units ( as labels - unit_info )
192****************************************************************************/
193class unit_info: public QFrame
194{
195
197
198public:
199 unit_info(bool supp);
200 ~unit_info();
201 void add_item(unit_item *item);
202 void init_layout();
203 void update_units();
204 void clear_layout();
207
208private:
210protected:
212};
213
214
215/****************************************************************************
216 Single item on unit_info in city dialog representing one unit
217****************************************************************************/
218class impr_item: public QLabel
219{
221
222public:
223 impr_item(QWidget *parent, const struct impr_type *building, struct city *pcity);
224 ~impr_item();
225 void init_pix();
226
227private:
228 const struct impr_type *impr;
230 struct city *dlgcity;
231
232protected:
235 void leaveEvent(QEvent *event);
237};
238
239/****************************************************************************
240 Shows list of improvements
241****************************************************************************/
242class impr_info: public QFrame
243{
245public:
246 impr_info(QWidget *parent);
247 ~impr_info();
248 void add_item(impr_item *item);
249 void init_layout();
250 void update_buildings();
251 void clear_layout();
254protected:
256};
257
258/****************************************************************************
259 Class used for showing tiles and workers view in city dialog
260****************************************************************************/
261class city_map: public QWidget
262{
263
268
269public:
270 city_map(QWidget *parent);
271 ~city_map();
272 void set_pixmap(struct city *pcity, float z);
273private:
276 struct city *mcity;
278 float zoom;
279 int wdth;
285protected:
286 QSize sizeHint() const;
287 QSize minimumSizeHint() const;
288private slots:
289 void context_menu(QPoint point);
290};
291
292/****************************************************************************
293 Item delegate for production popup
294****************************************************************************/
295class city_production_delegate: public QItemDelegate
296{
298
299public:
300 city_production_delegate(QPoint sh, QObject *parent, struct city *city);
303 const QModelIndex &index) const;
305 const QModelIndex &index) const;
306
307private:
310 struct city *pcity;
311
312protected:
314 const QRect &rect) const;
315};
316
317/****************************************************************************
318 Single item in production popup
319****************************************************************************/
320class production_item: public QObject
321{
323
324public:
325 production_item(struct universal *ptarget, QObject *parent);
327 inline int columnCount() const {
328 return 1;
329 }
330 QVariant data() const;
331 bool setData();
332
333private:
335};
336
337/***************************************************************************
338 City production model
339***************************************************************************/
340class city_production_model : public QAbstractListModel
341{
343
344public:
345 city_production_model(struct city *pcity, bool f, bool su, bool sw, bool sb,
346 QObject *parent = nullptr);
348 inline int rowCount(const QModelIndex &index = QModelIndex()) const {
349 Q_UNUSED(index);
350 return (qCeil(static_cast<float>(city_target_list.size()) / 3));
351 }
354 return 3;
355 }
356 QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
357 bool setData(const QModelIndex &index, const QVariant &value,
358 int role = Qt::DisplayRole);
360 void populate();
362
363private:
365 struct city *mcity;
370};
371
372/****************************************************************************
373 Class for popup available production
374****************************************************************************/
375class production_widget: public QTableView
376{
378
381
382public:
383 production_widget(QWidget *parent, struct city *pcity, bool future,
384 int when, int curr, bool show_units, bool buy = false,
385 bool show_wonders = true, bool show_buildings = true);
387
388public slots:
389 void prod_selected(const QItemSelection &sl, const QItemSelection &ds);
390
391protected:
393 bool eventFilter(QObject *obj, QEvent *ev);
394
395private:
396 struct city *pw_city;
400 bool buy_it;
402};
403
404
405/****************************************************************************
406 city_label is used only for showing citizens icons
407 and was created to catch mouse events
408****************************************************************************/
409class city_label: public QLabel
410{
412
413public:
414 city_label(int type, QWidget *parent = nullptr);
415 void set_city(struct city *pcity);
416
417private:
418 struct city *pcity;
419 int type;
420
421protected:
423};
424
425/****************************************************************************
426 City dialog
427****************************************************************************/
428class city_dialog: public qfc_dialog
429{
431
435
444 QWidget *top_widget;
454 QWidget *info_widget;
457 QLabel *cma_result;
459 QLabel *supp_units;
460 QLabel *curr_units;
461 QLabel *curr_impr;
463 QTableWidget *p_table_p;
464 QTableWidget *nationality_table;
465 QTableWidget *cma_table;
473 QPushButton *button;
474 QPushButton *buy_button;
475 QPushButton *cma_enable_but;
476 QPushButton *next_city_but;
477 QPushButton *prev_city_but;
478 QPushButton *work_next_but;
479 QPushButton *work_prev_but;
480 QPushButton *work_add_but;
481 QPushButton *work_rem_but;
482 QPushButton *happiness_button;
483 QPushButton *counterss_button;
484 QPushButton *zoom_in_button;
485 QPushButton *zoom_out_button;
490 QPushButton *lcity_name;
493
494public:
495 city_dialog(QWidget *parent = nullptr);
496 ~city_dialog();
497 void setup_ui(struct city *qcity);
498 void refresh();
499 struct city *dlgcity;
501 float zoom;
502
503private:
505 void update_title();
507 void update_building();
508 void update_info_label();
509 void update_buy_button();
510 void update_citizens();
511 void update_improvements();
512 void update_units();
513 void update_nation_table();
514 void update_cma_tab();
515 void update_disabled();
516 void update_sliders();
517 void update_prod_buttons();
518 void update_tabs();
519 void change_production(bool next);
520
521private slots:
522 void next_city();
523 void prev_city();
524 void production_changed(int index);
525 void show_targets();
527 void show_happiness();
528 void show_counters();
529 void buy();
531 void item_selected(const QItemSelection &sl, const QItemSelection &ds);
532 void clear_worklist();
533 void save_worklist();
534 void worklist_up();
535 void worklist_down();
536 void worklist_del();
537 void display_worklist_menu(const QPoint &p);
539 void cma_slider(int val);
540 void cma_toggle_changed(Qt::CheckState state);
541 void cma_toggle_changed_depr(int state);
542 void cma_remove();
543 void cma_enable();
544 void cma_changed();
545 void cma_selected(const QItemSelection &sl, const QItemSelection &ds);
546 void cma_double_clicked(int row, int column);
547 void cma_context_menu(const QPoint &p);
548 void save_cma();
549 void city_rename();
550 void zoom_in();
551 void zoom_out();
552protected:
556 bool eventFilter(QObject *obj, QEvent *event);
557};
558
560void city_font_update();
561
562#endif // FC__CITYDLG_H
#define n
Definition astring.c:77
void set_city(struct city *pcity)
Definition citydlg.cpp:1187
struct city * pcity
Definition citydlg.h:418
void mousePressEvent(QMouseEvent *event)
Definition citydlg.cpp:1163
int wdth
Definition citydlg.h:279
int cutted_height
Definition citydlg.h:282
QSize sizeHint() const
Definition citydlg.cpp:1286
void paintEvent(QPaintEvent *event)
Definition citydlg.cpp:1226
void mousePressEvent(QMouseEvent *event)
Definition citydlg.cpp:1302
int height
Definition citydlg.h:280
void set_pixmap(struct city *pcity, float z)
Definition citydlg.cpp:1250
void context_menu(QPoint point)
Definition citydlg.cpp:1324
canvas * miniview
Definition citydlg.h:266
struct city * mcity
Definition citydlg.h:276
QSize minimumSizeHint() const
Definition citydlg.cpp:1294
float zoom
Definition citydlg.h:278
QPixmap zoomed_pixmap
Definition citydlg.h:267
int cutted_width
Definition citydlg.h:281
int radius
Definition citydlg.h:277
canvas * view
Definition citydlg.h:265
int delta_y
Definition citydlg.h:284
int delta_x
Definition citydlg.h:283
void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
Definition citydlg.cpp:4183
QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const
Definition citydlg.cpp:4339
struct city * pcity
Definition citydlg.h:310
void drawFocus(QPainter *painter, const QStyleOptionViewItem &option, const QRect &rect) const
Definition citydlg.cpp:4322
int rowCount(const QModelIndex &index=QModelIndex()) const
Definition citydlg.h:348
QList< production_item * > city_target_list
Definition citydlg.h:364
bool setData(const QModelIndex &index, const QVariant &value, int role=Qt::DisplayRole)
Definition citydlg.cpp:4509
int columnCount(const QModelIndex &parent=QModelIndex()) const
Definition citydlg.h:352
QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const
Definition citydlg.cpp:4414
struct city * mcity
Definition citydlg.h:365
fc_tooltip(QObject *parent=nullptr)
Definition citydlg.h:101
bool eventFilter(QObject *obj, QEvent *event)
Definition citydlg.cpp:3949
void update_buildings()
Definition citydlg.cpp:551
QHBoxLayout * layout
Definition citydlg.h:252
void add_item(impr_item *item)
Definition citydlg.cpp:499
void wheelEvent(QWheelEvent *event)
Definition citydlg.cpp:532
void clear_layout()
Definition citydlg.cpp:507
void init_layout()
Definition citydlg.cpp:478
QList< impr_item * > impr_list
Definition citydlg.h:253
void mouseDoubleClickEvent(QMouseEvent *event)
Definition citydlg.cpp:603
void init_pix()
Definition citydlg.cpp:406
void enterEvent(QEnterEvent *event)
Definition citydlg.cpp:415
struct canvas * impr_pixmap
Definition citydlg.h:229
struct city * dlgcity
Definition citydlg.h:230
const struct impr_type * impr
Definition citydlg.h:228
void leaveEvent(QEvent *event)
Definition citydlg.cpp:442
void wheelEvent(QWheelEvent *event)
Definition citydlg.cpp:583
struct universal * target
Definition citydlg.h:334
QVariant data() const
Definition citydlg.cpp:4373
int columnCount() const
Definition citydlg.h:327
bool eventFilter(QObject *obj, QEvent *ev)
Definition citydlg.cpp:4619
void prod_selected(const QItemSelection &sl, const QItemSelection &ds)
Definition citydlg.cpp:4644
void mousePressEvent(QMouseEvent *event)
Definition citydlg.cpp:4606
city_production_model * list_model
Definition citydlg.h:379
struct city * pw_city
Definition citydlg.h:396
fc_tooltip * fc_tt
Definition citydlg.h:401
city_production_delegate * c_p_d
Definition citydlg.h:380
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:1069
void init_layout()
Definition citydlg.cpp:1057
void add_item(unit_item *item)
Definition citydlg.cpp:1049
QHBoxLayout * layout
Definition citydlg.h:205
void update_units()
Definition citydlg.cpp:1088
void clear_layout()
Definition citydlg.cpp:1129
QList< unit_item * > unit_list
Definition citydlg.h:206
bool supports
Definition citydlg.h:209
QAction * activate
Definition citydlg.h:147
QAction * disband_action
Definition citydlg.h:145
void enterEvent(QEnterEvent *event)
Definition citydlg.cpp:961
void contextMenuEvent(QContextMenuEvent *ev)
Definition citydlg.cpp:734
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:1007
int happy_cost
Definition citydlg.h:168
void change_homecity()
Definition citydlg.cpp:920
QAction * unload
Definition citydlg.h:152
QAction * upgrade
Definition citydlg.h:153
bool supported
Definition citydlg.h:169
void fortify_unit()
Definition citydlg.cpp:951
void sentry_unit()
Definition citydlg.cpp:1020
QAction * unload_trans
Definition citydlg.h:154
void load_unit()
Definition citydlg.cpp:884
void wheelEvent(QWheelEvent *event)
Definition citydlg.cpp:987
QAction * load
Definition citydlg.h:151
void activate_unit()
Definition citydlg.cpp:941
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:788
void unload_all()
Definition citydlg.cpp:900
void disband()
Definition citydlg.cpp:866
void upgrade_unit()
Definition citydlg.cpp:908
void init_pix()
Definition citydlg.cpp:718
void leaveEvent(QEvent *event)
Definition citydlg.cpp:979
void unload_unit()
Definition citydlg.cpp:892
void activate_and_close_dialog()
Definition citydlg.cpp:930
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:102
@ 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:4003
QString get_tooltip_unit(const struct unit_type *utype, bool ext=false)
Definition citydlg.cpp:4062
void city_font_update()
Definition citydlg.cpp:3892
QString get_tooltip(QVariant qvar)
Definition citydlg.cpp:4132
void destroy_city_dialog()
Definition citydlg.cpp:3845
struct player_slot * slots
Definition player.c:51
void setup_ui(struct city *qcity)
Definition citydlg.cpp:3269
int current_building
Definition citydlg.h:504
void worklist_up()
Definition citydlg.cpp:3700
city_label * citizens_label
Definition citydlg.h:447
QGroupBox * info_labels_group
Definition citydlg.h:450
QPushButton * lcity_name
Definition citydlg.h:490
void show_happiness()
Definition citydlg.cpp:2118
void closeEvent(QCloseEvent *event)
Definition citydlg.cpp:2315
void show_counters()
Definition citydlg.cpp:2153
QWidget * info_widget
Definition citydlg.h:454
void update_nation_table()
Definition citydlg.cpp:3063
void hideEvent(QHideEvent *event)
Definition citydlg.cpp:2287
void cma_toggle_changed_depr(int state)
Definition citydlg.cpp:2698
QPushButton * work_next_but
Definition citydlg.h:478
void next_city()
Definition citydlg.cpp:3379
progress_bar * production_combo_p
Definition citydlg.h:462
QTableWidget * nationality_table
Definition citydlg.h:464
QRadioButton * r3
Definition citydlg.h:472
QTableWidget * cma_table
Definition citydlg.h:465
void showEvent(QShowEvent *event)
Definition citydlg.cpp:2298
QPushButton * happiness_button
Definition citydlg.h:482
void cma_double_clicked(int row, int column)
Definition citydlg.cpp:2491
void display_worklist_menu(const QPoint &p)
Definition citydlg.cpp:2775
void update_disabled()
Definition citydlg.cpp:2188
QLabel * supp_units
Definition citydlg.h:459
QPushButton * next_city_but
Definition citydlg.h:476
QLabel * qlt[NUM_INFO_FIELDS]
Definition citydlg.h:455
QPushButton * work_prev_but
Definition citydlg.h:479
unit_info * supported_units
Definition citydlg.h:488
QHBoxLayout * single_page_layout
Definition citydlg.h:436
void update_buy_button()
Definition citydlg.cpp:2867
int selected_row_p
Definition citydlg.h:491
QHBoxLayout * leftbot_layout
Definition citydlg.h:442
void update_building()
Definition citydlg.cpp:3451
QPushButton * zoom_in_button
Definition citydlg.h:484
void save_worklist()
Definition citydlg.cpp:3766
void worklist_del()
Definition citydlg.cpp:3725
QGridLayout * info_grid_layout
Definition citydlg.h:449
void clear_worklist()
Definition citydlg.cpp:3685
QPushButton * counterss_button
Definition citydlg.h:483
impr_info * city_buildings
Definition citydlg.h:489
QLabel * curr_impr
Definition citydlg.h:461
city_label * lab_table[6]
Definition citydlg.h:448
int scroll_height
Definition citydlg.h:500
QLabel * curr_units
Definition citydlg.h:460
unit_info * current_units
Definition citydlg.h:487
void zoom_out()
Definition citydlg.cpp:2406
void zoom_in()
Definition citydlg.cpp:2393
QPushButton * zoom_out_button
Definition citydlg.h:485
struct city_dialog::@148 happiness
void update_info_label()
Definition citydlg.cpp:3140
QPushButton * work_add_but
Definition citydlg.h:480
QSplitter * central_left_splitter
Definition citydlg.h:440
void disband_state_changed(bool allow_disband)
Definition citydlg.cpp:2734
void update_citizens()
Definition citydlg.cpp:2893
QRadioButton * r1
Definition citydlg.h:472
void cma_slider(int val)
Definition citydlg.cpp:2709
city_map * view
Definition citydlg.h:446
QCheckBox * cma_celeb_checkbox
Definition citydlg.h:466
QCheckBox * show_units
Definition citydlg.h:469
enum city_dialog::city_dialog_tab current_tab
void worklist_down()
Definition citydlg.cpp:3742
void update_title()
Definition citydlg.cpp:3797
QLabel * cma_info_text
Definition citydlg.h:456
void dbl_click_p(QTableWidgetItem *item)
Definition citydlg.cpp:3285
QPushButton * cma_enable_but
Definition citydlg.h:475
QLabel * cma_result
Definition citydlg.h:457
void cma_remove()
Definition citydlg.cpp:2659
QSlider * slider_tab[2 *O_LAST+2]
Definition citydlg.h:492
QPushButton * button
Definition citydlg.h:473
bool eventFilter(QObject *obj, QEvent *event)
Definition citydlg.cpp:2326
QSplitter * prod_unit_splitter
Definition citydlg.h:439
QVBoxLayout * left_layout
Definition citydlg.h:445
void prev_city()
Definition citydlg.cpp:3415
void city_rename()
Definition citydlg.cpp:2363
void refresh()
Definition citydlg.cpp:2989
void update_cma_tab()
Definition citydlg.cpp:2592
QPushButton * work_rem_but
Definition citydlg.h:481
float zoom
Definition citydlg.h:501
QSplitter * central_splitter
Definition citydlg.h:441
QWidget * prod_happ_widget
Definition citydlg.h:443
void show_targets()
Definition citydlg.cpp:3654
void cma_toggle_changed(Qt::CheckState state)
Definition citydlg.cpp:2686
QVBoxLayout * counterss_layout
Definition citydlg.h:438
QFrame * counterss_frame
Definition citydlg.h:453
QWidget * top_widget
Definition citydlg.h:444
void update_tabs()
Definition citydlg.cpp:2097
QPushButton * prev_city_but
Definition citydlg.h:477
void cma_enable()
Definition citydlg.cpp:2455
QLabel * cma_result_pix
Definition citydlg.h:458
struct city * dlgcity
Definition citydlg.h:499
void update_counters_table()
Definition citydlg.cpp:3021
void update_sliders()
Definition citydlg.cpp:2540
void update_improvements()
Definition citydlg.cpp:3519
QHBoxLayout * happiness_layout
Definition citydlg.h:437
QCheckBox * future_targets
Definition citydlg.h:468
void change_production(bool next)
Definition citydlg.cpp:2052
void cma_selected(const QItemSelection &sl, const QItemSelection &ds)
Definition citydlg.cpp:2510
QCheckBox * cma_max_growth
Definition citydlg.h:467
void item_selected(const QItemSelection &sl, const QItemSelection &ds)
Definition citydlg.cpp:3361
void show_targets_worklist()
Definition citydlg.cpp:3670
QCheckBox * show_wonders
Definition citydlg.h:471
void cma_context_menu(const QPoint &p)
Definition citydlg.cpp:2755
void cma_changed()
Definition citydlg.cpp:2470
QPushButton * buy_button
Definition citydlg.h:474
QRadioButton * r4
Definition citydlg.h:472
struct city_dialog::@149 counters
void update_units()
Definition citydlg.cpp:3302
QRadioButton * r2
Definition citydlg.h:472
QTableWidget * p_table_p
Definition citydlg.h:463
void save_cma()
Definition citydlg.cpp:2419
QPixmap * citizen_pixmap
Definition citydlg.h:486
void production_changed(int index)
Definition citydlg.cpp:3636
void update_prod_buttons()
Definition citydlg.cpp:2225
QWidget * happiness_widget
Definition citydlg.h:452
QGroupBox * happiness_group
Definition citydlg.h:451
QCheckBox * show_buildings
Definition citydlg.h:470
Definition city.h:318
Definition climisc.h:82
Definition unit.h:140