Add options to control the behaviour of spreads in two-pages mode
[qcomicbook-oblomov] / src / cbconfigdialog.h
1 /*
2  * This file is a part of QComicBook.
3  *
4  * Copyright (C) 2005-2006 Pawel Stolowski <yogin@linux.bydg.org>
5  *
6  * QComicBook is free software; you can redestribute it and/or modify it
7  * under terms of GNU General Public License by Free Software Foundation.
8  *
9  * This program is distributed in the hope that it will be useful, but
10  * WITHOUT ANY WARRANTY. See GPL for more details.
11  */
12
13 #ifndef __CBCONFIGDIALOG_H
14 #define __CBCONFIGDIALOG_H
15
16 #include <qtabdialog.h>
17
18 class QCheckBox;
19 class QPushButton;
20 class QRadioButton;
21 class QSpinBox;
22 class QLabel;
23 class QLineEdit;
24
25 namespace QComicBook
26 {
27         class ComicBookSettings;
28         class ComicBookCfgDialog: public QTabDialog
29         {
30                 Q_OBJECT
31
32                 private:
33                         ComicBookSettings *cfg;
34                         QCheckBox *cb_twopagesstep;
35                         QCheckBox *cb_twopagesspread;
36                         QCheckBox *cb_twopagesskip;
37                         QCheckBox *cb_smallcursor;
38                         QCheckBox *cb_hidemenu;
39                         QCheckBox *cb_hidestatus;
40                         QCheckBox *cb_hidetoolbar;
41                         QPushButton *pb_color;
42                         QCheckBox *cb_preload;
43                         QCheckBox *cb_confirmexit;
44                         QCheckBox *cb_splash;
45                         QCheckBox *cb_autoinfo;
46                         QSpinBox *sb_cachesize;
47                         QCheckBox *cb_thumbs;
48                         QSpinBox *sb_thumbsage;
49                         QSpinBox *sb_stripmax;
50                         QColor bgcolor;
51                         QSpinBox *sb_fontsize;
52                         QCheckBox *cb_intbrowser;
53                         QLineEdit *le_extbrowser;
54                         QPushButton *pb_brbrowse;
55                         QLabel *fontname;
56                         QFont font;
57                         QCheckBox *cb_editing;
58
59                         void setupDisplayTab();
60                         void setupMiscTab();
61                         void setupEditTab();
62                         void updateFontPreview();
63
64                 protected slots:
65                         void apply();
66                         void cancel();
67                         void showBackgroundDialog();
68                         void showFontDialog();
69                         void browseExternalBrowser();
70                         void browserCheckboxToggled(bool f);
71
72                 public:
73                         ComicBookCfgDialog(QWidget *parent, ComicBookSettings *cfg);
74                         virtual ~ComicBookCfgDialog();
75         };
76 }
77
78 #endif
79