Subversion Repositories Scribus

Rev

Rev 2150 | Rev 2185 | 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;
2163 fschmid 308
        int valueUnderlinePos;
309
        int valueUnderlineWidth;
310
        int valueStrikeThruPos;
311
        int valueStrikeThruWidth;
844 fschmid 312
        double valueBaseGrid;
313
        double offsetBaseGrid;
314
};
838 cbradney 315
 
1065 cbradney 316
struct windowPrefs
844 fschmid 317
{
318
        int xPosition;
319
        int yPosition;
320
        int width;
321
        int height;
322
        bool visible;
323
        bool docked;
324
};
325
 
1065 cbradney 326
struct guidesPrefs
879 fschmid 327
{
328
        bool gridShown;
329
        QColor majorColor;
330
        double majorGrid;
331
        double minorGrid;
332
        QColor minorColor;
333
        double guideRad;
334
        int grabRad;
335
        bool framesShown;
336
        bool guidesShown;
337
        bool marginsShown;
338
        bool baseShown;
339
        bool linkShown;
340
        bool showPic;
1187 fschmid 341
        bool before;
879 fschmid 342
        QColor guideColor;
343
        QColor baseColor;
344
        QColor margColor;
345
};
346
 
1194 fschmid 347
struct toolPrefs
348
{
349
        /* Texttool */
350
        QString defFont;
351
        int defSize;
352
        QString dPenText;
353
        QString dStrokeText;
354
        int dCols;
355
        double dGap;
356
        /* ShapeTool */
357
        QString dPen;
358
        QString dBrush;
359
        int dShade;
360
        int dShade2;
361
        int dLineArt;
362
        double dWidth;
363
        /* Line Tool */
364
        QString dPenLine;
365
        int dShadeLine;
366
        double dWidthLine;
367
        int dLstyleLine;
368
        int dStartArrow;
369
        int dEndArrow;
370
        /* Regular Polygon Tool */
371
        int polyC;
372
        int polyFd;
373
        double polyF;
374
        bool polyS;
375
        double polyR;
376
        /* Picture Tool */
377
        QString dBrushPict;
378
        int shadePict;
379
        double scaleX;
380
        double scaleY;
381
        bool scaleType;
382
        bool aspectRatio;
2025 fschmid 383
        int lowResType;
2040 fschmid 384
        bool useEmbeddedPath;
1194 fschmid 385
        /* Magnifier Tool */
386
        int magMin;
387
        int magMax;
388
        int magStep;
389
};
390
 
1065 cbradney 391
struct ApplicationPrefs
1429 subik 392
{
844 fschmid 393
        SCFonts AvailFonts;
1065 cbradney 394
        QValueList<ArrowDesc> arrowStyles;
395
        ColorList DColors;
844 fschmid 396
        int Wheelval;
397
        int AppFontSize;
398
        QColor DpapColor;
399
        QString GUI;
1065 cbradney 400
        guidesPrefs guidesSettings;
401
        typoPrefs typographicSetttings;
1194 fschmid 402
        toolPrefs toolSettings;
1261 fschmid 403
        QMap<QString, checkerPrefs> checkerProfiles;
404
        QString curCheckProfile;
1065 cbradney 405
        int docUnitIndex;
406
        windowPrefs mainToolBarSettings;
407
        windowPrefs pdfToolBarSettings;
408
        windowPrefs mainWinSettings;
1972 craig 409
 
1545 cbradney 410
        PDFOptions PDF_Options;
1649 cbradney 411
        ObjAttrVector defaultItemAttributes;
1701 cbradney 412
        ToCSetupVector defaultToCSetups;
844 fschmid 413
        bool SepalT;
414
        bool SepalN;
415
        int PSize;
416
        bool SaveAtQ;
1065 cbradney 417
        bool marginColored;
844 fschmid 418
        QStringList RecentDocs;
419
        uint RecentDCount;
1065 cbradney 420
        CMSData DCMSset;
1392 cbradney 421
        QMap<QString,Keys> KeyActions;
844 fschmid 422
        QString PrinterName;
423
        QString PrinterFile;
424
        QString PrinterCommand;
1542 cbradney 425
        QString pageSize;
1545 cbradney 426
        int pageOrientation;
427
        double PageWidth;
428
        double PageHeight;
844 fschmid 429
        double RandOben;
430
        double RandUnten;
431
        double RandLinks;
432
        double RandRechts;
1545 cbradney 433
        bool FacingPages;
434
        bool LeftPageFirst;
844 fschmid 435
        int MinWordLen;
436
        int HyCount;
437
        QString Language;
438
        QString guiLanguage;
439
        bool Automatic;
440
        bool AutoCheck;
441
        QString DocDir;
442
        QString ProfileDir;
443
        QString ScriptDir;
2093 cbradney 444
        QString documentTemplatesDir;
844 fschmid 445
        QMap<QString,QString> GFontSub;
446
        bool AutoSave;
447
        int AutoSaveTime;
448
        double DisScale;
449
        QString DColorSet;
450
        QStringList CustomColorSets;
451
        bool PrPr_Mode;
452
        bool Gcr_Mode;
453
        bool PrPr_AlphaText;
454
        bool PrPr_AlphaGraphics;
455
        bool PrPr_Transparency;
456
        bool PrPr_C;
457
        bool PrPr_M;
458
        bool PrPr_Y;
459
        bool PrPr_K;
460
        QString gs_exe;
1545 cbradney 461
        bool gs_AntiAliasText;
462
        bool gs_AntiAliasGraphics;
2150 cbradney 463
        QString imageEditorExecutable;
844 fschmid 464
        bool ClipMargin;
465
        bool GCRMode;
466
        QColor STEcolor;
467
        QString STEfont;
468
        double ScratchLeft;
469
        double ScratchRight;
470
        double ScratchTop;
471
        double ScratchBottom;
1468 fschmid 472
        bool askBeforeSubstituite;
844 fschmid 473
};
474
 
1429 subik 475
struct PrintOptions
844 fschmid 476
{
838 cbradney 477
        QString printer;
478
        QString filename;
479
        bool toFile;
480
        bool useAltPrintCommand;
481
        QString printerCommand;
482
        int PSLevel;
483
        bool outputSeparations;
484
        QString separationName;
485
        bool useColor;
486
        bool mirrorH;
487
        bool mirrorV;
488
        bool useICC;
489
        bool doGCR;
1861 fschmid 490
        bool setDevParam;
838 cbradney 491
        int copies;
492
        std::vector<int> pageNumbers;
493
        QString printerOptions;
494
};
495
 
844 fschmid 496
typedef QMap<QString,QString> ProfilesL;
1065 cbradney 497
typedef QValueVector<SingleLine> multiLine;
1229 fschmid 498
typedef QMap<int, int> errorCodes;
1460 cbradney 499
 
1065 cbradney 500
enum AppMode
501
{
502
        NormalMode,
503
        DrawShapes,
504
        StartStoryEditor,
505
        DrawPicture,
506
        DrawText,
507
        Magnifier,
508
        EditMode,
509
        DrawLine,
510
        Rotation,
511
        LinkFrames,
512
        UnlinkFrames,
513
        DrawRegularPolygon,
514
        DrawBezierLine,
515
        InsertPDFButton,
516
        InsertPDFTextfield,
517
        InsertPDFCheckbox,
518
        InsertPDFCombobox,
519
        InsertPDFListbox,
520
        InsertPDFTextAnnotation,
521
        InsertPDFLinkAnnotation,
522
        DrawFreehandLine,
523
        DrawTable,
524
        PanningMode,
525
        MeasurementTool,
1814 cbradney 526
        EditGradientVectors,
1840 fschmid 527
        EyeDropper,
528
        CopyProperties
1065 cbradney 529
};
844 fschmid 530
 
1641 cbradney 531
 
532
 
838 cbradney 533
#endif