Subversion Repositories Scribus

Rev

Rev 294 | Rev 340 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
3 paul 1
#ifndef MPALETTE_H
2
#define MPALETTE_H
3
 
4
#include <qdialog.h>
5
#include <qbuttongroup.h>
6
#include <qcheckbox.h>
7
#include <qcombobox.h>
8
#include <qframe.h>
9
#include <qgroupbox.h>
10
#include <qlabel.h>
11
#include <qpushbutton.h>
12
#include <qradiobutton.h>
13
#include <qspinbox.h>
14
#include <qtoolbutton.h>
15
#include <qwidget.h>
16
#include <qwidgetstack.h>
17
#include <qlayout.h>
18
#include <qtooltip.h>
19
#include <qimage.h>
20
#include <qpixmap.h>
27 Franz 21
#include <qlistbox.h>
68 Franz 22
#include <qlineedit.h>
3 paul 23
#include "mspinbox.h"
24
#include "pageitem.h"
25
#include "page.h"
26
#include "scribusdoc.h"
27
#include "linkbutton.h"
28
#include "linecombo.h"
29
#include "cpalette.h"
30
#include "spalette.h"
33 Franz 31
#include "fontcombo.h"
168 Franz 32
#include "styleselect.h"
173 Franz 33
#include "alignselect.h"
34
#include "shadebutton.h"
121 Franz 35
 
36
class Autoforms;
68 Franz 37
extern bool CMSavail;
3 paul 38
 
265 Franz 39
class LabelButton : public QLabel
40
{
41
        Q_OBJECT
42
 
43
public:
44
        LabelButton(QWidget* parent, QString text1, QString text2);
45
        ~LabelButton() {};
46
        void setTexts(QString text1, QString text2);
47
        bool getState();
48
 
49
private:
50
        bool state;
51
        QString TextA;
52
        QString TextB;
53
 
54
signals:
55
        void clicked();
56
 
57
protected:
266 Franz 58
        virtual void enterEvent(QEvent*);
59
        virtual void leaveEvent(QEvent*);
60
        virtual void mousePressEvent(QMouseEvent*);
265 Franz 61
        virtual void mouseReleaseEvent(QMouseEvent *);
62
};
63
 
68 Franz 64
class NameWidget : public QLineEdit
65
{
248 Franz 66
        Q_OBJECT
68 Franz 67
 
68
public:
168 Franz 69
        NameWidget(QWidget* parent);
70
        ~NameWidget() {};
68 Franz 71
 
72
signals:
168 Franz 73
        void Leaved();
68 Franz 74
 
75
protected:
248 Franz 76
        virtual void focusOutEvent(QFocusEvent *);
68 Franz 77
};
78
 
248 Franz 79
class Mpalette : public QDialog
168 Franz 80
{
81
        Q_OBJECT
82
 
3 paul 83
public:
248 Franz 84
        Mpalette(QWidget* parent, preV *Prefs);
85
        ~Mpalette() {};
86
        void closeEvent(QCloseEvent *ce);
168 Franz 87
        void ToggleFlow();
88
        void updateCList();
89
        void updateCmsList();
90
        void ShowCMS();
332 Franz 91
        void fillLangCombo(QMap<QString,QString> langMap);
92
 
93
        Autoforms* SCustom;
94
        LabelButton* colgapLabel;
95
        FontCombo* Fonts;
96
        StyleSelect* SeStyle;
97
        AlignSelect* GroupAlign;
98
        Spalette *Spal;
99
        LinkButton* Kette;
100
        LinkButton* Kette2;
101
        LineCombo* LStyle;
102
        ShadeButton *PM1;
103
        ShadeButton *PM2;
104
        PageItem *CurItem;
105
        bool HaveDoc;
106
        bool HaveItem;
107
        ScribusDoc *doc;
108
        double Umrech;
109
        bool LMode;
110
        double RoVal;
111
 
112
        QButtonGroup* proppalButtonGrp;
113
        QButtonGroup* RotationGroup;
114
        QButtonGroup* ShapeGroup;
115
 
116
        QPushButton* TabsButton;
117
 
248 Franz 118
        QToolButton* SShape;
119
        QToolButton* SText;
120
        QToolButton* SImage;
121
        QToolButton* SLine;
122
        QToolButton* SGeom;
123
        QToolButton* SColor;
332 Franz 124
        QToolButton* Zup;
125
        QToolButton* ZDown;
126
        QToolButton* ZTop;
127
        QToolButton* ZBottom;
128
 
248 Franz 129
        QWidgetStack* TabStack;
130
        QWidgetStack* TabStack2;
131
        QWidgetStack* TabStack3;
332 Franz 132
 
248 Franz 133
        QWidget* page;
134
        QWidget* page_2;
135
        QWidget* page_2a;
136
        QWidget* page_2b;
137
        QWidget* page_3;
138
        QWidget* page_4;
139
        QWidget* page_5;
140
        QWidget* page_5a;
141
        QWidget* page_5b;
332 Franz 142
 
248 Franz 143
        Cpalette *Cpal;
332 Franz 144
        NameWidget* NameEdit;
145
 
248 Franz 146
        QGroupBox* NameGroup;
147
        QGroupBox* GeoGroup;
332 Franz 148
        QGroupBox* LayerGroup;
149
        QGroupBox* Distance;
150
        QGroupBox* Distance2;
151
        QGroupBox* GroupBoxCM;
152
        QGroupBox* TLines;
153
        QGroupBox* GroupBox3;
154
        QGroupBox* GroupBox3a;
155
 
156
        QCheckBox* Textflow;
157
        QCheckBox* Textflow2;
158
        QCheckBox* Aspect;
159
        QCheckBox* showcurveCheckBox;
160
        QCheckBox* TopLine;
161
        QCheckBox* LeftLine;
162
        QCheckBox* RightLine;
163
        QCheckBox* BottomLine;
164
 
165
        QComboBox* langCombo;
166
        QComboBox* InputP;
167
        QComboBox* MonitorI;
168
        QComboBox* LineMode;
169
        QComboBox* TxStroke;
170
        QComboBox* LJoinStyle;
171
        QComboBox* LEndStyle;
172
        QComboBox* TxFill;
173
 
174
        QLabel* xposLabel;
175
        QLabel* widthLabel;
176
        QLabel* yposLabel;
177
        QLabel* heightLabel;
178
        QLabel* rotationLabel;
179
        QLabel* basepointLabel;
180
        QLabel* LevelTxt;
181
        QLabel* SRect;
182
        QLabel* rndcornersLabel;
183
        QLabel* startoffsetLabel;
184
        QLabel* distfromcurveLabel;
185
        QLabel* topLabel;
186
        QLabel* columnsLabel;
187
        QLabel* bottomLabel;
188
        QLabel* leftLabel;
189
        QLabel* rightLabel;
190
        QLabel* kerningLabel;
191
        QLabel* linespacingLabel;
192
        QLabel* fontsizeLabel;
193
        QLabel* yscaleLabel;
194
        QLabel* xscaleLabel;
195
        QLabel* xposImgLabel;
196
        QLabel* yposImgLabel;
197
        QLabel* linewidthLabel;
198
        QLabel* endingsLabel;
199
        QLabel* linetypeLabel;
200
        QLabel* StrokeIcon;
201
        QLabel* ShadeTxt2;
202
        QLabel* ShadeTxt1;
203
        QLabel* FillIcon;
204
        QLabel* styleLabel;
205
        QLabel* langLabel;
206
        QLabel* LineModeT;
207
        QLabel* TextCms1;
208
        QLabel* TextCms2;
209
        QLabel* edgesLabel;
210
        QLabel* ScaleTxt;
211
 
212
        QListBox* StyledLine;
213
 
248 Franz 214
        MSpinBox* Width;
215
        MSpinBox* Xpos;
216
        MSpinBox* Ypos;
217
        MSpinBox* Height;
218
        MSpinBox* Rot;
219
        MSpinBox* RoundRect;
220
        MSpinBox* DGap;
221
        MSpinBox* DTop;
222
        MSpinBox* DBottom;
223
        MSpinBox* DLeft;
224
        MSpinBox* DRight;
332 Franz 225
        MSpinBox* Dist;
226
        MSpinBox* LineW;
248 Franz 227
        MSpinBox* Size;
228
        MSpinBox* LineSp;
229
        MSpinBox* Extra;
230
        MSpinBox* LYpos;
231
        MSpinBox* LXpos;
232
        MSpinBox* ScaleY;
233
        MSpinBox* ScaleX;
234
        MSpinBox* LSize;
332 Franz 235
 
248 Franz 236
        QSpinBox* ChScale;
332 Franz 237
        QSpinBox* DCol;
3 paul 238
 
332 Franz 239
        QRadioButton* TopLeft;
240
        QRadioButton* TopRight;
241
        QRadioButton* Center;
242
        QRadioButton* BottomLeft;
243
        QRadioButton* BottomRight;
244
        QRadioButton* FreeScale;
245
        QRadioButton* FrameScale;
246
 
247
        QFrame* Line1;
248
        QFrame* Line2;
249
        QFrame* Line4;
250
        QFrame* Line5;
251
        QFrame* Line5_2;
252
        QFrame* Frame4;
253
 
254
        QToolButton* FlipH;
255
        QToolButton* FlipV;
256
        QToolButton* Locked;
257
        QToolButton* NoPrint;
258
        QToolButton* NoResize;
259
        QToolButton* Revert;
260
        QToolButton* EditShape;
261
 
262
 
3 paul 263
public slots:
168 Franz 264
        void SetDoc(ScribusDoc *d);
265
        void UnsetDoc();
266
        void NewSel(int nr);
267
        void SetCurItem(PageItem *i);
268
        void UnitChange();
272 Franz 269
        void setLevel(uint l);
248 Franz 270
        void setXY(double x, double y);
271
        void setBH(double x, double y);
168 Franz 272
        void setR(double r);
273
        void setRR(double r);
274
        void setCols(int r, double g);
275
        void setLsp(double r);
276
        void setSize(int s);
277
        void setExtra(double e);
275 Franz 278
        void setDvals(double left, double top, double bottom, double right);
168 Franz 279
        void ChangeScaling();
280
        void setLvalue(double scx, double scy, double x, double y);
281
        void setSvalue(double s);
282
        void setLIvalue(PenStyle p, PenCapStyle pc, PenJoinStyle pj);
283
        void setStil(int s);
284
        void setAli(int e);
285
        void setTScale(int e);
286
        void NewTScale();
287
        void SetLineFormats(ScribusDoc *dd);
288
        void SetSTline(QListBoxItem *c);
289
        void NewTFont(int);
290
        void newTxtFill();
291
        void newTxtStroke();
173 Franz 292
        void setActShade();
168 Franz 293
        void setActFarben(QString p, QString b, int shp, int shb);
294
        void ManageTabs();
248 Franz 295
 
3 paul 296
private slots:
168 Franz 297
 
298
        void SelTab(int t);
299
        void NewX();
300
        void NewY();
301
        void NewW();
302
        void NewH();
303
        void NewR();
304
        void NewRR();
305
        void NewLsp();
265 Franz 306
        void HandleGapSwitch();
168 Franz 307
        void NewCols();
308
        void NewGap();
309
        void NewSize();
310
        void NewExtra();
311
        void DoFlipH();
312
        void DoFlipV();
313
        void ToggleKette();
314
        void HChange();
315
        void VChange();
316
        void NewLocalXY();
317
        void NewLocalSC();
318
        void NewLS();
319
        void NewLSty();
320
        void NewLJoin();
321
        void NewLEnd();
173 Franz 322
        void NewAli(int a);
168 Franz 323
        void setTypeStyle(int s);
324
        void NewLMode();
325
        void DoLower();
326
        void DoRaise();
327
        void DoFront();
328
        void DoBack();
329
        void NewRotMode(int m);
330
        void DoFlow();
331
        void DoFlow2();
332
        void MakeIrre(int f, int c, double *vals);
333
        void EditSh();
334
        void NewTDist();
294 Franz 335
        void NewSpGradient(double x1, double y1, double x2, double y2);
168 Franz 336
        void DoRevert();
337
        void handleLock();
338
        void handlePrint();
205 Franz 339
        void handleResize();
168 Franz 340
        void handlePathLine();
341
        void handlePathDist();
342
        void handlePathOffs();
343
        void ChProf(const QString& prn);
344
        void ChIntent();
345
        void NewName();
346
        void NewLanguage();
232 Franz 347
        void HandleTLines();
248 Franz 348
 
349
protected slots:
350
        virtual void reject();
351
 
3 paul 352
signals:
353
        void Schliessen();
354
        void DocChanged();
355
        void NewAbStyle(int);
356
        void BackHome();
357
        void Stellung(int);
358
        void EditCL();
27 Franz 359
        void EditLSt();
32 Franz 360
        void NewTF(QString);
162 Franz 361
        void UpdtGui(int);
3 paul 362
 
363
protected:
248 Franz 364
        QVBoxLayout* MpalLayout;
332 Franz 365
        QGridLayout* proppalButtonGrpLayout;
248 Franz 366
        QVBoxLayout* pageLayout;
367
        QVBoxLayout* pageLayout_2;
368
        QVBoxLayout* pageLayout_2a;
369
        QVBoxLayout* pageLayout_2b;
370
        QVBoxLayout* pageLayout_3;
371
        QVBoxLayout* pageLayout_4;
372
        QVBoxLayout* pageLayout_5;
373
        QVBoxLayout* pageLayout_5a;
374
        QVBoxLayout* pageLayout_5b;
375
        QVBoxLayout* TLineLayout;
376
        QHBoxLayout* layout60;
377
        QGridLayout* Layout44;
378
        QHBoxLayout* Layout13;
379
        QGridLayout* Layout12;
380
        QHBoxLayout* layout47;
381
        QVBoxLayout* layout46;
382
        QGridLayout* layout41;
383
        QHBoxLayout* Layout1;
384
        QGridLayout* layout43;
385
        QVBoxLayout* Layout24;
386
        QHBoxLayout* Layout18;
387
        QHBoxLayout* Layout13_2;
388
        QGridLayout* Layout12_2;
389
        QHBoxLayout* NameGroupLayout;
390
        QGridLayout* GeoGroupLayout;
391
        QGridLayout* LayerGroupLayout;
392
        QHBoxLayout* RotationGroupLayout;
393
        QHBoxLayout* ShapeGroupLayout;
394
        QGridLayout* DistanceLayout;
395
        QGridLayout* DistanceLayout2;
396
        QGridLayout* GroupBox3Layout;
397
        QGridLayout* GroupBox3aLayout;
398
        QVBoxLayout* GroupBoxCMLayout;
399
        QHBoxLayout* layout22;
400
        QHBoxLayout* layout23;
401
        QHBoxLayout* layout24;
3 paul 402
};
403
 
404
#endif