Subversion Repositories Scribus

Rev

Rev 2012 | Rev 2040 | 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;
2025 fschmid 380
        int lowResType;
1194 fschmid 381
        /* Magnifier Tool */
382
        int magMin;
383
        int magMax;
384
        int magStep;
385
};
386
 
1065 cbradney 387
struct ApplicationPrefs
1429 subik 388
{
844 fschmid 389
        SCFonts AvailFonts;
1065 cbradney 390
        QValueList<ArrowDesc> arrowStyles;
391
        ColorList DColors;
844 fschmid 392
        int Wheelval;
393
        int AppFontSize;
394
        QColor DpapColor;
395
        QString GUI;
1065 cbradney 396
        guidesPrefs guidesSettings;
397
        typoPrefs typographicSetttings;
1194 fschmid 398
        toolPrefs toolSettings;
1261 fschmid 399
        QMap<QString, checkerPrefs> checkerProfiles;
400
        QString curCheckProfile;
1065 cbradney 401
        int docUnitIndex;
402
        windowPrefs mainToolBarSettings;
403
        windowPrefs pdfToolBarSettings;
404
        windowPrefs mainWinSettings;
1972 craig 405
 
1545 cbradney 406
        PDFOptions PDF_Options;
1649 cbradney 407
        ObjAttrVector defaultItemAttributes;
1701 cbradney 408
        ToCSetupVector defaultToCSetups;
844 fschmid 409
        bool SepalT;
410
        bool SepalN;
411
        int PSize;
412
        bool SaveAtQ;
1065 cbradney 413
        bool marginColored;
844 fschmid 414
        QStringList RecentDocs;
415
        uint RecentDCount;
1065 cbradney 416
        CMSData DCMSset;
1392 cbradney 417
        QMap<QString,Keys> KeyActions;
844 fschmid 418
        QString PrinterName;
419
        QString PrinterFile;
420
        QString PrinterCommand;
1542 cbradney 421
        QString pageSize;
1545 cbradney 422
        int pageOrientation;
423
        double PageWidth;
424
        double PageHeight;
844 fschmid 425
        double RandOben;
426
        double RandUnten;
427
        double RandLinks;
428
        double RandRechts;
1545 cbradney 429
        bool FacingPages;
430
        bool LeftPageFirst;
844 fschmid 431
        int MinWordLen;
432
        int HyCount;
433
        QString Language;
434
        QString guiLanguage;
435
        bool Automatic;
436
        bool AutoCheck;
437
        QString DocDir;
438
        QString ProfileDir;
439
        QString ScriptDir;
440
        QString TemplateDir;
441
        QMap<QString,QString> GFontSub;
442
        bool AutoSave;
443
        int AutoSaveTime;
444
        double DisScale;
445
        QString DColorSet;
446
        QStringList CustomColorSets;
447
        bool PrPr_Mode;
448
        bool Gcr_Mode;
449
        bool PrPr_AlphaText;
450
        bool PrPr_AlphaGraphics;
451
        bool PrPr_Transparency;
452
        bool PrPr_C;
453
        bool PrPr_M;
454
        bool PrPr_Y;
455
        bool PrPr_K;
456
        QString gs_exe;
1545 cbradney 457
        bool gs_AntiAliasText;
458
        bool gs_AntiAliasGraphics;
844 fschmid 459
        QString gimp_exe;
460
        bool ClipMargin;
461
        bool GCRMode;
462
        QColor STEcolor;
463
        QString STEfont;
464
        double ScratchLeft;
465
        double ScratchRight;
466
        double ScratchTop;
467
        double ScratchBottom;
1468 fschmid 468
        bool askBeforeSubstituite;
844 fschmid 469
};
470
 
1429 subik 471
struct PrintOptions
844 fschmid 472
{
838 cbradney 473
        QString printer;
474
        QString filename;
475
        bool toFile;
476
        bool useAltPrintCommand;
477
        QString printerCommand;
478
        int PSLevel;
479
        bool outputSeparations;
480
        QString separationName;
481
        bool useColor;
482
        bool mirrorH;
483
        bool mirrorV;
484
        bool useICC;
485
        bool doGCR;
1861 fschmid 486
        bool setDevParam;
838 cbradney 487
        int copies;
488
        std::vector<int> pageNumbers;
489
        QString printerOptions;
490
};
491
 
844 fschmid 492
typedef QMap<QString,QString> ProfilesL;
1065 cbradney 493
typedef QValueVector<SingleLine> multiLine;
1229 fschmid 494
typedef QMap<int, int> errorCodes;
1460 cbradney 495
 
1065 cbradney 496
enum AppMode
497
{
498
        NormalMode,
499
        DrawShapes,
500
        StartStoryEditor,
501
        DrawPicture,
502
        DrawText,
503
        Magnifier,
504
        EditMode,
505
        DrawLine,
506
        Rotation,
507
        LinkFrames,
508
        UnlinkFrames,
509
        DrawRegularPolygon,
510
        DrawBezierLine,
511
        InsertPDFButton,
512
        InsertPDFTextfield,
513
        InsertPDFCheckbox,
514
        InsertPDFCombobox,
515
        InsertPDFListbox,
516
        InsertPDFTextAnnotation,
517
        InsertPDFLinkAnnotation,
518
        DrawFreehandLine,
519
        DrawTable,
520
        PanningMode,
521
        MeasurementTool,
1814 cbradney 522
        EditGradientVectors,
1840 fschmid 523
        EyeDropper,
524
        CopyProperties
1065 cbradney 525
};
844 fschmid 526
 
1641 cbradney 527
 
528
 
838 cbradney 529
#endif