Subversion Repositories Scribus

Rev

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

Rev Author Line No. Line
838 cbradney 1
#ifndef SCRIBUSSTRUCTS_H
2
#define SCRIBUSSTRUCTS_H
3
 
4
#ifdef HAVE_CONFIG_H
5
#include <config.h>
6
#endif
7
 
8
#include <qvaluestack.h>
9
#include <qvaluelist.h>
1429 subik 10
#include <qvaluevector.h>
838 cbradney 11
#include <qstring.h>
1208 cbradney 12
#include <qaction.h>
839 cbradney 13
#include <vector>
838 cbradney 14
 
15
#include "scfonts.h"
16
#include "cmykcolor.h"
17
#include "fpointarray.h"
18
#include "vgradient.h"
19
#include "pageitem.h"
1208 cbradney 20
#include "scraction.h"
1972 craig 21
#include "pdfoptions.h"
838 cbradney 22
 
23
/* Struktur fuer Pageitem Text */
1065 cbradney 24
struct ScText
1429 subik 25
{
1065 cbradney 26
        bool cselect;
844 fschmid 27
        int csize;
1781 fschmid 28
        short cshade;
29
        short cshade2;
30
        short cstyle;
31
        short cab;
32
        short cscale;
33
        float cextra;
34
        float xp;
35
        float yp;
36
        float PtransX;
37
        float PtransY;
38
        float PRot;
1789 fschmid 39
        Foi* cfont;
1065 cbradney 40
        QString ccolor;
41
        QString cstroke;
42
        QString ch;
844 fschmid 43
};
838 cbradney 44
 
1065 cbradney 45
struct CopyPasteBuffer
1429 subik 46
{
1460 cbradney 47
        PageItem::ItemType PType;
844 fschmid 48
        double Xpos;
49
        double Ypos;
50
        double Width;
51
        double Height;
52
        double RadRect;
53
        int FrameType;
54
        bool ClipEdited;
55
        double Pwidth;
56
        QString Pcolor;
57
        QString Pcolor2;
58
        int Shade;
59
        int Shade2;
60
        QString GrColor;
61
        QString GrColor2;
62
        int GrShade;
63
        int GrShade2;
64
        VGradient fill_gradient;
65
        int GrType;
66
        double GrStartX;
67
        double GrStartY;
68
        double GrEndX;
69
        double GrEndY;
70
        QString TxtStroke;
71
        QString TxtFill;
72
        int ShTxtStroke;
73
        int ShTxtFill;
74
        int TxtScale;
75
        int TxTStyle;
76
        double Rot;
77
        int PLineArt;
78
        int PLineJoin;
79
        int PLineEnd;
80
        double LineSp;
81
        double ExtraV;
82
        double LocalScX;
83
        double LocalScY;
84
        double LocalX;
85
        double LocalY;
86
        bool PicArt;
1392 cbradney 87
        bool flippedH;
88
        bool flippedV;
844 fschmid 89
        double BBoxX;
90
        double BBoxH;
91
        bool isPrintable;
92
        bool isBookmark;
93
        int BMnr;
94
        bool isAnnotation;
95
        int AnType;
96
        QString AnAction;
97
        QString An_E_act;
98
        QString An_X_act;
99
        QString An_D_act;
100
        QString An_Fo_act;
101
        QString An_Bl_act;
102
        QString An_K_act;
103
        QString An_F_act;
104
        QString An_V_act;
105
        QString An_C_act;
106
        QString An_Extern;
107
        int AnZiel;
108
        int AnActType;
109
        QString AnName;
110
        QString AnToolTip;
111
        QString AnRollOver;
112
        QString AnDown;
113
        QString AnBColor;
114
        int AnBwid;
115
        int AnBsty;
116
        int AnFeed;
117
        int AnFlag;
118
        int AnMaxChar;
119
        int AnVis;
120
        int AnFont;
121
        int AnChkStil;
122
        int AnFormat;
123
        bool AnIsChk;
124
        bool AnAAact;
125
        bool AnHTML;
126
        bool AnUseIcons;
127
        int AnIPlace;
128
        int AnScaleW;
129
        double Extra;
130
        double TExtra;
131
        double BExtra;
132
        double RExtra;
133
        QString Pfile;
134
        QString Pfile2;
135
        QString Pfile3;
136
        QString IProfile;
137
        QString EmProfile;
138
        int IRender;
139
        bool UseEmbedded;
1065 cbradney 140
        QString itemText;
844 fschmid 141
        QPointArray Clip;
142
        FPointArray PoLine;
143
        FPointArray ContourLine;
144
        bool PoShow;
145
        double BaseOffs;
146
        bool Textflow;
147
        bool Textflow2;
148
        bool UseContour;
1065 cbradney 149
        int textAlignment;
844 fschmid 150
        QString IFont;
151
        int ISize;
152
        QValueStack<int> Groups;
153
        int LayerNr;
154
        bool ScaleType;
155
        bool AspectRatio;
156
        bool Locked;
157
        bool LockRes;
158
        double Transparency;
159
        double TranspStroke;
160
        bool Reverse;
161
        bool InvPict;
162
        QString NamedLStyle;
163
        QString Language;
164
        QString guiLanguage;
165
        int Cols;
166
        double ColGap;
167
        QValueList<double> TabValues;
168
        QValueList<double> DashValues;
169
        double DashOffset;
170
        bool isTableItem;
171
        bool TopLine;
172
        bool LeftLine;
173
        bool RightLine;
174
        bool BottomLine;
175
        int LeftLinkID;
176
        int RightLinkID;
177
        int TopLinkID;
178
        int BottomLinkID;
179
        int startArrowIndex;
180
        int endArrowIndex;
1655 cbradney 181
        ObjAttrVector pageItemAttributes;
844 fschmid 182
};
838 cbradney 183
 
1065 cbradney 184
  /** Pagemargins */
185
struct MarginStruct
1429 subik 186
{
844 fschmid 187
        double Top;
188
        double Left;
189
        double Right;
190
        double Bottom;
191
};
838 cbradney 192
 
1065 cbradney 193
struct ParagraphStyle
1429 subik 194
{
844 fschmid 195
        QString Vname;
196
        double LineSpa;
1065 cbradney 197
        int textAlignment;
844 fschmid 198
        double Indent;
199
        double First;
1065 cbradney 200
        double gapBefore;
201
        double gapAfter;
844 fschmid 202
        QString Font;
203
        int FontSize;
204
        QValueList<double> TabValues;
205
        bool Drop;
206
        int DropLin;
207
        int FontEffect;
208
        QString FColor;
209
        int FShade;
210
        QString SColor;
211
        int SShade;
212
        bool BaseAdj;
213
};
838 cbradney 214
 
1065 cbradney 215
struct CMSData
844 fschmid 216
{
217
        QString DefaultMonitorProfile;
218
        QString DefaultPrinterProfile;
219
        QString DefaultInputProfile;
220
        QString DefaultInputProfile2;
221
        int ComponentsInput2;
222
        int ComponentsPrinter;
223
        int DefaultIntentMonitor;
224
        int DefaultIntentMonitor2;
225
        int DefaultIntentPrinter;
226
        bool CMSinUse;
227
        bool SoftProofOn;
228
        bool GamutCheck;
229
        bool BlackPoint;
230
} ;
838 cbradney 231
 
1065 cbradney 232
struct SingleLine
1429 subik 233
{
844 fschmid 234
        double Width;
235
        int Dash;
236
        int LineEnd;
237
        int LineJoin;
238
        QString Color;
239
        int Shade;
240
};
838 cbradney 241
 
1065 cbradney 242
struct ArrowDesc
844 fschmid 243
{
244
        QString name;
245
        bool userArrow;
246
        FPointArray points;
247
};
838 cbradney 248
 
844 fschmid 249
struct Layer
1429 subik 250
{
844 fschmid 251
        int LNr;
252
        int Level;
253
        QString Name;
1065 cbradney 254
        bool isPrintable;
255
        bool isViewable;
844 fschmid 256
};
838 cbradney 257
 
1065 cbradney 258
struct PDFPresentationData
1429 subik 259
{
1065 cbradney 260
        int pageEffectDuration;
261
        int pageViewDuration;
262
        int effectType;
844 fschmid 263
        int Dm;
264
        int M;
265
        int Di;
266
};
838 cbradney 267
 
1065 cbradney 268
struct LPIData
1429 subik 269
{
844 fschmid 270
        int Frequency;
271
        int Angle;
272
        int SpotFunc;
273
};
838 cbradney 274
 
844 fschmid 275
struct Keys
1429 subik 276
{
1230 cbradney 277
        QString actionName;
1392 cbradney 278
        QString cleanMenuText;
279
        QString keySequence;
280
        int tableRow;
844 fschmid 281
};
838 cbradney 282
 
844 fschmid 283
/** Definition der Farbenlisten */
1065 cbradney 284
typedef QMap<QString,CMYKColor> ColorList;
838 cbradney 285
 
1235 fschmid 286
struct checkerPrefs
287
{
288
        bool ignoreErrors;
289
        bool autoCheck;
290
        bool checkGlyphs;
291
        bool checkOverflow;
292
        bool checkOrphans;
293
        bool checkPictures;
294
        bool checkResolution;
295
        double minResolution;
296
        bool checkTransparency;
1284 fschmid 297
        bool checkAnnotations;
298
        bool checkRasterPDF;
1235 fschmid 299
};
300
 
1065 cbradney 301
struct typoPrefs
844 fschmid 302
{
303
        int valueSuperScript;
304
        int scalingSuperScript;
305
        int valueSubScript;
306
        int scalingSubScript;
307
        int valueSmallCaps;
308
        int autoLineSpacing;
309
        double valueBaseGrid;
310
        double offsetBaseGrid;
311
};
838 cbradney 312
 
1065 cbradney 313
struct windowPrefs
844 fschmid 314
{
315
        int xPosition;
316
        int yPosition;
317
        int width;
318
        int height;
319
        bool visible;
320
        bool docked;
321
};
322
 
1065 cbradney 323
struct guidesPrefs
879 fschmid 324
{
325
        bool gridShown;
326
        QColor majorColor;
327
        double majorGrid;
328
        double minorGrid;
329
        QColor minorColor;
330
        double guideRad;
331
        int grabRad;
332
        bool framesShown;
333
        bool guidesShown;
334
        bool marginsShown;
335
        bool baseShown;
336
        bool linkShown;
337
        bool showPic;
1187 fschmid 338
        bool before;
879 fschmid 339
        QColor guideColor;
340
        QColor baseColor;
341
        QColor margColor;
342
};
343
 
1194 fschmid 344
struct toolPrefs
345
{
346
        /* Texttool */
347
        QString defFont;
348
        int defSize;
349
        QString dPenText;
350
        QString dStrokeText;
351
        int dCols;
352
        double dGap;
353
        /* ShapeTool */
354
        QString dPen;
355
        QString dBrush;
356
        int dShade;
357
        int dShade2;
358
        int dLineArt;
359
        double dWidth;
360
        /* Line Tool */
361
        QString dPenLine;
362
        int dShadeLine;
363
        double dWidthLine;
364
        int dLstyleLine;
365
        int dStartArrow;
366
        int dEndArrow;
367
        /* Regular Polygon Tool */
368
        int polyC;
369
        int polyFd;
370
        double polyF;
371
        bool polyS;
372
        double polyR;
373
        /* Picture Tool */
374
        QString dBrushPict;
375
        int shadePict;
376
        double scaleX;
377
        double scaleY;
378
        bool scaleType;
379
        bool aspectRatio;
380
        /* Magnifier Tool */
381
        int magMin;
382
        int magMax;
383
        int magStep;
384
};
385
 
1065 cbradney 386
struct ApplicationPrefs
1429 subik 387
{
844 fschmid 388
        SCFonts AvailFonts;
1065 cbradney 389
        QValueList<ArrowDesc> arrowStyles;
390
        ColorList DColors;
844 fschmid 391
        int Wheelval;
392
        int AppFontSize;
393
        QColor DpapColor;
394
        QString GUI;
1065 cbradney 395
        guidesPrefs guidesSettings;
396
        typoPrefs typographicSetttings;
1194 fschmid 397
        toolPrefs toolSettings;
1261 fschmid 398
        QMap<QString, checkerPrefs> checkerProfiles;
399
        QString curCheckProfile;
1065 cbradney 400
        int docUnitIndex;
401
        windowPrefs mainToolBarSettings;
402
        windowPrefs pdfToolBarSettings;
403
        windowPrefs mainWinSettings;
1972 craig 404
 
1545 cbradney 405
        PDFOptions PDF_Options;
1649 cbradney 406
        ObjAttrVector defaultItemAttributes;
1701 cbradney 407
        ToCSetupVector defaultToCSetups;
844 fschmid 408
        bool SepalT;
409
        bool SepalN;
410
        int PSize;
411
        bool SaveAtQ;
1065 cbradney 412
        bool marginColored;
844 fschmid 413
        QStringList RecentDocs;
414
        uint RecentDCount;
1065 cbradney 415
        CMSData DCMSset;
1392 cbradney 416
        QMap<QString,Keys> KeyActions;
844 fschmid 417
        QString PrinterName;
418
        QString PrinterFile;
419
        QString PrinterCommand;
1542 cbradney 420
        QString pageSize;
1545 cbradney 421
        int pageOrientation;
422
        double PageWidth;
423
        double PageHeight;
844 fschmid 424
        double RandOben;
425
        double RandUnten;
426
        double RandLinks;
427
        double RandRechts;
1545 cbradney 428
        bool FacingPages;
429
        bool LeftPageFirst;
844 fschmid 430
        int MinWordLen;
431
        int HyCount;
432
        QString Language;
433
        QString guiLanguage;
434
        bool Automatic;
435
        bool AutoCheck;
436
        QString DocDir;
437
        QString ProfileDir;
438
        QString ScriptDir;
439
        QString TemplateDir;
440
        QMap<QString,QString> GFontSub;
441
        bool AutoSave;
442
        int AutoSaveTime;
443
        double DisScale;
444
        QString DColorSet;
445
        QStringList CustomColorSets;
446
        bool PrPr_Mode;
447
        bool Gcr_Mode;
448
        bool PrPr_AlphaText;
449
        bool PrPr_AlphaGraphics;
450
        bool PrPr_Transparency;
451
        bool PrPr_C;
452
        bool PrPr_M;
453
        bool PrPr_Y;
454
        bool PrPr_K;
455
        QString gs_exe;
1545 cbradney 456
        bool gs_AntiAliasText;
457
        bool gs_AntiAliasGraphics;
844 fschmid 458
        QString gimp_exe;
459
        bool ClipMargin;
460
        bool GCRMode;
461
        QColor STEcolor;
462
        QString STEfont;
463
        double ScratchLeft;
464
        double ScratchRight;
465
        double ScratchTop;
466
        double ScratchBottom;
1468 fschmid 467
        bool askBeforeSubstituite;
844 fschmid 468
};
469
 
1429 subik 470
struct PrintOptions
844 fschmid 471
{
838 cbradney 472
        QString printer;
473
        QString filename;
474
        bool toFile;
475
        bool useAltPrintCommand;
476
        QString printerCommand;
477
        int PSLevel;
478
        bool outputSeparations;
479
        QString separationName;
480
        bool useColor;
481
        bool mirrorH;
482
        bool mirrorV;
483
        bool useICC;
484
        bool doGCR;
1861 fschmid 485
        bool setDevParam;
838 cbradney 486
        int copies;
487
        std::vector<int> pageNumbers;
488
        QString printerOptions;
489
};
490
 
844 fschmid 491
typedef QMap<QString,QString> ProfilesL;
1065 cbradney 492
typedef QValueVector<SingleLine> multiLine;
1229 fschmid 493
typedef QMap<int, int> errorCodes;
1460 cbradney 494
 
1065 cbradney 495
enum AppMode
496
{
497
        NormalMode,
498
        DrawShapes,
499
        StartStoryEditor,
500
        DrawPicture,
501
        DrawText,
502
        Magnifier,
503
        EditMode,
504
        DrawLine,
505
        Rotation,
506
        LinkFrames,
507
        UnlinkFrames,
508
        DrawRegularPolygon,
509
        DrawBezierLine,
510
        InsertPDFButton,
511
        InsertPDFTextfield,
512
        InsertPDFCheckbox,
513
        InsertPDFCombobox,
514
        InsertPDFListbox,
515
        InsertPDFTextAnnotation,
516
        InsertPDFLinkAnnotation,
517
        DrawFreehandLine,
518
        DrawTable,
519
        PanningMode,
520
        MeasurementTool,
1814 cbradney 521
        EditGradientVectors,
1840 fschmid 522
        EyeDropper,
523
        CopyProperties
1065 cbradney 524
};
844 fschmid 525
 
1641 cbradney 526
 
527
 
838 cbradney 528
#endif