Subversion Repositories Scribus

Rev

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