Subversion Repositories Scribus

Rev

Rev 1065 | Rev 1194 | 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>
10
#include <qvaluevector.h> 
11
#include <qstring.h>
839 cbradney 12
#include <vector>
838 cbradney 13
 
14
#include "scfonts.h"
15
#include "cmykcolor.h"
16
#include "fpointarray.h"
17
#include "vgradient.h"
18
#include "pageitem.h"
19
 
20
/* Struktur fuer Pageitem Text */
1065 cbradney 21
struct ScText
844 fschmid 22
{
1065 cbradney 23
        bool cselect;
844 fschmid 24
        int csize;
25
        int cshade;
26
        int cshade2;
27
        int cstyle;
28
        int cab;
1065 cbradney 29
        int cscale;
30
        double cextra;
31
        double xp;
32
        double yp;
844 fschmid 33
        int PtransX;
34
        int PtransY;
35
        double PRot;
1065 cbradney 36
        QString cfont;
37
        QString ccolor;
38
        QString cstroke;
39
        QString ch;
844 fschmid 40
};
838 cbradney 41
 
1065 cbradney 42
struct CopyPasteBuffer
844 fschmid 43
{
44
        int PType;
45
        double Xpos;
46
        double Ypos;
47
        double Width;
48
        double Height;
49
        double RadRect;
50
        int FrameType;
51
        bool ClipEdited;
52
        double Pwidth;
53
        QString Pcolor;
54
        QString Pcolor2;
55
        int Shade;
56
        int Shade2;
57
        QString GrColor;
58
        QString GrColor2;
59
        int GrShade;
60
        int GrShade2;
61
        VGradient fill_gradient;
62
        int GrType;
63
        double GrStartX;
64
        double GrStartY;
65
        double GrEndX;
66
        double GrEndY;
67
        QString TxtStroke;
68
        QString TxtFill;
69
        int ShTxtStroke;
70
        int ShTxtFill;
71
        int TxtScale;
72
        int TxTStyle;
73
        double Rot;
74
        int PLineArt;
75
        int PLineJoin;
76
        int PLineEnd;
77
        double LineSp;
78
        double ExtraV;
79
        double LocalScX;
80
        double LocalScY;
81
        double LocalX;
82
        double LocalY;
83
        bool PicArt;
84
        int flippedH;
85
        int flippedV;
86
        double BBoxX;
87
        double BBoxH;
88
        bool isPrintable;
89
        bool isBookmark;
90
        int BMnr;
91
        bool isAnnotation;
92
        int AnType;
93
        QString AnAction;
94
        QString An_E_act;
95
        QString An_X_act;
96
        QString An_D_act;
97
        QString An_Fo_act;
98
        QString An_Bl_act;
99
        QString An_K_act;
100
        QString An_F_act;
101
        QString An_V_act;
102
        QString An_C_act;
103
        QString An_Extern;
104
        int AnZiel;
105
        int AnActType;
106
        QString AnName;
107
        QString AnToolTip;
108
        QString AnRollOver;
109
        QString AnDown;
110
        QString AnBColor;
111
        int AnBwid;
112
        int AnBsty;
113
        int AnFeed;
114
        int AnFlag;
115
        int AnMaxChar;
116
        int AnVis;
117
        int AnFont;
118
        int AnChkStil;
119
        int AnFormat;
120
        bool AnIsChk;
121
        bool AnAAact;
122
        bool AnHTML;
123
        bool AnUseIcons;
124
        int AnIPlace;
125
        int AnScaleW;
126
        double Extra;
127
        double TExtra;
128
        double BExtra;
129
        double RExtra;
130
        QString Pfile;
131
        QString Pfile2;
132
        QString Pfile3;
133
        QString IProfile;
134
        QString EmProfile;
135
        int IRender;
136
        bool UseEmbedded;
1065 cbradney 137
        QString itemText;
844 fschmid 138
        QPointArray Clip;
139
        FPointArray PoLine;
140
        FPointArray ContourLine;
141
        bool PoShow;
142
        double BaseOffs;
143
        bool Textflow;
144
        bool Textflow2;
145
        bool UseContour;
1065 cbradney 146
        int textAlignment;
844 fschmid 147
        QString IFont;
148
        int ISize;
149
        QValueStack<int> Groups;
150
        int LayerNr;
151
        bool ScaleType;
152
        bool AspectRatio;
153
        bool Locked;
154
        bool LockRes;
155
        double Transparency;
156
        double TranspStroke;
157
        bool Reverse;
158
        bool InvPict;
159
        QString NamedLStyle;
160
        QString Language;
161
        QString guiLanguage;
162
        int Cols;
163
        double ColGap;
164
        QValueList<double> TabValues;
165
        QValueList<double> DashValues;
166
        double DashOffset;
167
        bool isTableItem;
168
        bool TopLine;
169
        bool LeftLine;
170
        bool RightLine;
171
        bool BottomLine;
172
        int LeftLinkID;
173
        int RightLinkID;
174
        int TopLinkID;
175
        int BottomLinkID;
176
        int startArrowIndex;
177
        int endArrowIndex;
178
};
838 cbradney 179
 
1065 cbradney 180
  /** Pagemargins */
181
struct MarginStruct
844 fschmid 182
{
183
        double Top;
184
        double Left;
185
        double Right;
186
        double Bottom;
187
};
838 cbradney 188
 
1065 cbradney 189
struct ParagraphStyle
844 fschmid 190
{
191
        QString Vname;
192
        double LineSpa;
1065 cbradney 193
        int textAlignment;
844 fschmid 194
        double Indent;
195
        double First;
1065 cbradney 196
        double gapBefore;
197
        double gapAfter;
844 fschmid 198
        QString Font;
199
        int FontSize;
200
        QValueList<double> TabValues;
201
        bool Drop;
202
        int DropLin;
203
        int FontEffect;
204
        QString FColor;
205
        int FShade;
206
        QString SColor;
207
        int SShade;
208
        bool BaseAdj;
209
};
838 cbradney 210
 
1065 cbradney 211
struct CMSData
844 fschmid 212
{
213
        QString DefaultMonitorProfile;
214
        QString DefaultPrinterProfile;
215
        QString DefaultInputProfile;
216
        QString DefaultInputProfile2;
217
        int ComponentsInput2;
218
        int ComponentsPrinter;
219
        int DefaultIntentMonitor;
220
        int DefaultIntentMonitor2;
221
        int DefaultIntentPrinter;
222
        bool CMSinUse;
223
        bool SoftProofOn;
224
        bool GamutCheck;
225
        bool BlackPoint;
226
} ;
838 cbradney 227
 
844 fschmid 228
struct UndoData
229
{
230
        PageItem* Item;
231
        uint PageNr;
232
        uint ItemNr;
233
        double Xpos;
234
        double Ypos;
235
        double Width;
236
        double Height;
237
        double Rot;
238
        double Gx;
239
        double Gy;
240
        double Gw;
241
        double Gh;
242
        int UnCode;
243
};
838 cbradney 244
 
1065 cbradney 245
struct SingleLine
844 fschmid 246
{
247
        double Width;
248
        int Dash;
249
        int LineEnd;
250
        int LineJoin;
251
        QString Color;
252
        int Shade;
253
};
838 cbradney 254
 
1065 cbradney 255
struct ArrowDesc
844 fschmid 256
{
257
        QString name;
258
        bool userArrow;
259
        FPointArray points;
260
};
838 cbradney 261
 
844 fschmid 262
struct Layer
263
{
264
        int LNr;
265
        int Level;
266
        QString Name;
1065 cbradney 267
        bool isPrintable;
268
        bool isViewable;
844 fschmid 269
};
838 cbradney 270
 
1065 cbradney 271
struct PDFPresentationData
844 fschmid 272
{
1065 cbradney 273
        int pageEffectDuration;
274
        int pageViewDuration;
275
        int effectType;
844 fschmid 276
        int Dm;
277
        int M;
278
        int Di;
279
};
838 cbradney 280
 
1065 cbradney 281
struct LPIData
844 fschmid 282
{
283
        int Frequency;
284
        int Angle;
285
        int SpotFunc;
286
};
838 cbradney 287
 
1065 cbradney 288
struct PDFOptions
844 fschmid 289
{
290
        bool Thumbnails;
291
        bool Articles;
292
        bool Compress;
293
        int CompressMethod;
294
        int Quality;
295
        bool RecalcPic;
296
        bool Bookmarks;
297
        int PicRes;
298
        int Version;
299
        int Resolution;
300
        int Binding;
301
        QValueList<QString> EmbedList;
302
        QValueList<QString> SubsetList;
303
        bool MirrorH;
304
        bool MirrorV;
305
        int RotateDeg;
306
        bool PresentMode;
1065 cbradney 307
        QValueList<PDFPresentationData> PresentVals;
844 fschmid 308
        QString Datei;
309
        bool UseRGB;
310
        bool UseProfiles;
311
        bool UseProfiles2;
312
        bool UseLPI;
1065 cbradney 313
        QMap<QString,LPIData> LPISettings;
844 fschmid 314
        QString SolidProf;
315
        int SComp;
316
        QString ImageProf;
317
        bool EmbeddedI;
318
        int Intent2;
319
        QString PrintProf;
320
        QString Info;
321
        int Intent;
322
        double BleedTop;
323
        double BleedLeft;
324
        double BleedRight;
325
        double BleedBottom;
326
        bool Encrypt;
327
        QString PassOwner;
328
        QString PassUser;
329
        int Permissions;
330
};
838 cbradney 331
 
844 fschmid 332
struct Keys
333
{
334
        QString Name;
335
        int MenuID;
336
        int KeyID;
337
};
838 cbradney 338
 
844 fschmid 339
/** Definition der Farbenlisten */
1065 cbradney 340
typedef QMap<QString,CMYKColor> ColorList;
838 cbradney 341
 
1065 cbradney 342
struct typoPrefs
844 fschmid 343
{
344
        int valueSuperScript;
345
        int scalingSuperScript;
346
        int valueSubScript;
347
        int scalingSubScript;
348
        int valueSmallCaps;
349
        int autoLineSpacing;
350
        double valueBaseGrid;
351
        double offsetBaseGrid;
352
};
838 cbradney 353
 
1065 cbradney 354
struct windowPrefs
844 fschmid 355
{
356
        int xPosition;
357
        int yPosition;
358
        int width;
359
        int height;
360
        bool visible;
361
        bool docked;
362
};
363
 
1065 cbradney 364
struct guidesPrefs
879 fschmid 365
{
366
        bool gridShown;
367
        QColor majorColor;
368
        double majorGrid;
369
        double minorGrid;
370
        QColor minorColor;
371
        double guideRad;
372
        int grabRad;
373
        bool framesShown;
374
        bool guidesShown;
375
        bool marginsShown;
376
        bool baseShown;
377
        bool linkShown;
378
        bool showPic;
1187 fschmid 379
        bool before;
879 fschmid 380
        QColor guideColor;
381
        QColor baseColor;
382
        QColor margColor;
383
};
384
 
1065 cbradney 385
struct ApplicationPrefs
844 fschmid 386
{
387
        SCFonts AvailFonts;
1065 cbradney 388
        QValueList<ArrowDesc> arrowStyles;
844 fschmid 389
        QString DefFont;
390
        int DefSize;
1065 cbradney 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;
844 fschmid 398
        QString Dpen;
399
        QString Dbrush;
400
        int Dshade;
401
        int Dshade2;
402
        int DLineArt;
403
        double Dwidth;
404
        QString DpenLine;
405
        QString DpenText;
406
        QString DstrokeText;
407
        int DshadeLine;
408
        double DwidthLine;
409
        int DLstyleLine;
410
        int DstartArrow;
411
        int DendArrow;
412
        int MagMin;
413
        int MagMax;
414
        int MagStep;
415
        QString DbrushPict;
416
        int ShadePict;
417
        double ScaleX;
418
        double ScaleY;
1065 cbradney 419
        int docUnitIndex;
420
        windowPrefs mainToolBarSettings;
421
        windowPrefs pdfToolBarSettings;
422
        windowPrefs mPaletteSettings;
423
        windowPrefs measurePalSettings;
424
        windowPrefs treePalSettings;
425
        windowPrefs nodePalSettings;
426
        windowPrefs mainWinSettings;
427
        windowPrefs scrapPalSettings;
428
        windowPrefs layerPalSettings;
429
        windowPrefs pagePalSettings;
430
        windowPrefs bookmPalSettings;
844 fschmid 431
        bool SepalT;
432
        bool SepalN;
433
        int PSize;
434
        bool SaveAtQ;
1065 cbradney 435
        bool marginColored;
844 fschmid 436
        QStringList RecentDocs;
437
        uint RecentDCount;
1065 cbradney 438
        CMSData DCMSset;
844 fschmid 439
        QMap<int,Keys> KeyActions;
440
        int PolyC;
441
        int PolyFd;
442
        double PolyF;
443
        bool PolyS;
444
        double PolyR;
445
        QString PrinterName;
446
        QString PrinterFile;
447
        QString PrinterCommand;
448
        int PageFormat;
449
        int Ausrichtung;
450
        double PageBreite;
451
        double PageHoehe;
452
        double RandOben;
453
        double RandUnten;
454
        double RandLinks;
455
        double RandRechts;
456
        bool DoppelSeiten;
457
        bool ErsteLinks;
458
        bool ScaleType;
459
        bool AspectRatio;
460
        int MinWordLen;
461
        int HyCount;
462
        QString Language;
463
        QString guiLanguage;
464
        bool Automatic;
465
        bool AutoCheck;
466
        QString DocDir;
467
        QString ProfileDir;
468
        QString ScriptDir;
469
        QString TemplateDir;
470
        QMap<QString,QString> GFontSub;
471
        bool AutoSave;
472
        int AutoSaveTime;
473
        double DisScale;
474
        int DCols;
475
        double DGap;
476
        QString DColorSet;
477
        QStringList CustomColorSets;
478
        bool PrPr_Mode;
479
        bool Gcr_Mode;
480
        bool PrPr_AlphaText;
481
        bool PrPr_AlphaGraphics;
482
        bool PrPr_Transparency;
483
        bool PrPr_C;
484
        bool PrPr_M;
485
        bool PrPr_Y;
486
        bool PrPr_K;
487
        QString gs_exe;
488
        bool gs_antiText;
489
        bool gs_antiGraph;
490
        QString gimp_exe;
491
        bool ClipMargin;
492
        bool GCRMode;
493
        QColor STEcolor;
494
        QString STEfont;
495
        double ScratchLeft;
496
        double ScratchRight;
497
        double ScratchTop;
498
        double ScratchBottom;
499
};
500
 
501
struct PrintOptions
502
{
838 cbradney 503
        QString printer;
504
        QString filename;
505
        bool toFile;
506
        bool useAltPrintCommand;
507
        QString printerCommand;
508
        int PSLevel;
509
        bool outputSeparations;
510
        QString separationName;
511
        bool useColor;
512
        bool mirrorH;
513
        bool mirrorV;
514
        bool useICC;
515
        bool doGCR;
516
        int copies;
517
        std::vector<int> pageNumbers;
518
        QString printerOptions;
519
};
520
 
844 fschmid 521
typedef QMap<QString,QString> ProfilesL;
1065 cbradney 522
typedef QValueVector<SingleLine> multiLine;
523
enum AppMode
524
{
525
        NormalMode,
526
        DrawShapes,
527
        StartStoryEditor,
528
        DrawPicture,
529
        DrawText,
530
        Magnifier,
531
        EditMode,
532
        DrawLine,
533
        Rotation,
534
        LinkFrames,
535
        UnlinkFrames,
536
        DrawRegularPolygon,
537
        DrawBezierLine,
538
        InsertPDFButton,
539
        InsertPDFTextfield,
540
        InsertPDFCheckbox,
541
        InsertPDFCombobox,
542
        InsertPDFListbox,
543
        InsertPDFTextAnnotation,
544
        InsertPDFLinkAnnotation,
545
        DrawFreehandLine,
546
        DrawTable,
547
        PanningMode,
548
        MeasurementTool,
549
        EditGradientVectors
550
};
844 fschmid 551
 
838 cbradney 552
#endif
553