Subversion Repositories Scribus

Rev

Rev 2093 | Rev 2163 | 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
        QString NamedLStyle;
162
        QString Language;
163
        QString guiLanguage;
164
        int Cols;
165
        double ColGap;
166
        QValueList<double> TabValues;
167
        QValueList<double> DashValues;
168
        double DashOffset;
169
        bool isTableItem;
170
        bool TopLine;
171
        bool LeftLine;
172
        bool RightLine;
173
        bool BottomLine;
174
        int LeftLinkID;
175
        int RightLinkID;
176
        int TopLinkID;
177
        int BottomLinkID;
178
        int startArrowIndex;
179
        int endArrowIndex;
1655 cbradney 180
        ObjAttrVector pageItemAttributes;
844 fschmid 181
};
838 cbradney 182
 
1065 cbradney 183
  /** Pagemargins */
184
struct MarginStruct
1429 subik 185
{
844 fschmid 186
        double Top;
187
        double Left;
188
        double Right;
189
        double Bottom;
190
};
838 cbradney 191
 
1065 cbradney 192
struct ParagraphStyle
1429 subik 193
{
844 fschmid 194
        QString Vname;
195
        double LineSpa;
1065 cbradney 196
        int textAlignment;
844 fschmid 197
        double Indent;
198
        double First;
1065 cbradney 199
        double gapBefore;
200
        double gapAfter;
844 fschmid 201
        QString Font;
202
        int FontSize;
203
        QValueList<double> TabValues;
204
        bool Drop;
205
        int DropLin;
206
        int FontEffect;
207
        QString FColor;
208
        int FShade;
209
        QString SColor;
210
        int SShade;
211
        bool BaseAdj;
212
};
838 cbradney 213
 
1065 cbradney 214
struct CMSData
844 fschmid 215
{
216
        QString DefaultMonitorProfile;
217
        QString DefaultPrinterProfile;
218
        QString DefaultInputProfile;
219
        QString DefaultInputProfile2;
220
        int ComponentsInput2;
221
        int ComponentsPrinter;
222
        int DefaultIntentMonitor;
223
        int DefaultIntentMonitor2;
224
        int DefaultIntentPrinter;
225
        bool CMSinUse;
226
        bool SoftProofOn;
227
        bool GamutCheck;
228
        bool BlackPoint;
229
} ;
838 cbradney 230
 
1065 cbradney 231
struct SingleLine
1429 subik 232
{
844 fschmid 233
        double Width;
234
        int Dash;
235
        int LineEnd;
236
        int LineJoin;
237
        QString Color;
238
        int Shade;
239
};
838 cbradney 240
 
1065 cbradney 241
struct ArrowDesc
844 fschmid 242
{
243
        QString name;
244
        bool userArrow;
245
        FPointArray points;
246
};
838 cbradney 247
 
844 fschmid 248
struct Layer
1429 subik 249
{
844 fschmid 250
        int LNr;
251
        int Level;
252
        QString Name;
1065 cbradney 253
        bool isPrintable;
254
        bool isViewable;
844 fschmid 255
};
838 cbradney 256
 
1065 cbradney 257
struct PDFPresentationData
1429 subik 258
{
1065 cbradney 259
        int pageEffectDuration;
260
        int pageViewDuration;
261
        int effectType;
844 fschmid 262
        int Dm;
263
        int M;
264
        int Di;
265
};
838 cbradney 266
 
1065 cbradney 267
struct LPIData
1429 subik 268
{
844 fschmid 269
        int Frequency;
270
        int Angle;
271
        int SpotFunc;
272
};
838 cbradney 273
 
844 fschmid 274
struct Keys
1429 subik 275
{
1230 cbradney 276
        QString actionName;
1392 cbradney 277
        QString cleanMenuText;
278
        QString keySequence;
279
        int tableRow;
844 fschmid 280
};
838 cbradney 281
 
844 fschmid 282
/** Definition der Farbenlisten */
1065 cbradney 283
typedef QMap<QString,CMYKColor> ColorList;
838 cbradney 284
 
1235 fschmid 285
struct checkerPrefs
286
{
287
        bool ignoreErrors;
288
        bool autoCheck;
289
        bool checkGlyphs;
290
        bool checkOverflow;
291
        bool checkOrphans;
292
        bool checkPictures;
293
        bool checkResolution;
294
        double minResolution;
295
        bool checkTransparency;
1284 fschmid 296
        bool checkAnnotations;
297
        bool checkRasterPDF;
1235 fschmid 298
};
299
 
1065 cbradney 300
struct typoPrefs
844 fschmid 301
{
302
        int valueSuperScript;
303
        int scalingSuperScript;
304
        int valueSubScript;
305
        int scalingSubScript;
306
        int valueSmallCaps;
307
        int autoLineSpacing;
308
        double valueBaseGrid;
309
        double offsetBaseGrid;
310
};
838 cbradney 311
 
1065 cbradney 312
struct windowPrefs
844 fschmid 313
{
314
        int xPosition;
315
        int yPosition;
316
        int width;
317
        int height;
318
        bool visible;
319
        bool docked;
320
};
321
 
1065 cbradney 322
struct guidesPrefs
879 fschmid 323
{
324
        bool gridShown;
325
        QColor majorColor;
326
        double majorGrid;
327
        double minorGrid;
328
        QColor minorColor;
329
        double guideRad;
330
        int grabRad;
331
        bool framesShown;
332
        bool guidesShown;
333
        bool marginsShown;
334
        bool baseShown;
335
        bool linkShown;
336
        bool showPic;
1187 fschmid 337
        bool before;
879 fschmid 338
        QColor guideColor;
339
        QColor baseColor;
340
        QColor margColor;
341
};
342
 
1194 fschmid 343
struct toolPrefs
344
{
345
        /* Texttool */
346
        QString defFont;
347
        int defSize;
348
        QString dPenText;
349
        QString dStrokeText;
350
        int dCols;
351
        double dGap;
352
        /* ShapeTool */
353
        QString dPen;
354
        QString dBrush;
355
        int dShade;
356
        int dShade2;
357
        int dLineArt;
358
        double dWidth;
359
        /* Line Tool */
360
        QString dPenLine;
361
        int dShadeLine;
362
        double dWidthLine;
363
        int dLstyleLine;
364
        int dStartArrow;
365
        int dEndArrow;
366
        /* Regular Polygon Tool */
367
        int polyC;
368
        int polyFd;
369
        double polyF;
370
        bool polyS;
371
        double polyR;
372
        /* Picture Tool */
373
        QString dBrushPict;
374
        int shadePict;
375
        double scaleX;
376
        double scaleY;
377
        bool scaleType;
378
        bool aspectRatio;
2025 fschmid 379
        int lowResType;
2040 fschmid 380
        bool useEmbeddedPath;
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;
2093 cbradney 440
        QString documentTemplatesDir;
844 fschmid 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;
2150 cbradney 459
        QString imageEditorExecutable;
844 fschmid 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