Freeciv-3.1
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 <QTableView>
26#include <QtMath>
27#include <QVariant>
28
29// common
30#include "unittype.h"
31
32// client
33#include "canvas.h"
34
35// gui-qt
36#include "fonts.h"
37#include "dialogs.h"
38
39class QCheckBox;
40class QComboBox;
41class QGridLayout;
42class QGroupBox;
43class QHBoxLayout;
44class QPushButton;
45class QRadioButton;
46class QSplitter;
47class QTableWidget;
48class QVBoxLayout;
49
50#define SPECENUM_NAME city_info
51
52#define SPECENUM_VALUE0 INFO_CITIZEN
53#define SPECENUM_VALUE0NAME N_("Size:")
54#define SPECENUM_VALUE1 INFO_FOOD
55#define SPECENUM_VALUE1NAME N_("Food:")
56#define SPECENUM_VALUE2 INFO_SHIELD
57#define SPECENUM_VALUE2NAME N_("Prod:")
58#define SPECENUM_VALUE3 INFO_TRADE
59#define SPECENUM_VALUE3NAME N_("Trade:")
60#define SPECENUM_VALUE4 INFO_GOLD
61#define SPECENUM_VALUE4NAME N_("Gold:")
62#define SPECENUM_VALUE5 INFO_LUXURY
63#define SPECENUM_VALUE5NAME N_("Luxury:")
64#define SPECENUM_VALUE6 INFO_SCIENCE
65#define SPECENUM_VALUE6NAME N_("Science:")
66#define SPECENUM_VALUE7 INFO_GRANARY
67#define SPECENUM_VALUE7NAME N_("Granary:")
68#define SPECENUM_VALUE8 INFO_GROWTH
69#define SPECENUM_VALUE8NAME N_("Change in:")
70#define SPECENUM_VALUE9 INFO_CORRUPTION
71#define SPECENUM_VALUE9NAME N_("Corruption:")
72#define SPECENUM_VALUE10 INFO_WASTE
73#define SPECENUM_VALUE10NAME N_("Waste:")
74#define SPECENUM_VALUE11 INFO_CULTURE
75#define SPECENUM_VALUE11NAME N_("Culture:")
76#define SPECENUM_VALUE12 INFO_POLLUTION
77#define SPECENUM_VALUE12NAME N_("Pollution:")
78#define SPECENUM_VALUE13 INFO_ILLNESS
79#define SPECENUM_VALUE13NAME N_("Plague risk:")
80#define SPECENUM_VALUE14 INFO_STEAL
81#define SPECENUM_VALUE14NAME N_("Tech Stolen:")
82#define SPECENUM_VALUE15 INFO_AIRLIFT
83#define SPECENUM_VALUE15NAME N_("Airlift:")
84
85#define SPECENUM_COUNT NUM_INFO_FIELDS /* number of city_info panel enumerated fields */
86#include "specenum_gen.h"
87
88class QImage;
89
90QString get_tooltip(QVariant qvar);
91QString get_tooltip_improvement(const impr_type *building,
92 struct city *pcity = nullptr,
93 bool ext = false);
94QString get_tooltip_unit(const struct unit_type *utype, bool ext = false);
95
96class fc_tooltip : public QObject
97{
98 Q_OBJECT
99public:
100 explicit fc_tooltip(QObject *parent = NULL): QObject(parent) {}
101
102protected:
103 bool eventFilter(QObject *obj, QEvent *event);
104};
105
106
107/****************************************************************************
108 Custom progressbar with animated progress and right click event
109****************************************************************************/
110class progress_bar: public QProgressBar
111{
112 Q_OBJECT
113 QElapsedTimer m_timer;
114signals:
115 void clicked();
116
117public:
118 progress_bar(QWidget *parent);
120 void mousePressEvent(QMouseEvent *event) {
121 emit clicked();
122 }
123 void set_pixmap(struct universal *target);
124 void set_pixmap(int n);
125
126protected:
127 void paintEvent(QPaintEvent *event);
128 void timerEvent(QTimerEvent *event);
129 void resizeEvent(QResizeEvent *event);
130private:
131 void create_region();
133 QPixmap *pix;
134 QRegion reg;
135 QFont *sfont;
136};
137
138/****************************************************************************
139 Single item on unit_info in city dialog representing one unit
140****************************************************************************/
141class unit_item: public QLabel
142{
143 Q_OBJECT
145 QAction *change_home;
146 QAction *activate;
148 QAction *sentry;
149 QAction *fortify;
150 QAction *load;
151 QAction *unload;
152 QAction *upgrade;
153 QAction *unload_trans;
154 QMenu *unit_menu;
155
156public:
157 unit_item(QWidget *parent, struct unit *punit, bool supp = false,
158 int happy_cost = 0);
159 ~unit_item();
160 void init_pix();
161
162private:
163 struct unit *qunit;
164 QImage unit_img;
165 void contextMenuEvent(QContextMenuEvent *ev);
166 void create_actions();
169
170private slots:
171 void disband();
172 void change_homecity();
173 void activate_unit();
175 void sentry_unit();
176 void fortify_unit();
177 void upgrade_unit();
178 void load_unit();
179 void unload_unit();
180 void unload_all();
181
182protected:
183 void wheelEvent(QWheelEvent *event);
184 void mousePressEvent(QMouseEvent *event);
185 void leaveEvent(QEvent *event);
186#ifndef FC_QT5_MODE
187 void enterEvent(QEnterEvent *event);
188#else // FC_QT5_MODE
189 void enterEvent(QEvent *event);
190#endif // FC_QT5_MODE
191};
192
193/****************************************************************************
194 Shows list of units ( as labels - unit_info )
195****************************************************************************/
196class unit_info: public QFrame
197{
198
199 Q_OBJECT
200
201public:
202 unit_info(bool supp);
203 ~unit_info();
204 void add_item(unit_item *item);
205 void init_layout();
206 void update_units();
207 void clear_layout();
208 QHBoxLayout *layout;
209 QList<unit_item *> unit_list;
210
211private:
213protected:
214 void wheelEvent(QWheelEvent *event);
215};
216
217
218/****************************************************************************
219 Single item on unit_info in city dialog representing one unit
220****************************************************************************/
221class impr_item: public QLabel
222{
223 Q_OBJECT
224
225public:
226 impr_item(QWidget *parent, const struct impr_type *building, struct city *pcity);
227 ~impr_item();
228 void init_pix();
229
230private:
231 const struct impr_type *impr;
233 struct city *dlgcity;
234
235protected:
236 void wheelEvent(QWheelEvent *event);
237 void mouseDoubleClickEvent(QMouseEvent *event);
238 void leaveEvent(QEvent *event);
239#ifndef FC_QT5_MODE
240 void enterEvent(QEnterEvent *event);
241#else // FC_QT5_MODE
242 void enterEvent(QEvent *event);
243#endif // FC_QT5_MODE
244};
245
246
247/****************************************************************************
248 Shows list of improvements
249****************************************************************************/
250class impr_info: public QFrame
251{
252 Q_OBJECT
253public:
254 impr_info(QWidget *parent);
255 ~impr_info();
256 void add_item(impr_item *item);
257 void init_layout();
258 void update_buildings();
259 void clear_layout();
260 QHBoxLayout *layout;
261 QList<impr_item *> impr_list;
262protected:
263 void wheelEvent(QWheelEvent *event);
264};
265
266/****************************************************************************
267 Class used for showing tiles and workers view in city dialog
268****************************************************************************/
269class city_map: public QWidget
270{
271
272 Q_OBJECT
276
277public:
278 city_map(QWidget *parent);
279 ~city_map();
280 void set_pixmap(struct city *pcity, float z);
281private:
282 void mousePressEvent(QMouseEvent *event);
283 void paintEvent(QPaintEvent *event);
284 struct city *mcity;
286 float zoom;
287 int wdth;
293protected:
294 QSize sizeHint() const;
295 QSize minimumSizeHint() const;
296private slots:
297 void context_menu(QPoint point);
298};
299
300/****************************************************************************
301 Item delegate for production popup
302****************************************************************************/
303class city_production_delegate: public QItemDelegate
304{
305 Q_OBJECT
306
307public:
308 city_production_delegate(QPoint sh, QObject *parent, struct city *city);
310 void paint(QPainter *painter, const QStyleOptionViewItem &option,
311 const QModelIndex &index) const;
312 QSize sizeHint(const QStyleOptionViewItem &option,
313 const QModelIndex &index) const;
314
315private:
317 QPoint pd;
318 struct city *pcity;
319
320protected:
321 void drawFocus(QPainter *painter, const QStyleOptionViewItem &option,
322 const QRect &rect) const;
323};
324
325/****************************************************************************
326 Single item in production popup
327****************************************************************************/
328class production_item: public QObject
329{
330 Q_OBJECT
331
332public:
333 production_item(struct universal *ptarget, QObject *parent);
335 inline int columnCount() const {
336 return 1;
337 }
338 QVariant data() const;
339 bool setData();
340
341private:
343};
344
345/***************************************************************************
346 City production model
347***************************************************************************/
348class city_production_model : public QAbstractListModel
349{
350 Q_OBJECT
351
352public:
353 city_production_model(struct city *pcity, bool f, bool su, bool sw, bool sb,
354 QObject *parent = 0);
356 inline int rowCount(const QModelIndex &index = QModelIndex()) const {
357 Q_UNUSED(index);
358 return (qCeil(static_cast<float>(city_target_list.size()) / 3));
359 }
360 int columnCount(const QModelIndex &parent = QModelIndex()) const {
361 Q_UNUSED(parent);
362 return 3;
363 }
364 QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
365 bool setData(const QModelIndex &index, const QVariant &value,
366 int role = Qt::DisplayRole);
367 QPoint size_hint();
368 void populate();
369 QPoint sh;
370
371private:
372 QList<production_item *> city_target_list;
373 struct city *mcity;
378};
379
380/****************************************************************************
381 Class for popup available production
382****************************************************************************/
383class production_widget: public QTableView
384{
385 Q_OBJECT
386
389
390public:
391 production_widget(QWidget *parent, struct city *pcity, bool future,
392 int when, int curr, bool show_units, bool buy = false,
393 bool show_wonders = true, bool show_buildings = true);
395
396public slots:
397 void prod_selected(const QItemSelection &sl, const QItemSelection &ds);
398
399protected:
400 void mousePressEvent(QMouseEvent *event);
401 bool eventFilter(QObject *obj, QEvent *ev);
402
403private:
404 struct city *pw_city;
408 bool buy_it;
410};
411
412
413/****************************************************************************
414 city_label is used only for showing citizens icons
415 and was created to catch mouse events
416****************************************************************************/
417class city_label: public QLabel
418{
419 Q_OBJECT
420
421public:
422 city_label(int type, QWidget *parent = 0);
423 void set_city(struct city *pcity);
424
425private:
426 struct city *pcity;
427 int type;
428
429protected:
430 void mousePressEvent(QMouseEvent *event);
431};
432
433/****************************************************************************
434 City dialog
435****************************************************************************/
436class city_dialog: public qfc_dialog
437{
438 Q_OBJECT
439
441 QHBoxLayout *single_page_layout;
442 QHBoxLayout *happiness_layout;
446 QHBoxLayout *leftbot_layout;
448 QWidget *top_widget;
449 QVBoxLayout *left_layout;
453 QGridLayout *info_grid_layout;
455 QGroupBox *happiness_group;
457 QWidget *info_widget;
460 QLabel *cma_result;
462 QLabel *supp_units;
463 QLabel *curr_units;
464 QLabel *curr_impr;
466 QTableWidget *p_table_p;
467 QTableWidget *nationality_table;
468 QTableWidget *cma_table;
470 QCheckBox *cma_max_growth;
471 QCheckBox *future_targets;
472 QCheckBox *show_units;
473 QCheckBox *show_buildings;
474 QCheckBox *show_wonders;
475 QRadioButton *r1, *r2, *r3, *r4;
476 QPushButton *button;
477 QPushButton *buy_button;
478 QPushButton *cma_enable_but;
479 QPushButton *next_city_but;
480 QPushButton *prev_city_but;
481 QPushButton *work_next_but;
482 QPushButton *work_prev_but;
483 QPushButton *work_add_but;
484 QPushButton *work_rem_but;
485 QPushButton *happiness_button;
486 QPushButton *zoom_in_button;
487 QPushButton *zoom_out_button;
492 QPushButton *lcity_name;
494 QSlider *slider_tab[2 * O_LAST + 2];
495
496public:
497 city_dialog(QWidget *parent = 0);
498 ~city_dialog();
499 void setup_ui(struct city *qcity);
500 void refresh();
501 struct city *dlgcity;
503 float zoom;
504
505private:
507 void update_title();
508 void update_building();
509 void update_info_label();
510 void update_buy_button();
511 void update_citizens();
512 void update_improvements();
513 void update_units();
514 void update_nation_table();
515 void update_cma_tab();
516 void update_disabled();
517 void update_sliders();
518 void update_prod_buttons();
520 void change_production(bool next);
521
522private slots:
523 void next_city();
524 void prev_city();
525 void production_changed(int index);
526 void show_targets();
528 void show_happiness();
529 void buy();
530 void dbl_click_p(QTableWidgetItem *item);
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);
538 void disband_state_changed(bool allow_disband);
539 void cma_slider(int val);
540 void cma_toggle_changed(int val);
541 void cma_remove();
542 void cma_enable();
543 void cma_changed();
544 void cma_selected(const QItemSelection &sl, const QItemSelection &ds);
545 void cma_double_clicked(int row, int column);
546 void cma_context_menu(const QPoint &p);
547 void save_cma();
548 void city_rename();
549 void zoom_in();
550 void zoom_out();
551protected:
552 void showEvent(QShowEvent *event);
553 void hideEvent(QHideEvent *event);
554 void closeEvent(QCloseEvent *event);
555 bool eventFilter(QObject *obj, QEvent *event);
556};
557
559void city_font_update();
560
561#endif /* FC__CITYDLG_H */
#define n
Definition astring.c:77
void set_city(struct city *pcity)
Definition citydlg.cpp:1218
struct city * pcity
Definition citydlg.h:426
void mousePressEvent(QMouseEvent *event)
Definition citydlg.cpp:1194
int wdth
Definition citydlg.h:287
int cutted_height
Definition citydlg.h:290
QSize sizeHint() const
Definition citydlg.cpp:1317
void paintEvent(QPaintEvent *event)
Definition citydlg.cpp:1257
void mousePressEvent(QMouseEvent *event)
Definition citydlg.cpp:1333
int height
Definition citydlg.h:288
void set_pixmap(struct city *pcity, float z)
Definition citydlg.cpp:1281
void context_menu(QPoint point)
Definition citydlg.cpp:1355
canvas * miniview
Definition citydlg.h:274
struct city * mcity
Definition citydlg.h:284
QSize minimumSizeHint() const
Definition citydlg.cpp:1325
float zoom
Definition citydlg.h:286
QPixmap zoomed_pixmap
Definition citydlg.h:275
int cutted_width
Definition citydlg.h:289
int radius
Definition citydlg.h:285
canvas * view
Definition citydlg.h:273
int delta_y
Definition citydlg.h:292
int delta_x
Definition citydlg.h:291
void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
Definition citydlg.cpp:4070
QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const
Definition citydlg.cpp:4225
struct city * pcity
Definition citydlg.h:318
void drawFocus(QPainter *painter, const QStyleOptionViewItem &option, const QRect &rect) const
Definition citydlg.cpp:4208
int rowCount(const QModelIndex &index=QModelIndex()) const
Definition citydlg.h:356
QList< production_item * > city_target_list
Definition citydlg.h:372
bool setData(const QModelIndex &index, const QVariant &value, int role=Qt::DisplayRole)
Definition citydlg.cpp:4394
int columnCount(const QModelIndex &parent=QModelIndex()) const
Definition citydlg.h:360
QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const
Definition citydlg.cpp:4300
struct city * mcity
Definition citydlg.h:373
fc_tooltip(QObject *parent=NULL)
Definition citydlg.h:100
bool eventFilter(QObject *obj, QEvent *event)
Definition citydlg.cpp:3840
void update_buildings()
Definition citydlg.cpp:560
QHBoxLayout * layout
Definition citydlg.h:260
void add_item(impr_item *item)
Definition citydlg.cpp:502
void wheelEvent(QWheelEvent *event)
Definition citydlg.cpp:535
void clear_layout()
Definition citydlg.cpp:510
void init_layout()
Definition citydlg.cpp:481
QList< impr_item * > impr_list
Definition citydlg.h:261
void mouseDoubleClickEvent(QMouseEvent *event)
Definition citydlg.cpp:618
void init_pix()
Definition citydlg.cpp:405
void enterEvent(QEnterEvent *event)
Definition citydlg.cpp:415
struct canvas * impr_pixmap
Definition citydlg.h:232
struct city * dlgcity
Definition citydlg.h:233
const struct impr_type * impr
Definition citydlg.h:231
void leaveEvent(QEvent *event)
Definition citydlg.cpp:445
void wheelEvent(QWheelEvent *event)
Definition citydlg.cpp:592
struct universal * target
Definition citydlg.h:342
QVariant data() const
Definition citydlg.cpp:4259
int columnCount() const
Definition citydlg.h:335
bool eventFilter(QObject *obj, QEvent *ev)
Definition citydlg.cpp:4504
void prod_selected(const QItemSelection &sl, const QItemSelection &ds)
Definition citydlg.cpp:4529
void mousePressEvent(QMouseEvent *event)
Definition citydlg.cpp:4491
city_production_model * list_model
Definition citydlg.h:387
struct city * pw_city
Definition citydlg.h:404
fc_tooltip * fc_tt
Definition citydlg.h:409
city_production_delegate * c_p_d
Definition citydlg.h:388
void paintEvent(QPaintEvent *event)
Definition citydlg.cpp:187
int m_animate_step
Definition citydlg.h:132
void resizeEvent(QResizeEvent *event)
Definition citydlg.cpp:105
QRegion reg
Definition citydlg.h:134
void set_pixmap(struct universal *target)
Definition citydlg.cpp:113
void create_region()
Definition citydlg.cpp:325
QElapsedTimer m_timer
Definition citydlg.h:113
void mousePressEvent(QMouseEvent *event)
Definition citydlg.h:120
void timerEvent(QTimerEvent *event)
Definition citydlg.cpp:175
QPixmap * pix
Definition citydlg.h:133
QFont * sfont
Definition citydlg.h:135
void clicked()
void wheelEvent(QWheelEvent *event)
Definition citydlg.cpp:1094
void init_layout()
Definition citydlg.cpp:1082
void add_item(unit_item *item)
Definition citydlg.cpp:1074
QHBoxLayout * layout
Definition citydlg.h:208
void update_units()
Definition citydlg.cpp:1119
void clear_layout()
Definition citydlg.cpp:1160
QList< unit_item * > unit_list
Definition citydlg.h:209
bool supports
Definition citydlg.h:212
QAction * activate
Definition citydlg.h:146
QAction * disband_action
Definition citydlg.h:144
void enterEvent(QEnterEvent *event)
Definition citydlg.cpp:977
void contextMenuEvent(QContextMenuEvent *ev)
Definition citydlg.cpp:749
QAction * sentry
Definition citydlg.h:148
struct unit * qunit
Definition citydlg.h:163
QAction * activate_and_close
Definition citydlg.h:147
void mousePressEvent(QMouseEvent *event)
Definition citydlg.cpp:1032
int happy_cost
Definition citydlg.h:167
void change_homecity()
Definition citydlg.cpp:935
QAction * unload
Definition citydlg.h:151
QAction * upgrade
Definition citydlg.h:152
bool supported
Definition citydlg.h:168
void fortify_unit()
Definition citydlg.cpp:966
void sentry_unit()
Definition citydlg.cpp:1045
QAction * unload_trans
Definition citydlg.h:153
void load_unit()
Definition citydlg.cpp:899
void wheelEvent(QWheelEvent *event)
Definition citydlg.cpp:1006
QAction * load
Definition citydlg.h:150
void activate_unit()
Definition citydlg.cpp:956
QMenu * unit_menu
Definition citydlg.h:154
QAction * change_home
Definition citydlg.h:145
QAction * fortify
Definition citydlg.h:149
QImage unit_img
Definition citydlg.h:164
void create_actions()
Definition citydlg.cpp:803
void unload_all()
Definition citydlg.cpp:915
void disband()
Definition citydlg.cpp:881
void upgrade_unit()
Definition citydlg.cpp:923
void init_pix()
Definition citydlg.cpp:733
void leaveEvent(QEvent *event)
Definition citydlg.cpp:998
void unload_unit()
Definition citydlg.cpp:907
void activate_and_close_dialog()
Definition citydlg.cpp:945
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:73
enum event_type event
Definition events.c:81
@ O_LAST
Definition fc_types.h:91
@ NUM_INFO_FIELDS
Definition citydlg.c:122
QString get_tooltip_improvement(const impr_type *building, struct city *pcity=nullptr, bool ext=false)
Definition citydlg.cpp:3894
QString get_tooltip_unit(const struct unit_type *utype, bool ext=false)
Definition citydlg.cpp:3951
void city_font_update()
Definition citydlg.cpp:3783
QString get_tooltip(QVariant qvar)
Definition citydlg.cpp:4020
void destroy_city_dialog()
Definition citydlg.cpp:3736
struct player_slot * slots
Definition player.c:50
void setup_ui(struct city *qcity)
Definition citydlg.cpp:3164
int current_building
Definition citydlg.h:506
void worklist_up()
Definition citydlg.cpp:3591
city_label * citizens_label
Definition citydlg.h:451
QGroupBox * info_labels_group
Definition citydlg.h:454
QPushButton * lcity_name
Definition citydlg.h:492
void show_happiness()
Definition citydlg.cpp:2129
void closeEvent(QCloseEvent *event)
Definition citydlg.cpp:2277
QWidget * info_widget
Definition citydlg.h:457
void update_nation_table()
Definition citydlg.cpp:2966
void hideEvent(QHideEvent *event)
Definition citydlg.cpp:2249
QPushButton * work_next_but
Definition citydlg.h:481
void next_city()
Definition citydlg.cpp:3273
progress_bar * production_combo_p
Definition citydlg.h:465
QTableWidget * nationality_table
Definition citydlg.h:467
QRadioButton * r3
Definition citydlg.h:475
QTableWidget * cma_table
Definition citydlg.h:468
void showEvent(QShowEvent *event)
Definition citydlg.cpp:2260
QPushButton * happiness_button
Definition citydlg.h:485
void cma_double_clicked(int row, int column)
Definition citydlg.cpp:2453
void display_worklist_menu(const QPoint &p)
Definition citydlg.cpp:2725
void update_disabled()
Definition citydlg.cpp:2158
QLabel * supp_units
Definition citydlg.h:462
QPushButton * next_city_but
Definition citydlg.h:479
QLabel * qlt[NUM_INFO_FIELDS]
Definition citydlg.h:458
QPushButton * work_prev_but
Definition citydlg.h:482
unit_info * supported_units
Definition citydlg.h:490
QHBoxLayout * single_page_layout
Definition citydlg.h:441
void update_buy_button()
Definition citydlg.cpp:2825
int selected_row_p
Definition citydlg.h:493
QHBoxLayout * leftbot_layout
Definition citydlg.h:446
void update_building()
Definition citydlg.cpp:3343
QPushButton * zoom_in_button
Definition citydlg.h:486
void save_worklist()
Definition citydlg.cpp:3657
void worklist_del()
Definition citydlg.cpp:3616
QGridLayout * info_grid_layout
Definition citydlg.h:453
void clear_worklist()
Definition citydlg.cpp:3576
bool happiness_shown
Definition citydlg.h:440
impr_info * city_buildings
Definition citydlg.h:491
QLabel * curr_impr
Definition citydlg.h:464
city_label * lab_table[6]
Definition citydlg.h:452
int scroll_height
Definition citydlg.h:502
QLabel * curr_units
Definition citydlg.h:463
unit_info * current_units
Definition citydlg.h:489
void zoom_out()
Definition citydlg.cpp:2368
void zoom_in()
Definition citydlg.cpp:2355
QPushButton * zoom_out_button
Definition citydlg.h:487
void update_info_label()
Definition citydlg.cpp:3043
QPushButton * work_add_but
Definition citydlg.h:483
QSplitter * central_left_splitter
Definition citydlg.h:444
void disband_state_changed(bool allow_disband)
Definition citydlg.cpp:2684
void update_citizens()
Definition citydlg.cpp:2850
QRadioButton * r1
Definition citydlg.h:475
void cma_slider(int val)
Definition citydlg.cpp:2659
city_map * view
Definition citydlg.h:450
QCheckBox * cma_celeb_checkbox
Definition citydlg.h:469
QCheckBox * show_units
Definition citydlg.h:472
void worklist_down()
Definition citydlg.cpp:3633
void update_title()
Definition citydlg.cpp:3688
QLabel * cma_info_text
Definition citydlg.h:459
void dbl_click_p(QTableWidgetItem *item)
Definition citydlg.cpp:3180
QPushButton * cma_enable_but
Definition citydlg.h:478
QLabel * cma_result
Definition citydlg.h:460
void cma_remove()
Definition citydlg.cpp:2621
QSlider * slider_tab[2 *O_LAST+2]
Definition citydlg.h:494
QPushButton * button
Definition citydlg.h:476
bool eventFilter(QObject *obj, QEvent *event)
Definition citydlg.cpp:2288
QSplitter * prod_unit_splitter
Definition citydlg.h:443
QVBoxLayout * left_layout
Definition citydlg.h:449
void prev_city()
Definition citydlg.cpp:3308
void city_rename()
Definition citydlg.cpp:2325
void refresh()
Definition citydlg.cpp:2934
void update_cma_tab()
Definition citydlg.cpp:2554
QPushButton * work_rem_but
Definition citydlg.h:484
float zoom
Definition citydlg.h:503
QSplitter * central_splitter
Definition citydlg.h:445
QWidget * prod_happ_widget
Definition citydlg.h:447
void cma_toggle_changed(int val)
Definition citydlg.cpp:2648
void show_targets()
Definition citydlg.cpp:3545
QPushButton * buy_button
Definition citydlg.h:477
QWidget * top_widget
Definition citydlg.h:448
void update_happiness_button()
Definition citydlg.cpp:2117
QPushButton * prev_city_but
Definition citydlg.h:480
void cma_enable()
Definition citydlg.cpp:2417
QLabel * cma_result_pix
Definition citydlg.h:461
struct city * dlgcity
Definition citydlg.h:501
void update_sliders()
Definition citydlg.cpp:2502
void update_improvements()
Definition citydlg.cpp:3411
QHBoxLayout * happiness_layout
Definition citydlg.h:442
QCheckBox * future_targets
Definition citydlg.h:471
void change_production(bool next)
Definition citydlg.cpp:2072
void cma_selected(const QItemSelection &sl, const QItemSelection &ds)
Definition citydlg.cpp:2472
QCheckBox * cma_max_growth
Definition citydlg.h:470
void item_selected(const QItemSelection &sl, const QItemSelection &ds)
Definition citydlg.cpp:3255
void show_targets_worklist()
Definition citydlg.cpp:3561
QCheckBox * show_wonders
Definition citydlg.h:474
void cma_context_menu(const QPoint &p)
Definition citydlg.cpp:2705
void cma_changed()
Definition citydlg.cpp:2432
QRadioButton * r4
Definition citydlg.h:475
void update_units()
Definition citydlg.cpp:3197
QRadioButton * r2
Definition citydlg.h:475
QTableWidget * p_table_p
Definition citydlg.h:466
void save_cma()
Definition citydlg.cpp:2381
QPixmap * citizen_pixmap
Definition citydlg.h:488
void production_changed(int index)
Definition citydlg.cpp:3527
void update_prod_buttons()
Definition citydlg.cpp:2196
QWidget * happiness_widget
Definition citydlg.h:456
QGroupBox * happiness_group
Definition citydlg.h:455
QCheckBox * show_buildings
Definition citydlg.h:473
Definition city.h:309
Definition climisc.h:82
Definition unit.h:138