DELTA
SVN   ;;;/**********************************************************************
 Freeciv - Copyright (C) 1996 - A Kjeldberg, L Gregersen, P Unold
   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 2, or (at your option)
   any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.
***********************************************************************/

#ifndef FC__FONTS_H
#define FC__FONTS_H

// gui-qt
#include "listener.h"

// client
#include "canvas_g.h" // client_font

// Qt
#include <QFont>
#include <QMap>
#include <QObject>

class QWidget;

/***************************************************************************
  The list of font names supported by the font classes. Keep it in sync with
  the options in client/options.c
***************************************************************************/
namespace fonts
{
  const char * const city_label       = "gui_qt_font_city_label";
  const char * const default_font     = "gui_qt_font_default";
  const char * const notify_label     = "gui_qt_font_notify_label";
  const char * const spaceship_label  = "gui_qt_font_spaceship_label";
  const char * const help_label       = "gui_qt_font_help_label";
  const char * const help_link        = "gui_qt_font_help_link";
  const char * const help_text        = "gui_qt_font_help_text";
  const char * const help_title       = "gui_qt_font_help_title";
  const char * const chatline         = "gui_qt_font_chatline";
  const char * const beta_label       = "gui_qt_font_beta_label";
  const char * const small            = "gui_qt_font_small";
  const char * const comment_label    = "gui_qt_font_comment_label";
  const char * const city_names       = "gui_qt_font_city_names";
  const char * const city_productions = "gui_qt_font_city_productions";
  const char * const reqtree_text     = "gui_qt_font_reqtree_text";
}

/***************************************************************************
  Handles font configuration. Font names are those defined in the fonts
  namespace.
***************************************************************************/
class font_options_listener : public listener<font_options_listener>
{
  static QMap<QString, QFont> font_map;
  static void init_font_map();

public:
  static void set_font(const QString &name, const QFont &value);
  static QFont get_font(client_font font);

  explicit font_options_listener();

  virtual void update_font(const QString &name, const QFont &font);

  QFont get_font(const QString &name) const;
};

/***************************************************************************
  Automatically updates the font of a widget whenever it changes. All you
  need to do is creating a font_updater:

  ~~~~~{.cpp}
  new font_updater(the_widget, the_font_name);
  ~~~~~

  You don't need to care about deleting this object.
***************************************************************************/
class font_updater : public QObject, private font_options_listener
{
  Q_OBJECT

  QString font_name;
  QWidget *widget;

public:
  explicit font_updater(QWidget *widget, const QString &font_name);

  virtual void update_font(const QString &name, const QFont &font);
};

#endif // FC__FONTS_H
ENDREP
DELTA 33718 335495 55
SVN  ~* {  }r jfonts.cpp	onts.cpp	\
	fonts.h	ENDREP
DELTA 33718 335193 273
SVN  ]|7 k  Π]2 ΅Gάfontsfont;
  QFont *f;
  QFont *remove_old;
  QString s;

  s = option_font_get(poption);
  font.fromString(s);
  s = option_name(poption);
  font_options_listener::set_font(s, font);ENDREP
DELTA
SVN   vvv/**********************************************************************
 Freeciv - Copyright (C) 1996 - A Kjeldberg, L Gregersen, P Unold
   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 2, or (at your option)
   any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.
***********************************************************************/

#include "fonts.h"

// client
#include "options.h"

// Qt
#include <QWidget>

FC_CPP_DECLARE_LISTENER(font_options_listener)

QMap<QString, QFont> font_options_listener::font_map =
    QMap<QString, QFont>();

/***************************************************************************
  Constructor
***************************************************************************/
font_options_listener::font_options_listener()
{
  if (font_map.empty()) {
    init_font_map();
  }
}

/***************************************************************************
  Initializes the font map
***************************************************************************/
void font_options_listener::init_font_map()
{
  QFont font;
  QString s;

  options_iterate(client_optset, poption) {
    if (option_type(poption) == OT_FONT) {
      s = option_font_get(poption);
      font.fromString(s);
      s = option_name(poption);
      font_map[s] = font;
    }
  } options_iterate_end;
}

/***************************************************************************
  Called whenever a font changes. Default implementation does nothing.
***************************************************************************/
void font_options_listener::update_font(const QString &name,
                                        const QFont &font)
{}

/***************************************************************************
  Returns the font with the given name.
***************************************************************************/
QFont font_options_listener::get_font(const QString &name) const
{
  return font_map[name];
}

/***************************************************************************
  Returns the appropriate QFont for the given client_font
***************************************************************************/
QFont font_options_listener::get_font(client_font font)
{
  switch (font) {
  case FONT_CITY_NAME:
    return font_map[fonts::city_names];
  case FONT_CITY_PROD:
    return font_map[fonts::city_productions];
  case FONT_REQTREE_TEXT:
    return font_map[fonts::reqtree_text];
  case FONT_COUNT:
    break;
    // Will trigger a warning if not all cases are covered
  }
  // Reasonable default
  return font_map[fonts::default_font];
}

/***************************************************************************
  Sets the font with the given name. The configuration is *not* updated.
***************************************************************************/
void font_options_listener::set_font(const QString &name,
                                     const QFont &font)
{
  font_map[name] = font;
  invoke(&font_options_listener::update_font, name, font);
}

/***************************************************************************
  Constructor.
***************************************************************************/
font_updater::font_updater(QWidget *widget, const QString &font_name) :
  QObject(widget),
  font_name(font_name),
  widget(widget)
{
  widget->setFont(get_font(font_name));
}

/***************************************************************************
  Updates the widget's font.
***************************************************************************/
void font_updater::update_font(const QString &name, const QFont &font)
{
  if (name == font_name) {
    widget->setFont(font);
  }
  font_options_listener::listen();
}
ENDREP
id: 6if.5qi.r33732/7986
type: file
pred: 6if.5qi.r33718/613530
count: 30
text: 33732 3542 57 1962 1e49327240c06400bcb2e7788fc847ea
cpath: /branches/S2_6/client/gui-qt/Makefile.am
copyroot: 27474 /branches/S2_6

id: 2p2t.5qi.r33732/8197
type: file
count: 0
text: 33732 3873 4100 4086 00b947bf697b5af13f7bc25ebd877401
cpath: /branches/S2_6/client/gui-qt/fonts.cpp
copyroot: 27474 /branches/S2_6

id: 2p2v.5qi.r33732/8380
type: file
count: 0
text: 33732 0 3529 3515 f381ce517323147848a84c4c02fec23f
cpath: /branches/S2_6/client/gui-qt/fonts.h
copyroot: 27474 /branches/S2_6

id: 6j1.5qi.r33732/8558
type: file
pred: 6j1.5qi.r33718/615096
count: 50
text: 33732 3628 215 18812 1cfa4ae49a964127f2cc69226a62b406
props: 26905 81965 34 0 25e6c2f7558b7484000d4d090dea5b92
cpath: /branches/S2_6/client/gui-qt/gui_main.cpp
copyroot: 27474 /branches/S2_6

PLAIN
K 11
Makefile.am
V 24
file 6if.5qi.r33732/7986
K 10
canvas.cpp
V 22
file 6ig.5qi.r33491/60
K 8
canvas.h
V 25
file 6ih.5ck.r26905/85299
K 12
chatline.cpp
V 24
file 6ii.5qi.r33711/4902
K 10
chatline.h
V 24
file 6ij.5qi.r33711/5171
K 11
citydlg.cpp
V 24
file 6ik.5qi.r33188/5264
K 9
citydlg.h
V 24
file gr2.5qi.r33188/5532
K 11
cityrep.cpp
V 26
file 6il.5qi.r33718/613743
K 9
cityrep.h
V 25
file 6im.5qi.r32722/66570
K 10
colors.cpp
V 25
file 6in.5qi.r31094/24431
K 8
colors.h
V 25
file 6io.5ck.r26905/93658
K 14
connectdlg.cpp
V 24
file 6ip.5qi.r30746/1816
K 12
connectdlg.h
V 25
file 6iq.5ck.r26905/81414
K 11
dialogs.cpp
V 23
file 6ir.5qi.r33500/205
K 9
dialogs.h
V 23
file 6is.5qi.r31325/551
K 12
diplodlg.cpp
V 26
file 6it.5qi.r33718/614016
K 10
diplodlg.h
V 26
file 6iu.5qi.r33718/614283
K 13
fc_client.cpp
V 23
file 6lc.5qi.r33722/386
K 11
fc_client.h
V 23
file 6ld.5qi.r33722/653
K 11
finddlg.cpp
V 25
file 6iv.5ck.r26905/79622
K 9
finddlg.h
V 25
file 6iw.5ck.r26905/95148
K 9
fonts.cpp
V 25
file 2p2t.5qi.r33732/8197
K 7
fonts.h
V 25
file 2p2v.5qi.r33732/8380
K 11
gotodlg.cpp
V 26
file 6ix.5qi.r32527/190909
K 9
gotodlg.h
V 25
file 6iy.5ck.r26905/82913
K 12
graphics.cpp
V 24
file 6iz.5ck.r27004/7519
K 10
graphics.h
V 25
file 6j0.5ck.r26905/93360
K 12
gui_main.cpp
V 24
file 6j1.5qi.r33732/8558
K 10
gui_main.h
V 24
file oxo.5qi.r30282/6108
K 11
helpdlg.cpp
V 24
file 6j2.5qi.r33700/7835
K 9
helpdlg.h
V 24
file 6j3.5qi.r33700/8099
K 12
inteldlg.cpp
V 25
file 6j4.5ck.r26905/88586
K 10
inteldlg.h
V 25
file 6j5.5ck.r26905/94253
K 10
listener.h
V 26
file 2o8f.5qi.r33698/63166
K 14
luaconsole.cpp
V 25
file 76c.5ck.r26905/82614
K 12
luaconsole.h
V 25
file 76d.5ck.r26905/89778
K 11
mapctrl.cpp
V 26
file 6j6.5qi.r33718/615370
K 9
mapctrl.h
V 25
file 6j7.5ck.r26905/94551
K 11
mapview.cpp
V 26
file 6j8.5qi.r33718/615640
K 9
mapview.h
V 26
file 6j9.5qi.r33718/615911
K 8
menu.cpp
V 24
file 6ja.5qi.r33729/4364
K 6
menu.h
V 24
file 6jb.5qi.r33729/4627
K 14
messagedlg.cpp
V 26
file 6jc.5qi.r33718/616181
K 12
messagedlg.h
V 25
file 6jd.5ck.r26905/81118
K 14
messagewin.cpp
V 26
file 6je.5qi.r33718/616454
K 12
messagewin.h
V 25
file 6jf.5qi.r33254/19446
K 13
optiondlg.cpp
V 25
file 6jg.5qi.r33299/24104
K 11
optiondlg.h
V 24
file 6jh.5qi.r30992/5764
K 9
pages.cpp
V 23
file 6ji.5qi.r33722/918
K 7
pages.h
V 25
file 6jj.5ck.r26905/88888
K 10
plrdlg.cpp
V 26
file 6jk.5qi.r33718/616995
K 8
plrdlg.h
V 25
file 6jl.5qi.r31758/25147
K 15
qtg_cxxside.cpp
V 25
file 6jo.5qi.r32488/45046
K 13
qtg_cxxside.h
V 25
file 6jp.5qi.r33530/57602
K 12
ratesdlg.cpp
V 24
file 6jq.5qi.r33729/4885
K 10
ratesdlg.h
V 24
file 6jr.5qi.r33729/5155
K 12
repodlgs.cpp
V 22
file 6js.5qi.r33730/78
K 10
repodlgs.h
V 23
file 6jt.5qi.r31255/922
K 11
sidebar.cpp
V 27
file 2ows.5qi.r33718/617541
K 9
sidebar.h
V 27
file 2owu.5qi.r33718/617731
K 16
spaceshipdlg.cpp
V 26
file 6ju.5qi.r33718/617918
K 14
spaceshipdlg.h
V 25
file 6jv.5ck.r27443/15080
K 10
sprite.cpp
V 25
file 6jw.5ck.r26905/79322
K 8
sprite.h
V 25
file 6jx.5ck.r26905/84707
K 10
themes.cpp
V 24
file 6jy.5qi.r33285/2046
K 16
voteinfo_bar.cpp
V 25
file 6jz.5ck.r26905/95445
K 14
voteinfo_bar.h
V 24
file 6k0.5ck.r27391/9245
K 9
wldlg.cpp
V 25
file 6k1.5ck.r26905/84106
K 7
wldlg.h
V 25
file 6k2.5ck.r26905/80524
END
ENDREP
id: 6ie.5qi.r33732/12097
type: dir
pred: 6ie.5qi.r33730/3527
count: 524
text: 33732 8829 3255 0 c4befaf1355fbe2932f0d67d17805861
props: 28037 7697 380 0 ea9aeae72ef70d80276d9f2e0c9ac191
cpath: /branches/S2_6/client/gui-qt
copyroot: 27474 /branches/S2_6

PLAIN
K 11
Makefile.am
V 22
file 5f.5qi.r31934/776
K 6
agents
V 23
dir zf.5qi.r32601/94733
K 11
attribute.c
V 24
file xh.5ck.r25151/59391
K 11
attribute.h
V 24
file xi.5ck.r18863/23649
K 7
audio.c
V 24
file 139.5qi.r33331/2762
K 7
audio.h
V 25
file 13a.5qi.r31664/81545
K 12
audio_none.c
V 25
file 13d.5ck.r24916/15731
K 12
audio_none.h
V 25
file 13e.5ck.r18863/20841
K 11
audio_sdl.c
V 23
file 13f.5qi.r31870/943
K 11
audio_sdl.h
V 25
file 13g.5ck.r18863/23885
K 17
chatline_common.c
V 23
file 14q.5qi.r31578/629
K 17
chatline_common.h
V 23
file 14r.5qi.r31578/895
K 16
citydlg_common.c
V 24
file z4.5qi.r32722/54377
K 16
citydlg_common.h
V 24
file z5.5qi.r32722/54646
K 13
cityrepdata.c
V 22
file mb.5qi.r33313/312
K 13
cityrepdata.h
V 24
file mc.5ck.r18863/19121
K 13
client_main.c
V 23
file 2f.5rc.r33654/4629
K 13
client_main.h
V 23
file hz.5sl.r33654/4905
K 8
climap.c
V 24
file 197.5ck.r20232/3008
K 8
climap.h
V 25
file 198.5qi.r30222/65356
K 9
climisc.c
V 23
file d5.5qi.r33252/8434
K 9
climisc.h
V 24
file i0.5qi.r32759/10343
K 8
clinet.c
V 23
file hc.5qi.r33479/1971
K 8
clinet.h
V 24
file i1.5ck.r18863/24866
K 15
colors_common.c
V 24
file 33a.5qi.r31150/4089
K 15
colors_common.h
V 24
file 33b.5qi.r31851/8115
K 19
connectdlg_common.c
V 24
file 2fw.5qi.r33259/1194
K 19
connectdlg_common.h
V 22
file 2fx.5qi.r31710/95
K 9
control.c
V 22
file gz.5qi.r33558/950
K 9
control.h
V 24
file i2.5qi.r33545/15478
K 7
dummy.c
V 26
file 4f9.5ck.r26905/141682
K 12
dummycxx.cpp
V 26
file 6kr.5ck.r26905/106211
K 8
editor.c
V 25
file 3bg.5qi.r32639/19170
K 8
editor.h
V 23
file 3bh.5qi.r32375/915
K 17
global_worklist.c
V 25
file 4i6.5qi.r32722/55434
K 17
global_worklist.h
V 26
file 4i7.5ck.r26905/126022
K 6
goto.c
V 24
file vu.5qi.r33545/15736
K 6
goto.h
V 22
file vv.5qi.r31299/756
K 11
gui-gtk-2.0
V 22
dir zs.5qi.r33654/9519
K 11
gui-gtk-3.0
V 22
dir zs.5qq.r33705/4520
K 6
gui-qt
V 24
dir 6ie.5qi.r33732/12097
K 7
gui-sdl
V 24
dir 16t.5qi.r33654/23106
K 8
gui-sdl2
V 24
dir 16t.5r1.r33654/28469
K 8
gui-stub
V 23
dir mh.5qi.r33654/31723
K 7
gui-xaw
V 23
dir 9o.5qi.r33654/35572
K 14
gui_cbsetter.c
V 25
file a3c.5qi.r32488/67727
K 14
gui_cbsetter.h
V 25
file a3d.5qi.r32488/67993
K 15
gui_interface.c
V 25
file 6jm.5u7.r33530/78916
K 15
gui_interface.h
V 25
file 6jn.5u6.r33530/79196
K 10
helpdata.c
V 24
file h1.5qi.r32927/49503
K 10
helpdata.h
V 22
file i3.5qi.r30005/963
K 7
include
V 23
dir b8.5qi.r33530/81357
K 19
luaconsole_common.c
V 26
file 75z.5ck.r26905/100821
K 19
luaconsole_common.h
V 26
file 760.5ck.r26905/106500
K 9
luascript
V 24
dir 761.5qi.r29744/13350
K 16
mapctrl_common.c
V 22
file 15m.5qi.r33550/81
K 16
mapctrl_common.h
V 24
file 15n.5qi.r32344/1056
K 16
mapview_common.c
V 24
file z2.5qi.r33545/20109
K 16
mapview_common.h
V 21
file z3.5qi.r32428/66
K 19
messagewin_common.c
V 25
file 14s.5qi.r30211/72878
K 19
messagewin_common.h
V 25
file 14t.5ck.r18863/21579
K 7
music.c
V 25
file zmc.5qi.r30211/73150
K 7
music.h
V 25
file zme.5ck.r27127/11513
K 9
options.c
V 25
file dc.5qi.r33718/621646
K 9
options.h
V 25
file i4.5qi.r33718/621905
K 17
overview_common.c
V 24
file 2yk.5qi.r32990/1986
K 17
overview_common.h
V 24
file 2yl.5qi.r29834/4937
K 10
packhand.c
V 23
file n.5qi.r33252/41471
K 10
packhand.h
V 24
file i5.5ck.r18863/20596
K 15
plrdlg_common.c
V 24
file 14u.5qi.r28834/2098
K 15
plrdlg_common.h
V 25
file 14v.5ck.r18863/21328
K 17
repodlgs_common.c
V 26
file 11i.5qi.r30061/217644
K 17
repodlgs_common.h
V 25
file 11j.5ck.r19589/11861
K 9
reqtree.c
V 25
file 2ym.5qi.r32939/25831
K 9
reqtree.h
V 24
file 2yn.5ck.r24150/6004
K 9
servers.c
V 25
file 33x.5qi.r33530/81611
K 9
servers.h
V 25
file 33y.5ck.r20478/36372
K 6
text.c
V 26
file 2g3.5qi.r32527/218161
K 6
text.h
V 24
file 2g4.5qi.r32344/1318
K 15
themes_common.c
V 25
file 352.5qi.r31664/82856
K 15
themes_common.h
V 25
file 353.5qi.r31664/83120
K 10
tilespec.c
V 23
file hl.5qi.r33517/1030
K 10
tilespec.h
V 22
file i6.5qi.r33317/886
K 19
unitselect_common.c
V 26
file 76v.5qi.r30061/218439
K 19
unitselect_common.h
V 26
file 76w.5ck.r26905/117548
K 14
update_queue.c
V 25
file 4jw.5qi.r33576/87490
K 14
update_queue.h
V 25
file 4jx.5qi.r33576/87759
K 10
voteinfo.c
V 25
file 4fe.5qi.r30211/74980
K 10
voteinfo.h
V 26
file 4ff.5ck.r26905/142263
K 6
zoom.c
V 24
file 212g.5qi.r33336/200
K 6
zoom.h
V 25
file 212i.5qi.r30914/1880
END
ENDREP
id: d.5qi.r33732/16692
type: dir
pred: d.5qi.r33730/8119
count: 7208
text: 33732 12351 4328 0 7c87fe480278061f5d0c9b59f8c1deed
props: 28037 12634 400 0 bbe1d6769a94f3af2a54f7dc91fc9c71
cpath: /branches/S2_6/client
copyroot: 27474 /branches/S2_6

PLAIN
K 9
ABOUT-NLS
V 24
file fu.5ck.r27270/69307
K 7
AUTHORS
V 24
file 5u.5ck.r22143/14016
K 7
COPYING
V 22
file 1h.5qi.r29455/952
K 9
ChangeLog
V 26
file 6l.5qi.r31298/7507168
K 7
INSTALL
V 22
file 6.5qi.r31740/1317
K 11
Makefile.am
V 22
file 59.5qi.r31920/516
K 4
NEWS
V 24
file 6m.5ck.r25634/30702
K 6
README
V 20
file 7.0.r4421/96382
K 2
ai
V 21
dir 8.5qi.r33541/8913
K 10
autogen.sh
V 22
file 12o.5qi.r32636/46
K 9
bootstrap
V 23
dir 2p5.5qi.r32590/4079
K 6
client
V 22
dir d.5qi.r33732/16692
K 6
common
V 21
dir p.5qi.r33693/9275
K 12
configure.ac
V 22
file 149.5qi.r33531/88
K 4
data
V 23
dir w.5qi.r33718/636164
K 12
dependencies
V 23
dir 2yu.5qi.r33405/2646
K 3
doc
V 22
dir k7.5qi.r33688/2874
K 10
fc_version
V 23
file 2lo.5qj.r33596/116
K 11
gen_headers
V 23
dir 1hsw.5qi.r32276/968
K 3
lua
V 24
dir 2c5p.5qi.r31920/4972
K 2
m4
V 23
dir 12p.5qi.r33428/3831
K 7
scripts
V 23
dir 2yo.5qi.r31853/1104
K 6
server
V 22
dir z.5qi.r33669/10511
K 5
tests
V 22
dir 2g9.5qi.r32362/652
K 5
tools
V 23
dir 4pj.5qp.r33713/2538
K 12
translations
V 23
dir t0a.5qi.r33697/7487
K 7
utility
V 22
dir 1c.5qi.r33594/3510
K 3
vms
V 25
dir u9.5ck.r21528/1396085
K 5
win32
V 23
dir 2eu.5qi.r33717/2181
END
ENDREP
id: 3.5qi.r33732/18140
type: dir
pred: 3.5qi.r33730/9565
count: 21023
text: 33732 16938 1189 0 13061547d19026d3b7b9e86d8db66b07
props: 28037 14463 292 0 9e1d5de0253c723466868990c52c129f
cpath: /branches/S2_6
copyroot: 27474 /branches/S2_6

PLAIN
K 5
S1_14
V 21
dir 3.21.r18109/18803
K 4
S2_0
V 21
dir 3.10x.r21862/4178
K 4
S2_1
V 22
dir 3.59e.r20026/11014
K 4
S2_2
V 21
dir 3.5cy.r21861/5036
K 4
S2_3
V 21
dir 3.5f2.r29458/5135
K 4
S2_4
V 23
dir 3.5ii.r32693/294508
K 4
S2_5
V 22
dir 3.5kv.r33727/25229
K 6
S2_5_3
V 23
dir 3.5ut.r31805/553797
K 4
S2_6
V 22
dir 3.5qi.r33732/18140
K 11
freeciv-web
V 22
dir 3.5bl.r13594/14918
END
ENDREP
id: 1.0.r33732/18776
type: dir
pred: 1.0.r33730/10199
count: 11696
text: 33732 18380 383 0 932874ed7448a37290ccff0aa09945a6
cpath: /branches
copyroot: 0 /

PLAIN
K 8
branches
V 20
dir 1.0.r33732/18776
K 4
tags
V 19
dir 2.0.r33382/6667
K 5
trunk
V 21
dir 3.5ck.r33731/9455
K 7
website
V 21
dir 3ge.0.r33387/2571
END
ENDREP
id: 0.0.r33732/19098
type: dir
pred: 0.0.r33731/9844
count: 33732
text: 33732 18932 153 0 7d04434387144499e6cb624c0eb69835
cpath: /
copyroot: 0 /

6if.5qi.t33731-1 modify true false /branches/S2_6/client/gui-qt/Makefile.am

_4.5qi.t33731-1 add true false /branches/S2_6/client/gui-qt/fonts.cpp

_6.5qi.t33731-1 add true false /branches/S2_6/client/gui-qt/fonts.h

6j1.5qi.t33731-1 modify true false /branches/S2_6/client/gui-qt/gui_main.cpp


19098 19245
