Scribus
Open source desktop publishing at your fingertips
effectsdialog.h
1 /*
2 For general Scribus (>=1.3.2) copyright and licensing information please refer
3 to the COPYING file provided with the program. Following this notice may exist
4 a copyright and/or license notice that predates the release of Scribus 1.3.2
5 for which a new license (GPL+exception) is in place.
6 */
7 #ifndef EFFECTSDIALOG_H
8 #define EFFECTSDIALOG_H
9 
10 #include <QDialog>
11 #include <QMap>
12 #include <QTime>
13 
14 #include "scribusapi.h"
15 #include "scimage.h"
16 
17 class PageItem;
18 class QVBoxLayout;
19 class QHBoxLayout;
20 class QGridLayout;
21 class QLabel;
22 class QPushButton;
23 class QComboBox;
24 class ColorCombo;
25 class ScribusDoc;
26 class ShadeButton;
27 class QStackedWidget;
28 class QWidget;
29 class QSlider;
30 class QMenu;
31 class QWidgetAction;
32 class QToolButton;
33 class QListWidgetItem;
34 class QListWidget;
35 class ScrSpinBox;
36 class CurveWidget;
37 
38 class SCRIBUS_API EffectsDialog : public QDialog
39 {
40  Q_OBJECT
41 
42 public:
43  EffectsDialog( QWidget* parent, PageItem* item, ScribusDoc* docc );
44  ~EffectsDialog() {};
45  void selectEffectHelper(bool final = false);
46  void setItemSelectable(QListWidget* widget, int itemNr, bool enable);
47 
48  QLabel* pixmapLabel1;
49  QLabel* textLabel1;
50  QLabel* textLabel2;
51  QLabel* textLabel3;
52  QLabel* textLabel4;
53  QLabel* textLabel5;
54  QLabel* textLabel6;
55  QLabel* textLabel7;
56  QLabel* textLabel8;
57  QLabel* textLabel9;
58  QLabel* textLabel10;
59  QLabel* textLabel11;
60  QLabel* textLabel12;
61  QLabel* textLabel14;
62  QLabel* textLabel15;
63  QStackedWidget* optionStack;
64  QWidget* WStackPage;
65  QWidget* WStackPage_2;
66  ColorCombo* colData;
67  ShadeButton *shade;
68  QWidget* WStackPage_3;
69  QSlider* brightnessSlider;
70  QWidget* WStackPage_4;
71  QSlider* contrastSlider;
72  QWidget* WStackPage_5;
73  ScrSpinBox* shRadius;
74  ScrSpinBox* shValue;
75  QWidget* WStackPage_6;
76  ScrSpinBox* blRadius;
77  QWidget* WStackPage_7;
78  QSlider* solarizeSlider;
79  QWidget* WStackPage_8;
80  QLabel* textLabel1d;
81  ColorCombo* colData1;
82  ShadeButton *shade1;
83  CurveWidget *CurveD1;
84  QToolButton *CurveD1Button;
85  QMenu *CurveD1Pop;
86  QWidgetAction* CurveD1Act;
87  QLabel* textLabel2d;
88  ColorCombo* colData2;
89  ShadeButton *shade2;
90  CurveWidget *CurveD2;
91  QToolButton *CurveD2Button;
92  QMenu *CurveD2Pop;
93  QWidgetAction* CurveD2Act;
94 
95  QWidget* WStackPage_9;
96  QLabel* textLabel1t;
97  ColorCombo* colDatat1;
98  ShadeButton *shadet1;
99  CurveWidget *CurveT1;
100  QToolButton *CurveT1Button;
101  QMenu *CurveT1Pop;
102  QWidgetAction* CurveT1Act;
103  QLabel* textLabel2t;
104  ColorCombo* colDatat2;
105  ShadeButton *shadet2;
106  CurveWidget *CurveT2;
107  QToolButton *CurveT2Button;
108  QMenu *CurveT2Pop;
109  QWidgetAction* CurveT2Act;
110  QLabel* textLabel3t;
111  ColorCombo* colDatat3;
112  ShadeButton *shadet3;
113  CurveWidget *CurveT3;
114  QToolButton *CurveT3Button;
115  QMenu *CurveT3Pop;
116  QWidgetAction* CurveT3Act;
117 
118  QWidget* WStackPage_10;
119  QLabel* textLabel1q;
120  ColorCombo* colDataq1;
121  ShadeButton *shadeq1;
122  CurveWidget *CurveQ1;
123  QToolButton *CurveQ1Button;
124  QMenu *CurveQ1Pop;
125  QWidgetAction* CurveQ1Act;
126  QLabel* textLabel2q;
127  ColorCombo* colDataq2;
128  ShadeButton *shadeq2;
129  CurveWidget *CurveQ2;
130  QToolButton *CurveQ2Button;
131  QMenu *CurveQ2Pop;
132  QWidgetAction* CurveQ2Act;
133  QLabel* textLabel3q;
134  ColorCombo* colDataqc3;
135  ShadeButton *shadeqc3;
136  CurveWidget *CurveQc3;
137  QToolButton *CurveQc3Button;
138  QMenu *CurveQc3Pop;
139  QWidgetAction* CurveQc3Act;
140  QLabel* textLabel4q;
141  ColorCombo* colDataq4;
142  ShadeButton *shadeq4;
143  CurveWidget *CurveQ4;
144  QToolButton *CurveQ4Button;
145  QMenu *CurveQ4Pop;
146  QWidgetAction* CurveQ4Act;
147 
148  QWidget* WStackPage_11;
149  CurveWidget *Kdisplay;
150 
151  QListWidget* usedEffects;
152  QPushButton* effectUp;
153  QPushButton* effectDown;
154  QPushButton* toEffects;
155  QPushButton* fromEffects;
156  QListWidget* availableEffects;
157  QPushButton* okButton;
158  QPushButton* cancelButton;
159  QListWidgetItem* currentOptions;
160 
161  ScImageEffectList effectsList;
162 
163 public slots:
164  virtual void leaveOK();
165  virtual void updateSolarize(int val);
166  virtual void updateContrast(int val);
167  virtual void updateBright(int val);
168  virtual void createPreview();
169  virtual void saveValues(bool final);
170  virtual void moveToEffects();
171  virtual void moveFromEffects();
172  virtual void moveEffectUp();
173  virtual void moveEffectDown();
174  virtual void selectEffect(QListWidgetItem* c);
175  virtual void selectAvailEffect(QListWidgetItem* c);
176  virtual void selectAvailEffectDbl(QListWidgetItem* c);
177 
178 protected:
179  ScribusDoc* m_doc;
180  PageItem* m_item;
181 
182  ScImage m_image;
183  double m_imageScale;
184 
185  QTime m_time;
186  QMap<QListWidgetItem*, QString> m_effectValMap;
187 
188  QHBoxLayout* EffectsDialogLayout;
189  QVBoxLayout* WStackPageLayout;
190  QVBoxLayout* WStackPage3Layout;
191  QHBoxLayout* layout20;
192  QVBoxLayout* WStackPage4Layout;
193  QHBoxLayout* layout21;
194  QVBoxLayout* WStackPage5Layout;
195  QHBoxLayout* layout22;
196  QHBoxLayout* layout23;
197  QVBoxLayout* WStackPage6Layout;
198  QHBoxLayout* layout24;
199  QVBoxLayout* WStackPage7Layout;
200  QGridLayout* WStackPage8Layout;
201  QGridLayout* WStackPage9Layout;
202  QGridLayout* WStackPage10Layout;
203  QVBoxLayout* WStackPage11Layout;
204  QHBoxLayout* layout26;
205  QHBoxLayout* layout17;
206  QHBoxLayout* layout19;
207  QGridLayout* layout10;
208  QVBoxLayout* layout8;
209  QHBoxLayout* layout7;
210  QVBoxLayout* layout1;
211  QVBoxLayout* layout2;
212  QVBoxLayout* layout16;
213  QVBoxLayout* layout18;
214  QHBoxLayout* layout9;
215 };
216 
217 #endif // EFFECTSDIALOG_H
Definition: scimage.h:36
The ColorCombo widget is a combo box for displaying list of colors.
Definition: colorcombo.h:33
Definition: shadebutton.h:14
Definition: effectsdialog.h:38
the Document Class
Definition: scribusdoc.h:90
ScrSpinBox is a Qt4 replacement for our old ScrSpinBox using Qt3.
Definition: scrspinbox.h:21
Definition: curvewidget.h:66
Definition: pageitem.h:92