Subversion Repositories Scribus

Rev

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

Rev Author Line No. Line
3 paul 1
/****************************************************************************
2
** Form implementation generated from reading ui file 'Annot.ui'
3
**
4
** Created: Tue Feb 19 22:31:55 2002
5
**      by:  The User Interface Compiler (uic)
6
**
7
** WARNING! All changes made in this file will be lost!
8
****************************************************************************/
9
#include "annot.h"
10
#include "annot.moc"
11
#include "editor.h"
12
#include "selfield.h"
13
#include "customfdialog.h"
14
#include "buttonicon.h"
392 Franz 15
#include "mpalette.h"
3 paul 16
#include <qstringlist.h>
17
#include <qdatetime.h>
18
#include <qimage.h>
19
#include <qpixmap.h>
415 Franz 20
#include "prefsfile.h"
3 paul 21
 
201 Franz 22
extern QImage LoadPict(QString fn, bool *gray = 0);
3 paul 23
extern QPixmap loadIcon(QString nam);
415 Franz 24
extern PrefsFile* prefsFile;
3 paul 25
 
1065 cbradney 26
Annot::Annot(QWidget* parent, PageItem *it, int Seite, int b, int h, ColorList Farben, ScribusView* vie)
225 Franz 27
                : QDialog( parent, "AN", true, 0 )
3 paul 28
{
225 Franz 29
        setCaption( tr( "Field Properties" ) );
30
        setIcon(loadIcon("AppIcon.png"));
31
        item = it;
32
        Breite = b;
33
        Hoehe = h;
34
        OriBreite = b;
35
        OriHoehe = h;
36
        view = vie;
161 Franz 37
        MaxSeite = Seite;
225 Franz 38
        QStringList tl;
415 Franz 39
        dirs = prefsFile->getContext("dirs");
161 Franz 40
        if ((item->AnActType == 2) || (item->AnActType == 7))
41
        {
225 Franz 42
                QString tm = item->AnAction;
43
                tl = tl.split(" ", tm);
161 Franz 44
        }
45
        else
46
        {
47
                tl.append("0");
48
                tl.append("0");
49
        }
3 paul 50
 
225 Franz 51
        AnnotLayout = new QVBoxLayout( this );
52
        AnnotLayout->setSpacing( 6 );
53
        AnnotLayout->setMargin( 11 );
3 paul 54
 
225 Franz 55
        Layout1 = new QHBoxLayout;
56
        Layout1->setSpacing( 6 );
57
        Layout1->setMargin( 0 );
3 paul 58
 
225 Franz 59
        TextLabel1 = new QLabel( this, "TextLabel1" );
60
        TextLabel1->setText( tr( "Type:" ) );
61
        Layout1->addWidget( TextLabel1 );
62
 
63
        ComboBox1 = new QComboBox( true, this, "ComboBox1" );
181 Franz 64
        QString tmp[] = { tr("Button"), tr("Text Field"), tr("Check Box"), tr("Combo Box"), tr("List Box")};
167 Franz 65
        size_t array = sizeof(tmp) / sizeof(*tmp);
66
        for (uint a = 0; a < array; ++a)
225 Franz 67
                ComboBox1->insertItem(tmp[a]);
68
        ComboBox1->setEditable(false);
69
        Layout1->addWidget( ComboBox1 );
70
        AnnotLayout->addLayout( Layout1 );
71
        ComboBox1->setCurrentItem(item->AnType-2);
3 paul 72
 
225 Franz 73
        Fram = new QWidgetStack(this);
74
        AnnotLayout->addWidget( Fram );
3 paul 75
 
225 Franz 76
        GroupBox10 = new QGroupBox( this, "GroupBox1" );
77
        GroupBox10->setGeometry( QRect( 11, 41, 360, 350 ) );
78
        GroupBox10->setTitle( tr( "Properties" ) );
79
        GroupBox10->setColumnLayout(0, Qt::Vertical );
80
        GroupBox10->layout()->setSpacing( 5 );
81
        GroupBox10->layout()->setMargin( 10 );
82
        GroupBox10Layout = new QVBoxLayout( GroupBox10->layout() );
83
        GroupBox10Layout->setAlignment( Qt::AlignTop );
3 paul 84
 
225 Franz 85
        Layout60 = new QGridLayout( 0, 1, 1, 0, 5, "Layout6");
86
        TextLabel20 = new QLabel( GroupBox10, "TextLabel2" );
87
        TextLabel20->setText( tr( "Name:" ) );
88
        Layout60->addWidget( TextLabel20, 0, 0 );
3 paul 89
 
225 Franz 90
        Tip = new QLineEdit( GroupBox10, "Tip" );
161 Franz 91
        Tip->setText(item->AnToolTip);
225 Franz 92
        Layout60->addWidget( Tip, 1, 1 );
3 paul 93
 
392 Franz 94
        Name = new NameWidget(GroupBox10);
1361 tsoots 95
        Name->setText(item->itemName());
225 Franz 96
        Layout60->addWidget( Name, 0, 1 );
1361 tsoots 97
        OldName = item->itemName();
3 paul 98
 
225 Franz 99
        TextLabel30 = new QLabel( GroupBox10, "TextLabel3" );
100
        TextLabel30->setText( tr( "Tool-Tip:" ) );
101
        Layout60->addWidget( TextLabel30, 1, 0);
102
        GroupBox10Layout->addLayout( Layout60 );
3 paul 103
 
225 Franz 104
        TabWidget2 = new QTabWidget( GroupBox10, "TabWidget2" );
3 paul 105
 
225 Franz 106
        tab = new QWidget( TabWidget2, "tab" );
107
        tabLayout = new QVBoxLayout( tab, 10, 5, "tabLayout");
3 paul 108
 
225 Franz 109
        GroupBox40 = new QGroupBox( tab, "GroupBox40" );
110
        GroupBox40->setTitle( tr( "Text" ) );
111
        GroupBox40->setColumnLayout(0, Qt::Vertical );
112
        GroupBox40->layout()->setSpacing( 5 );
113
        GroupBox40->layout()->setMargin( 10 );
114
        GroupBox40Layout = new QGridLayout( GroupBox40->layout() );
115
        GroupBox40Layout->setAlignment( Qt::AlignTop );
116
        TextLabel60 = new QLabel( GroupBox40, "TextLabel6" );
351 Franz 117
        TextLabel60->setText( tr( "Font for use with PDF 1.3:" ) );
225 Franz 118
        GroupBox40Layout->addWidget( TextLabel60, 0, 0 );
119
        Schrift = new QComboBox( true, GroupBox40, "Schrift" );
215 Franz 120
        /* PFJ - 28/02/04 - Altered from char* to QString. Renamed to fonts and the
121
                            loop changed from uint to int and the name to propogate */
225 Franz 122
        /* FS - 08.03.04 - loop variable must be uint otherwise you get a compiler warning */
123
        QString fonts[]={"Courier", "Courier Bold", "Courier Italic",
124
                         "Courier Bold Italic", "Helvetica",
125
                         "Helvetica Bold", "Helvetica Italic", "Helvetica Bold Italic",
126
                         "Times", "Times Bold",
127
                         "Times Italic", "Times Bold Italic", "Zapf Dingbats",
128
                         "Symbols"};
215 Franz 129
        size_t fontsArray = sizeof(fonts) / sizeof(*fonts);
130
        for (uint propogate = 0; propogate < fontsArray; ++propogate)
131
                Schrift->insertItem(fonts[propogate]);
225 Franz 132
        Schrift->setEditable(false);
161 Franz 133
        Schrift->setCurrentItem(item->AnFont);
225 Franz 134
        GroupBox40Layout->addMultiCellWidget( Schrift, 0, 0, 1, 2);
135
        tabLayout->addWidget( GroupBox40 );
3 paul 136
 
225 Franz 137
        Layout10 = new QHBoxLayout( 0, 0, 5, "Layout1");
138
        GroupBox20 = new QGroupBox( tab, "GroupBox2" );
139
        GroupBox20->setTitle( tr( "Border" ) );
140
        GroupBox20->setColumnLayout(0, Qt::Vertical );
141
        GroupBox20->layout()->setSpacing( 5 );
142
        GroupBox20->layout()->setMargin( 10 );
143
        GroupBox20Layout = new QGridLayout( GroupBox20->layout() );
144
        GroupBox20Layout->setAlignment( Qt::AlignTop );
145
        TextLabel40a = new QLabel( GroupBox20, "TextLabel4a" );
146
        TextLabel40a->setText( tr( "Color:" ) );
147
        GroupBox20Layout->addWidget( TextLabel40a, 0, 0 );
148
        BorderC = new QComboBox( true, GroupBox20, "BorderC" );
1065 cbradney 149
        ColorList::Iterator cit;
161 Franz 150
        QPixmap pm;
225 Franz 151
        BorderC->insertItem( tr("None"));
152
        if (item->AnBColor == "None")
153
                BorderC->setCurrentItem(BorderC->count()-1);
154
        pm = QPixmap(15, 15);
161 Franz 155
        for (cit = Farben.begin(); cit != Farben.end(); ++cit)
156
        {
157
                pm.fill(Farben[cit.key()].getRGBColor());
158
                BorderC->insertItem(pm, cit.key());
225 Franz 159
                if (cit.key() == item->AnBColor)
160
                        BorderC->setCurrentItem(BorderC->count()-1);
161 Franz 161
        }
225 Franz 162
        BorderC->setEditable(false);
163
        GroupBox20Layout->addWidget( BorderC, 0, 1 );
164
        TextLabel40 = new QLabel( GroupBox20, "TextLabel4" );
165
        TextLabel40->setText( tr( "Width:" ) );
166
        GroupBox20Layout->addWidget( TextLabel40, 1, 0 );
167
        BorderW = new QComboBox( true, GroupBox20, "BorderW" );
215 Franz 168
        /* PFJ - 28/02/04 - Altered to the QString/size_t/for style */
169
        QString borders[] = {tr("None"), tr("Thin"), tr("Normal"), tr("Wide")};
170
        size_t bordersArray = sizeof(borders) / sizeof(*borders);
171
        for (uint propogate = 0; propogate < bordersArray; ++propogate)
172
                BorderW->insertItem(borders[propogate]);
225 Franz 173
        BorderW->setEditable(false);
161 Franz 174
        BorderW->setCurrentItem(item->AnBwid);
225 Franz 175
        GroupBox20Layout->addWidget( BorderW, 1, 1 );
176
        TextLabel50 = new QLabel( GroupBox20, "TextLabel5" );
177
        TextLabel50->setText( tr( "Style:" ) );
178
        GroupBox20Layout->addWidget( TextLabel50, 2, 0 );
179
        BorderS = new QComboBox( true, GroupBox20, "BorderS" );
215 Franz 180
        /* PFJ - 28/02/04 - Altered to the QString/size_t/for style */
181
        QString borders2[] = {tr("Solid"), tr("Dashed"), tr("Underline"),
225 Franz 182
                              tr("Beveled"), tr("Inset")};
215 Franz 183
        size_t borders2Array = sizeof(borders2) / sizeof(*borders2);
184
        for (uint propogate = 0; propogate < borders2Array; ++propogate)
185
                BorderS->insertItem(borders2[propogate]);
225 Franz 186
        BorderS->setEditable(false);
161 Franz 187
        BorderS->setCurrentItem(item->AnBsty);
225 Franz 188
        GroupBox20Layout->addWidget( BorderS, 2, 1 );
189
        Layout10->addWidget( GroupBox20 );
3 paul 190
 
225 Franz 191
        GroupBox30 = new QGroupBox( tab, "GroupBox3" );
192
        GroupBox30->setTitle( tr( "Other" ) );
193
        GroupBox30->setColumnLayout(0, Qt::Vertical );
194
        GroupBox30->layout()->setSpacing( 5 );
195
        GroupBox30->layout()->setMargin( 10 );
196
        GroupBox30Layout = new QGridLayout( GroupBox30->layout() );
197
        GroupBox30Layout->setAlignment( Qt::AlignTop );
198
        ReadOnly = new QCheckBox( GroupBox30, "ReadOnly" );
199
        ReadOnly->setText( tr( "Read Only" ) );
161 Franz 200
        if (item->AnType == 2)
201
                ReadOnly->setEnabled(false);
202
        ReadOnly->setChecked(item->AnFlag & 1);
225 Franz 203
        GroupBox30Layout->addMultiCellWidget( ReadOnly, 0, 0, 0, 1 );
204
        Required = new QCheckBox( GroupBox30, "ReadOnly" );
205
        Required->setText( tr( "Required" ) );
161 Franz 206
        if (item->AnType == 2)
207
                Required->setEnabled(false);
208
        Required->setChecked(item->AnFlag & 2);
225 Franz 209
        GroupBox30Layout->addMultiCellWidget( Required, 1, 1, 0, 1 );
210
        NoExport = new QCheckBox( GroupBox30, "NoExport" );
211
        NoExport->setText( tr( "Don't Export Value" ) );
161 Franz 212
        if (item->AnType == 2)
213
                NoExport->setEnabled(false);
214
        NoExport->setChecked(item->AnFlag & 4);
225 Franz 215
        GroupBox30Layout->addMultiCellWidget( NoExport, 2, 2, 0, 1 );
216
        TextLabel90 = new QLabel( GroupBox30, "TextLabel9" );
217
        TextLabel90->setText( tr( "Visibility:" ) );
218
        GroupBox30Layout->addWidget( TextLabel90, 3, 0 );
219
        Visib = new QComboBox( true, GroupBox30, "Visib" );
215 Franz 220
        /* PFJ - 28/02/04 - Altered to the QString/size_t/for style */
225 Franz 221
        QString visible[] = {tr("Visible"), tr("Hidden"), tr("No Print"),
222
                             tr("No View")};
215 Franz 223
        size_t visibleArray = sizeof(visible) / sizeof(*visible);
224
        for (uint propogate = 0; propogate < visibleArray; ++propogate)
225
                Visib->insertItem(visible[propogate]);
225 Franz 226
        Visib->setEditable(false);
161 Franz 227
        Visib->setCurrentItem(item->AnVis);
225 Franz 228
        GroupBox30Layout->addWidget( Visib, 3, 1 );
229
        Layout10->addWidget( GroupBox30 );
230
        tabLayout->addLayout( Layout10 );
231
        TabWidget2->insertTab( tab, tr( "Appearance" ) );
3 paul 232
 
225 Franz 233
        tab_3 = new QWidget( TabWidget2, "tab_3" );
234
        tabLayout_3 = new QVBoxLayout( tab_3, 11, 6, "tabLayout_3");
235
        FramOp = new QWidgetStack(tab_3);
236
        Frame4a = new QGroupBox( tab_3, "GroupBox1" );
237
        Frame4a->setTitle("");
238
        Frame4a->setFrameShape( QFrame::NoFrame );
239
        Frame4a->setColumnLayout(0, Qt::Vertical );
240
        Frame4a->layout()->setSpacing( 0 );
241
        Frame4a->layout()->setMargin( 0 );
242
        Frame4aLayout = new QGridLayout( Frame4a->layout());
243
        GroupBox40a = new QGroupBox( Frame4a, "GroupBox40" );
244
        GroupBox40a->setTitle( tr( "Text" ) );
245
        GroupBox40a->setColumnLayout(0, Qt::Vertical );
246
        GroupBox40a->layout()->setSpacing( 5 );
247
        GroupBox40a->layout()->setMargin( 10 );
248
        GroupBox40aLayout = new QGridLayout( GroupBox40a->layout() );
249
        GroupBox40aLayout->setAlignment( Qt::AlignTop );
161 Franz 250
        CheckBox30 = new QLabel( GroupBox40a, "CheckBox3" );
251
        CheckBox30->setText( tr( "Text for Button Down" ) );
252
        GroupBox40aLayout->addMultiCellWidget( CheckBox30, 0, 0, 0, 1 );
253
        CheckBox40 = new QLabel( GroupBox40a, "CheckBox4" );
254
        CheckBox40->setText( tr( "Text for Roll Over" ) );
255
        GroupBox40aLayout->addMultiCellWidget( CheckBox40, 1, 1, 0, 1 );
256
        DownT = new QLineEdit( GroupBox40a, "DownT" );
257
        DownT->setText(item->AnDown);
258
        GroupBox40aLayout->addWidget( DownT, 0, 2 );
259
        TextO = new QLineEdit( GroupBox40a, "TextO" );
260
        TextO->setText(item->AnRollOver);
261
        GroupBox40aLayout->addWidget( TextO, 1, 2 );
225 Franz 262
        Frame4aLayout->addMultiCellWidget( GroupBox40a, 0, 0, 0, 1 );
3 paul 263
 
225 Franz 264
        OptIcons = new QGroupBox( Frame4a, "OptIcons" );
265
        OptIcons->setTitle( tr( "Icons" ) );
266
        OptIcons->setColumnLayout(0, Qt::Vertical );
267
        OptIcons->layout()->setSpacing( 6 );
268
        OptIcons->layout()->setMargin( 11 );
269
        OptIconsLayout = new QVBoxLayout( OptIcons->layout() );
270
        OptIconsLayout->setAlignment( Qt::AlignTop );
161 Franz 271
        UseIcons = new QCheckBox(OptIcons, "UIc");
272
        UseIcons->setText( tr("Use Icons"));
273
        UseIcons->setChecked(item->AnUseIcons);
274
        OptIconsLayout->addWidget(UseIcons);
225 Franz 275
        Layout17 = new QHBoxLayout( 0, 0, 6, "Layout17");
3 paul 276
 
225 Franz 277
        Layout14 = new QGridLayout( 0, 0, 6, "Layout14");
278
        IconN = new QPushButton( OptIcons, "IconN" );
279
        IconN->setText( tr( "Normal" ) );
280
        Layout14->addMultiCellWidget( IconN, 0, 0, 0, 2);
281
        NiconPrev = new QLabel( OptIcons, "NiconPrev" );
282
        NiconPrev->setMinimumSize( QSize( 25, 25 ) );
283
        NiconPrev->setMaximumSize( QSize( 25, 25 ) );
284
        NiconPrev->setFrameShape( QLabel::Panel );
285
        NiconPrev->setFrameShadow( QLabel::Raised );
286
        NiconPrev->setScaledContents( true );
287
        Layout14->addWidget( NiconPrev, 1, 1 );
288
        IconNR = new QPushButton( OptIcons, "IconNr" );
289
        IconNR->setText( tr( "Remove" ) );
290
        Layout14->addMultiCellWidget( IconNR, 2, 2, 0, 2);
291
        Layout17->addLayout( Layout14 );
3 paul 292
 
225 Franz 293
        Layout15 = new QGridLayout( 0, 0, 6, "Layout15");
294
        IconP = new QPushButton( OptIcons, "IconP" );
295
        IconP->setText( tr( "Pressed" ) );
296
        Layout15->addMultiCellWidget( IconP, 0, 0, 0, 2 );
297
        PiconPrev = new QLabel( OptIcons, "PiconPrev" );
298
        PiconPrev->setMinimumSize( QSize( 25, 25 ) );
299
        PiconPrev->setMaximumSize( QSize( 25, 25 ) );
300
        PiconPrev->setFrameShape( QLabel::Panel );
301
        PiconPrev->setFrameShadow( QLabel::Raised );
302
        PiconPrev->setScaledContents( true );
303
        Layout15->addWidget( PiconPrev, 1, 1 );
304
        IconPR = new QPushButton( OptIcons, "Iconrr" );
305
        IconPR->setText( tr( "Remove" ) );
306
        Layout15->addMultiCellWidget( IconPR, 2, 2, 0, 2);
307
        Layout17->addLayout( Layout15 );
3 paul 308
 
225 Franz 309
        Layout16 = new QGridLayout( 0, 0, 6, "Layout16");
310
        IconR = new QPushButton( OptIcons, "IconR" );
311
        IconR->setText( tr( "Roll Over" ) );
312
        Layout16->addMultiCellWidget( IconR, 0, 0, 0, 2 );
313
        RiconPrev = new QLabel( OptIcons, "RiconPrev" );
314
        RiconPrev->setMinimumSize( QSize( 25, 25 ) );
315
        RiconPrev->setMaximumSize( QSize( 25, 25 ) );
316
        RiconPrev->setFrameShape( QLabel::Panel );
317
        RiconPrev->setFrameShadow( QLabel::Raised );
318
        RiconPrev->setScaledContents( true );
319
        Layout16->addWidget( RiconPrev, 1, 1 );
320
        IconRR = new QPushButton( OptIcons, "IconrNr" );
321
        IconRR->setText( tr( "Remove" ) );
322
        Layout16->addMultiCellWidget( IconRR, 2, 2, 0, 2);
323
        Layout17->addLayout( Layout16 );
324
        OptIconsLayout->addLayout( Layout17 );
3 paul 325
 
225 Franz 326
        Layout18 = new QHBoxLayout( 0, 0, 6, "Layout18");
327
        PlaceIcon = new QPushButton( OptIcons, "PlaceIcon" );
328
        PlaceIcon->setText( tr( "Icon Placement..." ) );
329
        Layout18->addWidget( PlaceIcon );
330
        QSpacerItem* spacer_2x = new QSpacerItem( 0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum );
331
        Layout18->addItem( spacer_2x );
332
        OptIconsLayout->addLayout( Layout18 );
161 Franz 333
        IconNR->setEnabled(false);
334
        IconPR->setEnabled(false);
335
        IconRR->setEnabled(false);
336
        if (!UseIcons->isChecked())
337
        {
338
                IconN->setEnabled(false);
339
                IconP->setEnabled(false);
340
                IconR->setEnabled(false);
341
                NiconPrev->setEnabled(false);
342
                PiconPrev->setEnabled(false);
343
                RiconPrev->setEnabled(false);
344
                PlaceIcon->setEnabled(false);
345
        }
346
        else
347
        {
348
                QPixmap pmI1;
349
                QImage im;
350
                if (item->Pfile != "")
351
                {
352
                        im = LoadPict(item->Pfile);
353
                        pmI1.convertFromImage(im);
354
                        NiconPrev->setPixmap(pmI1);
355
                        IconNR->setEnabled(true);
356
                }
357
                if (item->Pfile2 != "")
358
                {
359
                        im = LoadPict(item->Pfile2);
360
                        pmI1.convertFromImage(im);
361
                        PiconPrev->setPixmap(pmI1);
362
                        IconPR->setEnabled(true);
363
                }
364
                if (item->Pfile3 != "")
365
                {
366
                        im = LoadPict(item->Pfile3);
367
                        pmI1.convertFromImage(im);
368
                        RiconPrev->setPixmap(pmI1);
369
                        IconRR->setEnabled(true);
370
                }
371
        }
225 Franz 372
        Frame4aLayout->addWidget( OptIcons, 1, 0 );
3 paul 373
 
225 Franz 374
        GroupBox30a = new QGroupBox( Frame4a, "GroupBox3" );
375
        GroupBox30a->setTitle( tr( "Highlight" ) );
376
        GroupBox30a->setColumnLayout(0, Qt::Vertical );
377
        GroupBox30a->layout()->setSpacing( 5 );
378
        GroupBox30a->layout()->setMargin( 10 );
379
        GroupBox30aLayout = new QGridLayout( GroupBox30a->layout() );
380
        GroupBox30aLayout->setAlignment( Qt::AlignTop );
381
        ComboBox7_2 = new QComboBox( true, GroupBox30a, "ComboBox7_2" );
215 Franz 382
        /* PFJ - 28/02/04 - Altered to QString/size_t/for style */
383
        QString combo[] = {tr("None"), tr("Invert"), tr("Outlined"), tr("Push")};
384
        size_t comboArray = sizeof(combo) / sizeof(*combo);
385
        for (uint propogate = 0; propogate < comboArray; ++propogate)
386
                ComboBox7_2->insertItem(combo[propogate]);
225 Franz 387
        ComboBox7_2->setEditable(false);
161 Franz 388
        ComboBox7_2->setCurrentItem(item->AnFeed);
225 Franz 389
        GroupBox30aLayout->addWidget( ComboBox7_2, 0, 0 );
390
        Frame4aLayout->addWidget( GroupBox30a, 1, 1 );
391
        FramOp->addWidget( Frame4a , 2);
3 paul 392
 
225 Franz 393
        OptTextFeld = new QGroupBox( tab_3, "OptTextFeld" );
283 Franz 394
        OptTextFeld->setTitle( "" );
225 Franz 395
        OptTextFeld->setColumnLayout(0, Qt::Vertical );
396
        OptTextFeld->layout()->setSpacing( 6 );
397
        OptTextFeld->layout()->setMargin( 11 );
398
        OptTextFeldLayout = new QVBoxLayout( OptTextFeld->layout() );
399
        OptTextFeldLayout->setAlignment( Qt::AlignTop );
400
        MultiL = new QCheckBox( OptTextFeld, "MultiL" );
401
        MultiL->setText( tr( "Multi-Line" ) );
161 Franz 402
        MultiL->setChecked(item->AnFlag & 4096);
225 Franz 403
        OptTextFeldLayout->addWidget( MultiL );
404
        Passwd = new QCheckBox( OptTextFeld, "Passwd" );
405
        Passwd->setText( tr( "Password" ) );
161 Franz 406
        Passwd->setChecked(item->AnFlag & 8192);
225 Franz 407
        OptTextFeldLayout->addWidget( Passwd );
408
        Layout8 = new QHBoxLayout( 0, 0, 5, "Layout8");
409
        Limit = new QCheckBox( OptTextFeld, "Limit" );
410
        Limit->setText( tr( "Limit of" ) );
411
        Layout8->addWidget( Limit );
412
        MaxChars = new QSpinBox( OptTextFeld, "MaxChars" );
161 Franz 413
        MaxChars->setMinValue(0);
414
        MaxChars->setMaxValue(32768);
415
        bool setter = item->AnMaxChar != -1 ? true : false;
416
        MaxChars->setValue(setter == true ? item->AnMaxChar : 0);
417
        Limit->setChecked(setter);
418
        MaxChars->setEnabled(setter);
225 Franz 419
        Layout8->addWidget( MaxChars );
420
        TextLabel2_2 = new QLabel( OptTextFeld, "TextLabel2_2" );
421
        TextLabel2_2->setText( tr( "Characters" ) );
422
        Layout8->addWidget( TextLabel2_2 );
423
        QSpacerItem* spacer_2 = new QSpacerItem( 0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum );
424
        Layout8->addItem( spacer_2 );
425
        OptTextFeldLayout->addLayout( Layout8 );
426
        NoScroll = new QCheckBox( OptTextFeld, "ncs" );
427
        NoScroll->setText( tr( "Do Not Scroll" ) );
161 Franz 428
        NoScroll->setChecked(item->AnFlag & 8388608);
225 Franz 429
        OptTextFeldLayout->addWidget( NoScroll );
430
        NoSpell = new QCheckBox( OptTextFeld, "nsp" );
431
        NoSpell->setText( tr( "Do Not Spell Check" ) );
161 Franz 432
        NoSpell->setChecked(item->AnFlag & 4194304);
225 Franz 433
        OptTextFeldLayout->addWidget( NoSpell );
434
        FramOp->addWidget( OptTextFeld , 3);
3 paul 435
 
225 Franz 436
        OptCheck = new QGroupBox( tab_3, "OptCheck" );
283 Franz 437
        OptCheck->setTitle( "" );
225 Franz 438
        OptCheck->setColumnLayout(0, Qt::Vertical );
439
        OptCheck->layout()->setSpacing( 6 );
440
        OptCheck->layout()->setMargin( 11 );
441
        OptCheckLayout = new QVBoxLayout( OptCheck->layout() );
442
        OptCheckLayout->setAlignment( Qt::AlignTop );
443
        ChkLayout = new QHBoxLayout( 0, 0, 5, "ChkLayout");
444
        CText1 = new QLabel( OptCheck, "CText1" );
445
        CText1->setText( tr( "Check Style:" ) );
446
        ChkLayout->addWidget( CText1 );
447
        ChkStil = new QComboBox( true, OptCheck, "ChkStil" );
181 Franz 448
        QString tmp_chkstil2[]={ tr("Check"), tr("Cross"), tr("Diamond"), tr("Circle"), tr("Star"), tr("Square")};
167 Franz 449
        size_t array_chk2 = sizeof(tmp_chkstil2) / sizeof(*tmp_chkstil2);
215 Franz 450
        /* PFJ - 28/02/04 - Altered from uint to int and altered var name */
451
        for (uint propogate = 0; propogate < array_chk2; ++propogate)
452
                ChkStil->insertItem(tmp_chkstil2[propogate]);
167 Franz 453
 
161 Franz 454
        ChkStil->setEditable(false);
455
        ChkStil->setCurrentItem(item->AnChkStil);
225 Franz 456
        ChkLayout->addWidget( ChkStil );
457
        QSpacerItem* spacerC = new QSpacerItem( 0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum );
458
        ChkLayout->addItem( spacerC );
459
        OptCheckLayout->addLayout( ChkLayout );
3 paul 460
 
225 Franz 461
        isChkd = new QCheckBox( OptCheck, "isChkd" );
462
        isChkd->setText( tr( "Default is Checked" ) );
161 Franz 463
        isChkd->setChecked(item->AnIsChk);
225 Franz 464
        OptCheckLayout->addWidget( isChkd );
465
        FramOp->addWidget( OptCheck, 4);
3 paul 466
 
225 Franz 467
        OptCombo = new QGroupBox( tab_3, "OptCombo" );
283 Franz 468
        OptCombo->setTitle( "" );
225 Franz 469
        OptCombo->setColumnLayout(0, Qt::Vertical );
470
        OptCombo->layout()->setSpacing( 6 );
471
        OptCombo->layout()->setMargin( 11 );
472
        OptComboLayout = new QVBoxLayout( OptCombo->layout() );
473
        OptComboLayout->setAlignment( Qt::AlignTop );
474
        CanEdit = new QCheckBox( OptCombo, "isEdit" );
475
        CanEdit->setText( tr( "Editable" ) );
161 Franz 476
        CanEdit->setChecked(item->AnFlag & 262144);
225 Franz 477
        OptComboLayout->addWidget( CanEdit );
478
        FramOp->addWidget( OptCombo, 5);
3 paul 479
 
225 Franz 480
        tabLayout_3->addWidget( FramOp );
3 paul 481
 
225 Franz 482
        TabWidget2->insertTab( tab_3, tr( "Options" ) );
3 paul 483
 
225 Franz 484
        tab_2 = new QWidget( TabWidget2, "tab_2" );
485
        tabLayout_2 = new QVBoxLayout( tab_2, 11, 6, "tabLayout_2");
3 paul 486
 
225 Franz 487
        Layout20 = new QHBoxLayout( 0, 0, 5, "Layout2");
3 paul 488
 
225 Franz 489
        TextLabel70 = new QLabel( tab_2, "TextLabel7" );
490
        TextLabel70->setText( tr( "Type:" ) );
491
        Layout20->addWidget( TextLabel70 );
3 paul 492
 
225 Franz 493
        ActionCombo = new QComboBox( true, tab_2, "ActTyp" );
215 Franz 494
        QString tmp_actcom[] = {tr("None"), tr("Java Script"), tr("Go To"),
225 Franz 495
                                tr("Submit Form"), tr("Reset Form"), tr("Import Data")};
167 Franz 496
        size_t array_act = sizeof(tmp_actcom) / sizeof(*tmp_actcom);
215 Franz 497
        /* PFJ - 28/02/04 - Altered from uint to int and var name */
498
        for (uint propogate = 0; propogate < array_act; ++propogate)
499
                ActionCombo->insertItem(tmp_actcom[propogate]);
225 Franz 500
        ActionCombo->setEditable(false);
161 Franz 501
        int tmpac = item->AnActType;
502
        if (item->AnActType < 0)
503
                tmpac = 1;
504
        ActionCombo->setCurrentItem(tmpac == 7 ? 2 : tmpac);
80 Franz 505
 
225 Franz 506
        Layout20->addWidget( ActionCombo );
507
        tabLayout_2->addLayout( Layout20 );
3 paul 508
 
225 Franz 509
        Fram2 = new QWidgetStack(tab_2);
510
        tabLayout_2->addWidget( Fram2 );
3 paul 511
 
225 Franz 512
        Frame4 = new QFrame( tab_2, "Frame4" );
513
        Frame4->setFrameShape( QFrame::NoFrame );
514
        Frame4->setFrameShadow( QFrame::Raised );
515
        Fram2->addWidget( Frame4 , 1);
3 paul 516
 
225 Franz 517
        Frame3 = new QFrame( tab_2, "Frame3" );
518
        Frame3->setFrameShape( QFrame::Box );
519
        Frame3->setFrameShadow( QFrame::Sunken );
520
        Frame3Layout = new QVBoxLayout( Frame3, 11, 6, "Frame3Layout");
521
        Layout7 = new QHBoxLayout( 0, 0, 6, "Layout7");
522
        AcText1 = new QLabel( Frame3, "AcText1" );
523
        AcText1->setText( tr( "Event:" ) );
524
        Layout7->addWidget( AcText1 );
525
        SelAction = new QComboBox( true, Frame3, "AcCombo" );
526
        QString tmp_selact[]={tr("Mouse Up"), tr("Mouse Down"), tr("Mouse Enter"),
527
                              tr("Mouse Exit"), tr("On Focus"), tr("On Blur")};
167 Franz 528
        size_t array_sel = sizeof(tmp_selact) / sizeof(*tmp_selact);
215 Franz 529
        /* PFJ - 28/02/04 - Altered from uint to int and var name */
530
        for (uint propogate = 0; propogate < array_sel; ++propogate)
531
                SelAction->insertItem(tmp_selact[propogate]);
161 Franz 532
        SelAction->setEditable(false);
225 Franz 533
        Layout7->addWidget( SelAction );
534
        QSpacerItem* spacerac = new QSpacerItem( 0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum );
535
        Layout7->addItem( spacerac );
536
        Frame3Layout->addLayout( Layout7 );
537
        AcText2 = new QLabel( Frame3, "AcText2" );
538
        AcText2->setText( tr( "Script:" ) );
539
        Frame3Layout->addWidget( AcText2 );
540
        Layout71 = new QHBoxLayout( 0, 0, 6, "Layout7");
541
        EditJava = new QTextEdit( Frame3, "EditAction" );
161 Franz 542
        if ((item->AnActType == 1) || (item->AnAAact))
543
                EditJava->setText(item->AnAction);
544
        ScrEdited = 0;
545
        SelAction->setCurrentItem(0);
546
        EditJava->setReadOnly(true);
225 Franz 547
        EditJava->setBackgroundMode(PaletteBackground);
548
        EditJava->setPaper(EditJava->paletteBackgroundColor());
549
        Layout71->addWidget( EditJava );
550
        EditJ = new QPushButton( Frame3, "EditJ" );
551
        EditJ->setText( tr( "Edit..." ) );
552
        Layout71->addWidget( EditJ );
553
        Frame3Layout->addLayout( Layout71 );
554
        Fram2->addWidget( Frame3 , 2);
3 paul 555
 
225 Franz 556
        Frame3b = new QFrame( tab_2, "Frame3b" );
557
        Frame3b->setFrameShape( QFrame::Box );
558
        Frame3b->setFrameShadow( QFrame::Sunken );
559
        Frame3bLayout = new QVBoxLayout( Frame3b, 11, 6, "Frame3Layout");
560
        SubText1 = new QLabel( Frame3b, "SubText1" );
561
        SubText1->setText( tr( "Submit to URL:" ) );
562
        Frame3bLayout->addWidget( SubText1 );
563
        SubURL = new QLineEdit( Frame3b, "SubURL" );
564
        Frame3bLayout->addWidget( SubURL );
161 Franz 565
        if (item->AnActType == 3)
566
                SubURL->setText(item->AnAction);
225 Franz 567
        SubAsHtml = new QCheckBox( Frame3b, "UseCurr" );
161 Franz 568
        SubAsHtml->setChecked(item->AnHTML);
225 Franz 569
        SubAsHtml->setText( tr( "Submit Data as HTML" ) );
570
        Frame3bLayout->addWidget( SubAsHtml );
571
        QSpacerItem* spacerSu = new QSpacerItem( 20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding );
572
        Frame3bLayout->addItem( spacerSu);
573
        Fram2->addWidget( Frame3b , 4);
3 paul 574
 
225 Franz 575
        Frame3c = new QFrame( tab_2, "Frame3b" );
576
        Frame3c->setFrameShape( QFrame::Box );
577
        Frame3c->setFrameShadow( QFrame::Sunken );
578
        Frame3cLayout = new QVBoxLayout( Frame3c, 11, 6, "Frame3Layout");
579
        SubText1a = new QLabel( Frame3c, "SubText1" );
580
        SubText1a->setText( tr( "Import Data from:" ) );
581
        Frame3cLayout->addWidget( SubText1a );
582
        SubURLa = new QLineEdit( Frame3c, "SubURL" );
583
        Frame3cLayout->addWidget( SubURLa );
161 Franz 584
        if (item->AnActType == 5)
585
                SubURLa->setText(item->AnAction);
225 Franz 586
        QSpacerItem* spacerSua = new QSpacerItem( 20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding );
587
        Frame3cLayout->addItem( spacerSua);
588
        Fram2->addWidget( Frame3c , 5);
3 paul 589
 
225 Franz 590
        GroupBox11 = new QGroupBox( tab_2, "GroupBox11" );
591
        GroupBox11->setTitle( tr( "Destination" ) );
592
        GroupBox11->setColumnLayout(0, Qt::Vertical );
593
        GroupBox11->layout()->setSpacing( 0 );
594
        GroupBox11->layout()->setMargin( 0 );
595
        GroupBox11Layout = new QGridLayout( GroupBox11->layout() );
596
        GroupBox11Layout->setAlignment( Qt::AlignTop );
597
        GroupBox11Layout->setSpacing( 6 );
598
        GroupBox11Layout->setMargin( 11 );
161 Franz 599
        LExtern = new QCheckBox(GroupBox11, "Extern");
600
        LExtern->setText( tr("To File:"));
225 Franz 601
        GroupBox11Layout->addWidget( LExtern, 0, 0 );
602
        Destfile = new QLineEdit(GroupBox11, "File");
161 Franz 603
        Destfile->setText(item->An_Extern);
604
        Destfile->setReadOnly(true);
225 Franz 605
        GroupBox11Layout->addWidget( Destfile, 0, 1 );
161 Franz 606
        ChFile = new QPushButton(GroupBox11, "Change");
607
        ChFile->setText( tr("Change..."));
225 Franz 608
        GroupBox11Layout->addWidget( ChFile, 0, 2 );
609
        TextLabel31 = new QLabel( GroupBox11, "TextLabel3" );
610
        TextLabel31->setText( tr( "Page:" ) );
611
        GroupBox11Layout->addWidget( TextLabel31, 1, 0 );
612
        SpinBox11 = new QSpinBox( GroupBox11, "SpinBox1" );
613
        SpinBox11->setMinValue(1);
614
        SpinBox11->setMaxValue(item->AnActType == 7 ? 1000 : Seite);
615
        SpinBox11->setValue(item->AnZiel+1);
616
        GroupBox11Layout->addWidget( SpinBox11, 1, 1 );
161 Franz 617
        if (item->AnActType == 7)
225 Franz 618
                Pg1 = new Navigator( GroupBox11, 100, item->AnZiel+1, view, item->An_Extern);
161 Franz 619
        else
225 Franz 620
                Pg1 = new Navigator( GroupBox11, 100, item->AnZiel, view);
621
        Pg1->setMinimumSize(QSize(Pg1->pmx.width(), Pg1->pmx.height()));
622
        GroupBox11Layout->addMultiCellWidget(Pg1, 1, 3, 2, 2);
623
        TextLabel41 = new QLabel( GroupBox11, "TextLabel4" );
624
        TextLabel41->setText( tr( "X-Pos:" ) );
625
        GroupBox11Layout->addWidget( TextLabel41, 2, 0 );
626
        SpinBox21 = new QSpinBox( GroupBox11, "SpinBox2" );
627
        SpinBox21->setSuffix( tr( " pt" ) );
628
        SpinBox21->setMaxValue(Breite);
629
        SpinBox21->setValue(tl[0].toInt());
630
        GroupBox11Layout->addWidget( SpinBox21, 2, 1 );
631
        TextLabel51 = new QLabel( GroupBox11, "TextLabel5" );
632
        TextLabel51->setText( tr( "Y-Pos:" ) );
633
        GroupBox11Layout->addWidget( TextLabel51, 3, 0 );
634
        SpinBox31 = new QSpinBox( GroupBox11, "SpinBox3" );
635
        SpinBox31->setMaxValue(Hoehe);
636
        SpinBox31->setSuffix( tr( " pt" ) );
637
        SpinBox31->setValue(Hoehe-tl[1].toInt());
638
        GroupBox11Layout->addWidget( SpinBox31, 3, 1 );
639
        Fram2->addWidget(GroupBox11, 3);
640
        TabWidget2->insertTab( tab_2, tr( "Action" ) );
161 Franz 641
        if (item->AnActType != 7)
642
        {
643
                Destfile->setEnabled(false);
644
                ChFile->setEnabled(false);
225 Franz 645
                LExtern->setChecked(false);
161 Franz 646
        }
647
        else
648
        {
649
                LExtern->setChecked(true);
650
                if (Destfile->text() != "")
651
                {
652
                        Breite = Pg1->Breite;
653
                        Hoehe = Pg1->Hoehe;
654
                }
655
        }
3 paul 656
 
225 Franz 657
        tab4 = new QWidget( TabWidget2, "privateWidget" );
658
        Layout = new QVBoxLayout( tab4, 11, 6, "Layout");
659
        FLayout = new QHBoxLayout( 0, 0, 6, "FLayout");
660
        TextForm1 = new QLabel( tab4, "TextForm1" );
661
        TextForm1->setText( tr( "Field is formatted as:" ) );
662
        FLayout->addWidget( TextForm1 );
663
        TxFormat = new QComboBox( true, tab4, "TxFormat" );
181 Franz 664
        QString tmp_txf[]={ tr("Plain"), tr("Number"), tr("Percentage"), tr("Date"), tr("Time"), tr("Custom")};
167 Franz 665
        size_t array_txf = sizeof(tmp_txf) / sizeof(*tmp_txf);
666
        for (uint a = 0; a < array_txf; ++a)
181 Franz 667
                TxFormat->insertItem(tmp_txf[a]);
161 Franz 668
        TxFormat->setEditable(false);
669
        TxFormat->setCurrentItem(item->AnFormat);
225 Franz 670
        FLayout->addWidget( TxFormat );
671
        QSpacerItem* spacer_3 = new QSpacerItem( 0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum );
672
        FLayout->addItem( spacer_3 );
673
        Layout->addLayout( FLayout );
674
        FoFram = new QWidgetStack(tab4);
3 paul 675
 
225 Franz 676
        FoFrameNone = new QFrame( tab4, "Frame7" );
677
        FoFrameNone->setFrameShape( QFrame::NoFrame );
678
        FoFrameNone->setFrameShadow( QFrame::Plain );
679
        FoFram->addWidget(FoFrameNone, 0);
3 paul 680
 
225 Franz 681
        NumbGroup = new QGroupBox( tab4, "NumbGroup" );
682
        NumbGroup->setTitle( tr( "Number Format" ) );
683
        NumbGroup->setColumnLayout(0, Qt::Vertical );
684
        NumbGroup->layout()->setSpacing( 6 );
685
        NumbGroup->layout()->setMargin( 11 );
686
        NumbGroupLayout = new QVBoxLayout( NumbGroup->layout() );
687
        NumbGroupLayout->setAlignment( Qt::AlignTop );
688
        LayoutFN1 = new QHBoxLayout( 0, 0, 6, "LayoutFN1");
689
        TextNu1 = new QLabel( NumbGroup, "TextNu1" );
690
        TextNu1->setText( tr( "Decimals:" ) );
691
        LayoutFN1->addWidget( TextNu1 );
692
        Decim = new QSpinBox( NumbGroup, "Decim" );
161 Franz 693
        Decim->setMinValue(0);
694
        Decim->setMaxValue(12);
695
        Decim->setValue(0);
225 Franz 696
        LayoutFN1->addWidget( Decim );
697
        QSpacerItem* spacer_4 = new QSpacerItem( 0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum );
698
        LayoutFN1->addItem( spacer_4 );
699
        NumbGroupLayout->addLayout( LayoutFN1 );
700
        LayoutFN2 = new QHBoxLayout( 0, 0, 6, "LayoutFN2");
701
        UseCurr = new QCheckBox( NumbGroup, "UseCurr" );
702
        UseCurr->setText( tr( "Use Currency Symbol" ) );
703
        LayoutFN2->addWidget( UseCurr );
704
        CurSym = new QLineEdit( NumbGroup, "CurSym" );
705
        LayoutFN2->addWidget( CurSym );
161 Franz 706
        CurSym->setEnabled(false);
225 Franz 707
        QSpacerItem* spacer_5 = new QSpacerItem( 0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum );
708
        LayoutFN2->addItem( spacer_5 );
709
        NumbGroupLayout->addLayout( LayoutFN2 );
710
        PreCurr = new QCheckBox( NumbGroup, "PreCurr" );
711
        PreCurr->setText( tr( "Prepend Currency Symbol" ) );
161 Franz 712
        PreCurr->setEnabled(false);
225 Franz 713
        NumbGroupLayout->addWidget( PreCurr );
714
        NumGroup2 = new QButtonGroup( NumbGroup, "NumGroup2" );
715
        NumGroup2->setTitle( tr( "Formatting" ) );
716
        NumGroup2->setColumnLayout(0, Qt::Vertical );
717
        NumGroup2->layout()->setSpacing( 6 );
718
        NumGroup2->layout()->setMargin( 11 );
719
        NumGroup2Layout = new QGridLayout( NumGroup2->layout() );
720
        NumGroup2Layout->setAlignment( Qt::AlignTop );
721
        Format0 = new QRadioButton( NumGroup2, "Format0" );
722
        Format0->setText("9,999.99");
723
        Format0->setChecked( true );
161 Franz 724
        FormNum = 0;
225 Franz 725
        NumGroup2Layout->addWidget( Format0, 0, 0 );
726
        Format1 = new QRadioButton( NumGroup2, "Format1" );
727
        Format1->setText("9999.99");
728
        NumGroup2Layout->addWidget( Format1, 1, 0 );
729
        Format2 = new QRadioButton( NumGroup2, "Format2" );
730
        Format2->setText("9.999,99");
731
        NumGroup2Layout->addWidget( Format2, 0, 1 );
732
        Format3 = new QRadioButton( NumGroup2, "Format3" );
733
        Format3->setText("9999,99");
734
        NumGroup2Layout->addWidget( Format3, 1, 1 );
735
        NumbGroupLayout->addWidget( NumGroup2 );
161 Franz 736
        FoFram->addWidget(NumbGroup, 1);
3 paul 737
 
225 Franz 738
        PercGroup = new QGroupBox( tab4, "NumbGroup" );
739
        PercGroup->setTitle( tr( "Percent Format" ) );
740
        PercGroup->setColumnLayout(0, Qt::Vertical );
741
        PercGroup->layout()->setSpacing( 6 );
742
        PercGroup->layout()->setMargin( 11 );
743
        PercGroupLayout = new QVBoxLayout( PercGroup->layout() );
744
        PercGroupLayout->setAlignment( Qt::AlignTop );
745
        LayoutFN1a = new QHBoxLayout( 0, 0, 6, "LayoutFN1");
746
        TextNu1a = new QLabel( PercGroup, "TextNu1" );
747
        TextNu1a->setText( tr( "Decimals:" ) );
748
        LayoutFN1a->addWidget( TextNu1a );
749
        Decim2 = new QSpinBox( PercGroup, "Decim2" );
161 Franz 750
        Decim2->setMinValue(0);
751
        Decim2->setMaxValue(12);
752
        Decim2->setValue(0);
225 Franz 753
        LayoutFN1a->addWidget( Decim2 );
754
        QSpacerItem* spacer_4a = new QSpacerItem( 0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum );
755
        LayoutFN1a->addItem( spacer_4a );
756
        PercGroupLayout->addLayout( LayoutFN1a );
757
        NumGroup2a = new QButtonGroup( PercGroup, "NumGroup2" );
758
        NumGroup2a->setTitle( tr( "Formatting" ) );
759
        NumGroup2a->setColumnLayout(0, Qt::Vertical );
760
        NumGroup2a->layout()->setSpacing( 6 );
761
        NumGroup2a->layout()->setMargin( 11 );
762
        NumGroup2aLayout = new QGridLayout( NumGroup2a->layout() );
763
        NumGroup2aLayout->setAlignment( Qt::AlignTop );
764
        Format0a = new QRadioButton( NumGroup2a, "Format0" );
765
        Format0a->setText("9,999.99");
766
        Format0a->setChecked( true );
161 Franz 767
        FormNum = 0;
225 Franz 768
        NumGroup2aLayout->addWidget( Format0a, 0, 0 );
769
        Format1a = new QRadioButton( NumGroup2a, "Format1" );
770
        Format1a->setText("9999.99");
771
        NumGroup2aLayout->addWidget( Format1a, 1, 0 );
772
        Format2a = new QRadioButton( NumGroup2a, "Format2" );
773
        Format2a->setText("9.999,99");
774
        NumGroup2aLayout->addWidget( Format2a, 0, 1 );
775
        Format3a = new QRadioButton( NumGroup2a, "Format3" );
776
        Format3a->setText("9999,99");
777
        NumGroup2aLayout->addWidget( Format3a, 1, 1 );
778
        PercGroupLayout->addWidget( NumGroup2a );
161 Franz 779
        FoFram->addWidget(PercGroup, 2);
3 paul 780
 
225 Franz 781
        DateGroup = new QGroupBox( tab4, "NumbGroup" );
782
        DateGroup->setTitle( tr( "Date Format" ) );
783
        DateGroup->setColumnLayout(0, Qt::Vertical );
784
        DateGroup->layout()->setSpacing( 6 );
785
        DateGroup->layout()->setMargin( 11 );
786
        DateGroupLayout = new QVBoxLayout( DateGroup->layout() );
787
        DateGroupLayout->setAlignment( Qt::AlignTop );
788
        LayoutFN1c = new QHBoxLayout( 0, 0, 6, "LayoutFN1");
161 Franz 789
        Format0c = new QComboBox( true, DateGroup, "DateTyp" );
617 cbradney 790
        QString tmp_form[] = {"m/d", "m/d/yy", "mm/dd/yy", "mm/yy", "d-mmm", "d-mmm-yy", "dd-mmm-yy", "yy-mm-dd",
225 Franz 791
                            "mmm-yy", "mmmm-yy", "mmm d, yyyy", "mmmm d, yyyy", "m/d/yy h:MM tt", "m/d/yy HH:MM"};
167 Franz 792
        size_t array_form = sizeof(tmp_form) / sizeof(*tmp_form);
215 Franz 793
        /* PFJ - 28/02/04 - Altered from uint to int and var name */
794
        for (uint prop = 0; prop < array_form; ++prop)
795
                Format0c->insertItem(tmp_form[prop]);
225 Franz 796
        Format0c->setEditable(false);
797
        LayoutFN1c->addWidget( Format0c );
798
        QSpacerItem* spacer_4c = new QSpacerItem( 0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum );
799
        LayoutFN1c->addItem( spacer_4c );
800
        DateGroupLayout->addLayout( LayoutFN1c );
801
        TextDa1 = new QLabel( DateGroup, "TextNu1" );
283 Franz 802
        TextDa1->setText( "" );
225 Franz 803
        DateGroupLayout->addWidget( TextDa1 );
161 Franz 804
        FoFram->addWidget(DateGroup, 3);
3 paul 805
 
225 Franz 806
        TimeGroup = new QButtonGroup( tab4, "NumbGroup" );
807
        TimeGroup->setTitle( tr( "Time Format" ) );
808
        TimeGroup->setColumnLayout(0, Qt::Vertical );
809
        TimeGroup->layout()->setSpacing( 6 );
810
        TimeGroup->layout()->setMargin( 11 );
811
        TimeGroupLayout = new QVBoxLayout( TimeGroup->layout() );
812
        TimeGroupLayout->setAlignment( Qt::AlignTop );
813
        Format0b = new QRadioButton( TimeGroup, "Format0" );
814
        Format0b->setText("HH:MM");
815
        Format0b->setChecked( true );
161 Franz 816
        FormNum = 0;
225 Franz 817
        TimeGroupLayout->addWidget( Format0b);
818
        Format1b = new QRadioButton( TimeGroup, "Format1" );
819
        Format1b->setText("h:MM tt");
820
        TimeGroupLayout->addWidget( Format1b);
821
        Format2b = new QRadioButton( TimeGroup, "Format2" );
822
        Format2b->setText("HH:MM:ss");
823
        TimeGroupLayout->addWidget( Format2b);
824
        Format3b = new QRadioButton( TimeGroup, "Format3" );
825
        Format3b->setText("h:MM:ss tt");
826
        TimeGroupLayout->addWidget( Format3b);
161 Franz 827
        FoFram->addWidget(TimeGroup, 4);
3 paul 828
 
225 Franz 829
        GroupCust = new QGroupBox( tab4, "GroupCust" );
830
        GroupCust->setTitle( tr( "Custom Scripts" ) );
831
        GroupCust->setColumnLayout(0, Qt::Vertical );
832
        GroupCust->layout()->setSpacing( 6 );
833
        GroupCust->layout()->setMargin( 11 );
834
        GroupCustLayout = new QVBoxLayout( GroupCust->layout() );
835
        GroupCustLayout->setAlignment( Qt::AlignTop );
836
        FLayout3 = new QVBoxLayout( 0, 0, 6, "FLayout3");
837
        FLayout2 = new QHBoxLayout( 0, 0, 6, "FLayout2");
838
        TextForm2 = new QLabel( GroupCust, "TextForm2" );
839
        TextForm2->setText( tr( "Format:" ) );
840
        FLayout2->addWidget( TextForm2 );
841
        EditFormat = new QPushButton( GroupCust, "EditFormat" );
842
        EditFormat->setText( tr( "Edit..." ) );
843
        EditFormat->setAutoDefault( false );
161 Franz 844
        if (item->AnFormat != 5)
225 Franz 845
                EditFormat->setEnabled( false );
846
        FLayout2->addWidget( EditFormat );
847
        FLayout3->addLayout( FLayout2 );
848
        FormatScript = new QTextEdit( GroupCust, "FormatScript" );
161 Franz 849
        if (item->AnFormat == 5)
225 Franz 850
                FormatScript->setText( item->An_F_act );
161 Franz 851
        FormatScript->setReadOnly(true);
225 Franz 852
        FormatScript->setBackgroundMode(PaletteBackground);
853
        FormatScript->setPaper(FormatScript->paletteBackgroundColor());
161 Franz 854
        FormatScript->setMaximumSize(QSize(32000,50));
225 Franz 855
        FLayout3->addWidget( FormatScript );
856
        GroupCustLayout->addLayout( FLayout3 );
857
        FLayout5 = new QVBoxLayout( 0, 0, 6, "FLayout5");
858
        FLayout4 = new QHBoxLayout( 0, 0, 6, "FLayout4");
859
        TextForm3 = new QLabel( GroupCust, "TextForm3" );
860
        TextForm3->setText( tr( "Keystroke:" ) );
861
        FLayout4->addWidget( TextForm3 );
862
        EditKeystr = new QPushButton( GroupCust, "EditKeystr" );
863
        EditKeystr->setText( tr( "Edit..." ) );
864
        EditKeystr->setAutoDefault( false );
161 Franz 865
        if (item->AnFormat != 5)
225 Franz 866
                EditKeystr->setEnabled( false );
867
        FLayout4->addWidget( EditKeystr );
868
        FLayout5->addLayout( FLayout4 );
869
        KeyScript = new QTextEdit( GroupCust, "KeyScript" );
161 Franz 870
        if (item->AnFormat == 5)
225 Franz 871
                KeyScript->setText( item->An_K_act );
161 Franz 872
        KeyScript->setReadOnly(true);
225 Franz 873
        KeyScript->setBackgroundMode(PaletteBackground);
874
        KeyScript->setPaper(KeyScript->paletteBackgroundColor());
161 Franz 875
        KeyScript->setMaximumSize(QSize(32000,50));
225 Franz 876
        FLayout5->addWidget( KeyScript );
877
        GroupCustLayout->addLayout( FLayout5 );
161 Franz 878
        FoFram->addWidget(GroupCust, 5);
3 paul 879
 
161 Franz 880
        DecodeNum();
3 paul 881
 
225 Franz 882
        Layout->addWidget( FoFram );
883
        TabWidget2->insertTab( tab4, tr( "Format" ) );
161 Franz 884
        TabWidget2->setTabEnabled(tab4, false);
3 paul 885
 
225 Franz 886
        tab_4 = new QWidget( TabWidget2, "tab_4" );
887
        tabLayout_4 = new QVBoxLayout( tab_4, 11, 6, "tabLayout_4");
3 paul 888
 
225 Franz 889
        ValidateGroup = new QButtonGroup( tab_4, "ValidateGroup" );
283 Franz 890
        ValidateGroup->setTitle( "" );
225 Franz 891
        ValidateGroup->setColumnLayout(0, Qt::Vertical );
892
        ValidateGroup->layout()->setSpacing( 6 );
893
        ValidateGroup->layout()->setMargin( 11 );
894
        ValidateGroupLayout = new QVBoxLayout( ValidateGroup->layout() );
895
        ValidateGroupLayout->setAlignment( Qt::AlignTop );
3 paul 896
 
225 Franz 897
        NoValid = new QRadioButton( ValidateGroup, "NoValid" );
898
        NoValid->setText( tr( "Value is not validated" ) );
899
        NoValid->setChecked( true );
900
        ValidateGroupLayout->addWidget( NoValid );
3 paul 901
 
225 Franz 902
        VLayout1 = new QGridLayout( 0, 1, 1, 0, 6, "VLayout1");
3 paul 903
 
225 Franz 904
        SimpleValid = new QRadioButton( ValidateGroup, "SimpleValid" );
905
        SimpleValid->setText( tr( "Value must be greater than or equal to:" ) );
3 paul 906
 
225 Franz 907
        VLayout1->addWidget( SimpleValid, 0, 0 );
908
        TextVa = new QLabel( ValidateGroup, "TextForm3" );
909
        TextVa->setText( tr( "and less or equal to:" ) );
910
        VLayout1->addWidget( TextVa, 1, 0, Qt::AlignRight );
3 paul 911
 
225 Franz 912
        MinValid = new QLineEdit( ValidateGroup, "MinValid" );
3 paul 913
 
225 Franz 914
        VLayout1->addWidget( MinValid, 0, 1 );
3 paul 915
 
225 Franz 916
        MaxValid = new QLineEdit( ValidateGroup, "MaxValid" );
3 paul 917
 
225 Franz 918
        VLayout1->addWidget( MaxValid, 1, 1 );
919
        ValidateGroupLayout->addLayout( VLayout1 );
3 paul 920
 
225 Franz 921
        CustomValid = new QRadioButton( ValidateGroup, "CustomValid" );
922
        CustomValid->setText( tr( "Custom validate script:" ) );
923
        ValidateGroupLayout->addWidget( CustomValid );
3 paul 924
 
225 Franz 925
        VLayout2 = new QHBoxLayout( 0, 0, 6, "VLayout2");
3 paul 926
 
225 Franz 927
        ValidScript = new QTextEdit( ValidateGroup, "ValidScript" );
928
        ValidScript->setMinimumSize( QSize( 0, 50 ) );
929
        ValidScript->setReadOnly( true );
930
        ValidScript->setBackgroundMode(PaletteBackground);
931
        ValidScript->setPaper(ValidScript->paletteBackgroundColor());
932
        VLayout2->addWidget( ValidScript );
3 paul 933
 
225 Franz 934
        EditValScript = new QPushButton( ValidateGroup, "EditValScript" );
935
        EditValScript->setText( tr( "Edit..." ) );
936
        EditValScript->setAutoDefault( false );
937
        VLayout2->addWidget( EditValScript );
938
        ValidateGroupLayout->addLayout( VLayout2 );
939
        tabLayout_4->addWidget( ValidateGroup );
940
        TabWidget2->insertTab( tab_4, tr( "Validate" ) );
161 Franz 941
        TabWidget2->setTabEnabled(tab_4, false);
225 Franz 942
        SetVali();
943
        tab_5 = new QWidget( TabWidget2, "tab_5" );
944
        tabLayout_5 = new QVBoxLayout( tab_5, 11, 6, "tabLayout_5");
3 paul 945
 
225 Franz 946
        CalcGroup = new QButtonGroup( tab_5, "CalcGroup" );
283 Franz 947
        CalcGroup->setTitle( "" );
225 Franz 948
        CalcGroup->setColumnLayout(0, Qt::Vertical );
949
        CalcGroup->layout()->setSpacing( 6 );
950
        CalcGroup->layout()->setMargin( 11 );
951
        CalcGroupLayout = new QVBoxLayout( CalcGroup->layout() );
952
        CalcGroupLayout->setAlignment( Qt::AlignTop );
3 paul 953
 
225 Franz 954
        NoCalc = new QRadioButton( CalcGroup, "NoCalc" );
955
        NoCalc->setText( tr( "Value is not calculated" ) );
956
        NoCalc->setChecked( true );
957
        CalcGroupLayout->addWidget( NoCalc );
3 paul 958
 
225 Franz 959
        CLayout1 = new QHBoxLayout( 0, 0, 6, "CLayout1");
3 paul 960
 
225 Franz 961
        SimpleCalc = new QRadioButton( CalcGroup, "SimpleCalc" );
962
        SimpleCalc->setText( tr( "Value is the" ) );
963
        CLayout1->addWidget( SimpleCalc );
3 paul 964
 
225 Franz 965
        CalcArt = new QComboBox( false, CalcGroup, "CalcArt" );
215 Franz 966
        /* PFJ - 28/02/04 - Altered to QString/size_t/for style */
967
        QString calc[] = {tr("sum"), tr("product"), tr("average"), tr("minimum"),
225 Franz 968
                          tr("maximum")};
215 Franz 969
        size_t calcArray = sizeof(calc) / sizeof(*calc);
970
        for (uint prop = 0; prop < calcArray; ++prop)
971
                CalcArt->insertItem(calc[prop]);
225 Franz 972
        CLayout1->addWidget( CalcArt );
3 paul 973
 
225 Franz 974
        TextLabel1_2 = new QLabel( CalcGroup, "TextLabel1_2" );
975
        TextLabel1_2->setText( tr( "of the following fields:" ) );
976
        CLayout1->addWidget( TextLabel1_2 );
977
        CalcGroupLayout->addLayout( CLayout1 );
3 paul 978
 
225 Franz 979
        CLayout3 = new QHBoxLayout( 0, 0, 6, "CLayout1");
980
        CalcFields = new QLineEdit( CalcGroup, "CalcFields" );
981
        CLayout3->addWidget( CalcFields );
982
        SeField = new QPushButton( CalcGroup, "EditCalc" );
983
        SeField->setText( tr( "Pick..." ) );
984
        CLayout3->addWidget( SeField );
985
        CalcGroupLayout->addLayout( CLayout3 );
3 paul 986
 
225 Franz 987
        CustomCalc = new QRadioButton( CalcGroup, "CustomCalc" );
988
        CustomCalc->setText( tr( "Custom calculation script:" ) );
989
        CalcGroupLayout->addWidget( CustomCalc );
3 paul 990
 
225 Franz 991
        CLayout2 = new QHBoxLayout( 0, 0, 6, "CLayout2");
3 paul 992
 
225 Franz 993
        CalcScript = new QTextEdit( CalcGroup, "CalcScript" );
994
        CalcScript->setMinimumSize( QSize( 0, 50 ) );
995
        CalcScript->setReadOnly( true );
996
        CLayout2->addWidget( CalcScript );
997
        CalcScript->setBackgroundMode(PaletteBackground);
998
        CalcScript->setPaper(CalcScript->paletteBackgroundColor());
3 paul 999
 
225 Franz 1000
        EditCalc = new QPushButton( CalcGroup, "EditCalc" );
1001
        EditCalc->setText( tr( "Edit..." ) );
1002
        CLayout2->addWidget( EditCalc );
1003
        CalcGroupLayout->addLayout( CLayout2 );
1004
        tabLayout_5->addWidget( CalcGroup );
1005
        TabWidget2->insertTab( tab_5, tr( "Calculate" ) );
161 Franz 1006
        TabWidget2->setTabEnabled(tab_5, false);
225 Franz 1007
        SetCalc();
1008
        GroupBox10Layout->addWidget( TabWidget2 );
1009
        Fram->addWidget(GroupBox10, 3);
3 paul 1010
 
225 Franz 1011
        Frame9 = new QFrame( this, "Frame7" );
1012
        Frame9->setFrameShape( QFrame::NoFrame );
1013
        Frame9->setFrameShadow( QFrame::Plain );
1014
        Fram->addWidget(Frame9, 2);
3 paul 1015
 
225 Franz 1016
        SetZiel(item->AnType-2);
1017
        Layout1_2 = new QHBoxLayout;
1018
        Layout1_2->setSpacing( 6 );
1019
        Layout1_2->setMargin( 0 );
3 paul 1020
 
225 Franz 1021
        QSpacerItem* spacerr = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );
1022
        Layout1_2->addItem( spacerr );
1023
        PushButton1 = new QPushButton( this, "PushButton1" );
1024
        PushButton1->setText( tr( "OK" ) );
1025
        PushButton1->setDefault( true );
1026
        Layout1_2->addWidget( PushButton1 );
1027
        PushButton2 = new QPushButton( this, "PushButton2" );
1028
        PushButton2->setText( tr( "Cancel" ) );
1029
        AnnotLayout->addLayout( Layout1_2 );
1030
        connect(PushButton1, SIGNAL(clicked()), this, SLOT(SetVals()));
1031
        connect(PushButton2, SIGNAL(clicked()), this, SLOT(reject()));
1032
        connect(EditFormat, SIGNAL(clicked()), this, SLOT(editFormatSc()));
1033
        connect(EditKeystr, SIGNAL(clicked()), this, SLOT(editKeySc()));
1034
        connect(EditValScript, SIGNAL(clicked()), this, SLOT(editValidSc()));
1035
        connect(EditCalc, SIGNAL(clicked()), this, SLOT(editCalcSc()));
1036
        connect(EditJ, SIGNAL(clicked()), this, SLOT(editJavaSc()));
1037
        connect(SeField, SIGNAL(clicked()), this, SLOT(SelectFelder()));
1038
        connect(Format0c, SIGNAL(activated(const QString&)), this, SLOT(setDateSample(const QString&)));
1039
        connect(TxFormat, SIGNAL(activated(int)), this, SLOT(SetFoScript(int)));
1040
        connect(ComboBox1, SIGNAL(activated(int)), this, SLOT(SetZiel(int)));
1041
        connect(ActionCombo, SIGNAL(activated(int)), this, SLOT(SetActTyp(int)));
1042
        connect(SelAction, SIGNAL(activated(int)), this, SLOT(SetActScript(int)));
1043
        connect(Pg1, SIGNAL(Coords(double, double)), this, SLOT(SetCo(double, double)));
1044
        connect(SpinBox11, SIGNAL(valueChanged(int)), this, SLOT(SetPg(int)));
1045
        connect(SpinBox21, SIGNAL(valueChanged(int)), this, SLOT(SetCross()));
1046
        connect(SpinBox31, SIGNAL(valueChanged(int)), this, SLOT(SetCross()));
161 Franz 1047
        connect(Limit, SIGNAL(clicked()), this, SLOT(SetLimit()));
1048
        connect(UseCurr, SIGNAL(clicked()), this, SLOT(SetCurr()));
1049
        connect(Format0, SIGNAL(clicked()), this, SLOT(SetFormNum()));
1050
        connect(Format1, SIGNAL(clicked()), this, SLOT(SetFormNum()));
1051
        connect(Format2, SIGNAL(clicked()), this, SLOT(SetFormNum()));
1052
        connect(Format3, SIGNAL(clicked()), this, SLOT(SetFormNum()));
1053
        connect(Format0a, SIGNAL(clicked()), this, SLOT(SetFormNum()));
1054
        connect(Format1a, SIGNAL(clicked()), this, SLOT(SetFormNum()));
1055
        connect(Format2a, SIGNAL(clicked()), this, SLOT(SetFormNum()));
1056
        connect(Format3a, SIGNAL(clicked()), this, SLOT(SetFormNum()));
1057
        connect(Format0b, SIGNAL(clicked()), this, SLOT(SetFormNum()));
1058
        connect(Format1b, SIGNAL(clicked()), this, SLOT(SetFormNum()));
1059
        connect(Format2b, SIGNAL(clicked()), this, SLOT(SetFormNum()));
1060
        connect(Format3b, SIGNAL(clicked()), this, SLOT(SetFormNum()));
1061
        connect(NoValid, SIGNAL(clicked()), this, SLOT(HandleVali()));
1062
        connect(SimpleValid, SIGNAL(clicked()), this, SLOT(HandleVali()));
1063
        connect(CustomValid, SIGNAL(clicked()), this, SLOT(HandleVali()));
1064
        connect(NoCalc, SIGNAL(clicked()), this, SLOT(HandleCalc()));
1065
        connect(SimpleCalc, SIGNAL(clicked()), this, SLOT(HandleCalc()));
1066
        connect(CustomCalc, SIGNAL(clicked()), this, SLOT(HandleCalc()));
225 Franz 1067
        connect(IconN, SIGNAL(clicked()), this, SLOT(GetNIcon()));
1068
        connect(IconNR, SIGNAL(clicked()), this, SLOT(RemoveNIcon()));
1069
        connect(IconP, SIGNAL(clicked()), this, SLOT(GetPIcon()));
1070
        connect(IconPR, SIGNAL(clicked()), this, SLOT(RemovePIcon()));
1071
        connect(IconR, SIGNAL(clicked()), this, SLOT(GetRIcon()));
1072
        connect(IconRR, SIGNAL(clicked()), this, SLOT(RemoveRIcon()));
1073
        connect(UseIcons, SIGNAL(clicked()), this, SLOT(IconsEin()));
1074
        connect(PlaceIcon, SIGNAL(clicked()), this, SLOT(IPlace()));
161 Franz 1075
        connect(ChFile, SIGNAL(clicked()), this, SLOT(GetFile()));
1076
        connect(LExtern, SIGNAL(clicked()), this, SLOT(SetExternL()));
392 Franz 1077
        connect(Name, SIGNAL(Leaved()), this, SLOT(NewName()));
351 Franz 1078
        QToolTip::add(NoSpell, tr( "Flag is ignored for PDF 1.3" ) );
1079
        QToolTip::add(NoScroll, tr( "Flag is ignored for PDF 1.3" ) );
225 Franz 1080
        QToolTip::add(CalcFields, tr( "Enter a comma separated list of fields here" ) );
161 Franz 1081
        QToolTip::add(IconNR, tr("You need at least the Icon for Normal to use Icons for Buttons"));
1082
        SetPg(QMIN(SpinBox11->value(), MaxSeite));
225 Franz 1083
        SetCross();
3 paul 1084
}
1085
 
1086
Annot::~Annot()
225 Franz 1087
{}
3 paul 1088
 
392 Franz 1089
void Annot::NewName()
1090
{
1091
        QString NameNew = Name->text();
1092
        if (NameNew == "")
1093
        {
1094
                Name->setText(OldName);
1095
                return;
1096
        }
1097
        bool found = false;
456 fschmid 1098
        for (uint b = 0; b < view->Doc->Items.count(); ++b)
392 Franz 1099
        {
1361 tsoots 1100
                if ((NameNew == view->Doc->Items.at(b)->itemName()) && (view->Doc->Items.at(b) != item))
392 Franz 1101
                {
456 fschmid 1102
                        found = true;
1103
                        break;
392 Franz 1104
                }
1105
        }
1106
        if (found)
1107
        {
1108
                Name->setText(OldName);
1109
                Name->setFocus();
1110
        }
1111
}
1112
 
3 paul 1113
void Annot::IPlace()
1114
{
1115
        ButtonIcon* dia = new ButtonIcon(this, item);
1116
        if (dia->exec())
161 Franz 1117
        {
3 paul 1118
                int w = item->pixm.width();
1119
                int h = item->pixm.height();
80 Franz 1120
                double sw = item->Width / w;
1121
                double sh = item->Height / h;
226 Franz 1122
                double sc = QMIN(sw, sh);
1123
                if (dia->IcScaleH == 3)
1124
                {
1125
                        item->LocalScX = 1;
1126
                        item->LocalScY = 1;
1127
                        item->LocalX = (item->Width - w) * dia->IcPlaceX;
1128
                        item->LocalY = (item->Height - h) * dia->IcPlaceY;
1129
                }
1130
                else
1131
                {
1132
                        if (dia->ScaleH->currentItem() == 0)
1133
                        {
1134
                                item->LocalScX = sc;
1135
                                item->LocalScY = sc;
1136
                                item->LocalX = ((item->Width - w * sc) / sc) / 2.0 / sc;
1137
                                item->LocalY = ((item->Height - h * sc) / sc) / 2.0 / sc;
1138
                        }
1139
                        else
1140
                        {
1141
                                item->LocalScX = sw;
1142
                                item->LocalScY = sh;
1143
                                item->LocalX = 0;
1144
                                item->LocalY = 0;
1145
                        }
1146
                }
3 paul 1147
                item->AnIPlace = dia->Place->currentItem();
1148
                item->AnScaleW = dia->ScaleW->currentItem();
215 Franz 1149
        }
3 paul 1150
        delete dia;
1151
}
1152
 
1153
void Annot::RemoveNIcon()
1154
{
1155
        NiconPrev->clear();
1156
        item->Pfile = "";
1157
        item->PicAvail = false;
1158
        IconNR->setEnabled(false);
1159
}
1160
 
1161
void Annot::RemovePIcon()
1162
{
1163
        PiconPrev->clear();
1164
        item->Pfile2 = "";
1165
        IconPR->setEnabled(false);
1166
}
1167
 
1168
void Annot::RemoveRIcon()
1169
{
1170
        RiconPrev->clear();
1171
        item->Pfile3 = "";
1172
        IconRR->setEnabled(false);
1173
}
1174
 
1175
void Annot::IconsEin()
1176
{
161 Franz 1177
        bool setter = !UseIcons->isChecked() ? false : true;
80 Franz 1178
        IconN->setEnabled(setter);
1179
        IconP->setEnabled(setter);
1180
        IconR->setEnabled(setter);
1181
 
1182
        NiconPrev->setEnabled(setter);
1183
        PiconPrev->setEnabled(setter);
1184
        RiconPrev->setEnabled(setter);
1185
        PlaceIcon->setEnabled(setter);
167 Franz 1186
        IconNR->setEnabled(item->Pfile != "" ? true : false);
1187
        IconPR->setEnabled(item->Pfile2!= "" ? true : false);
1188
        IconRR->setEnabled(item->Pfile3!= "" ? true : false);
3 paul 1189
        item->AnUseIcons = UseIcons->isChecked();
1190
}
1191
 
1192
void Annot::GetNIcon()
1193
{
1194
        QString fileName;
415 Franz 1195
        QString wdir = dirs->get("icon", ".");
1196
        CustomFDialog dia(this, wdir, tr("Open"),
225 Franz 1197
                          tr("Images (*.tif *.png *.jpg *.xpm);;Postscript (*.eps);;All Files (*)"), "", true);
3 paul 1198
        if (dia.exec() == QDialog::Accepted)
1199
                fileName = dia.selectedFile();
1200
        else
1201
                return;
225 Franz 1202
        if (!fileName.isEmpty())
1203
        {
415 Franz 1204
                dirs->set("icon", fileName.left(fileName.findRev("/")));
3 paul 1205
                QPixmap pmI1;
1206
                QImage im;
1207
                im = LoadPict(fileName);
1208
                pmI1.convertFromImage(im);
1209
                NiconPrev->setPixmap(pmI1);
1210
                item->Pfile = fileName;
1211
                item->PicAvail = true;
1212
                item->pixm = im.copy();
1213
                int w = im.width();
1214
                int h = im.height();
80 Franz 1215
                double sw = item->Width / w;
1216
                double sh = item->Height / h;
1217
                double sc = QMIN(sw,sh);
3 paul 1218
                item->LocalScX = sc;
1219
                item->LocalScY = sc;
1220
                item->LocalX = ((item->Width - (w * sc)) / 2) / sc;
1221
                item->LocalY = ((item->Height - (h * sc)) / 2) / sc;
1222
                IconNR->setEnabled(true);
167 Franz 1223
        }
3 paul 1224
}
1225
 
1226
void Annot::GetPIcon()
1227
{
1228
        QString fileName;
415 Franz 1229
        QString wdir = dirs->get("icon", ".");
1230
        CustomFDialog dia(this, wdir, tr("Open"),
225 Franz 1231
                          tr("Images (*.tif *.png *.jpg *.xpm);;Postscript (*.eps);;All Files (*)"), "", true);
3 paul 1232
        if (dia.exec() == QDialog::Accepted)
1233
                fileName = dia.selectedFile();
1234
        else
1235
                return;
225 Franz 1236
        if (!fileName.isEmpty())
1237
        {
415 Franz 1238
                dirs->set("icon", fileName.left(fileName.findRev("/")));
3 paul 1239
                QPixmap pmI1;
1240
                QImage im;
1241
                im = LoadPict(fileName);
1242
                pmI1.convertFromImage(im);
1243
                PiconPrev->setPixmap(pmI1);
1244
                item->Pfile2 = fileName;
225 Franz 1245
                IconPR->setEnabled(true);
161 Franz 1246
        }
3 paul 1247
}
1248
 
1249
void Annot::GetRIcon()
1250
{
1251
        QString fileName;
415 Franz 1252
        QString wdir = dirs->get("icon", ".");
1253
        CustomFDialog dia(this, wdir, tr("Open"),
225 Franz 1254
                          tr("Images (*.tif *.png *.jpg *.xpm);;Postscript (*.eps);;All Files (*)"), "", true);
3 paul 1255
        if (dia.exec() == QDialog::Accepted)
1256
                fileName = dia.selectedFile();
1257
        else
1258
                return;
225 Franz 1259
        if (!fileName.isEmpty())
1260
        {
415 Franz 1261
                dirs->set("icon", fileName.left(fileName.findRev("/")));
3 paul 1262
                QPixmap pmI1;
1263
                QImage im;
1264
                im = LoadPict(fileName);
1265
                pmI1.convertFromImage(im);
1266
                RiconPrev->setPixmap(pmI1);
1267
                item->Pfile3 = fileName;
225 Franz 1268
                IconRR->setEnabled(true);
161 Franz 1269
        }
3 paul 1270
}
1271
 
1272
void Annot::SelectFelder()
1273
{
1361 tsoots 1274
        SelectFields* dia = new SelectFields(this, CalcFields->text(), item->itemName(), &view->Doc->Pages, 3);
3 paul 1275
        if (dia->exec())
1276
                CalcFields->setText(dia->S_Fields);
1277
        delete dia;
1278
}
1279
 
1280
void Annot::editKeySc()
1281
{
1282
        Editor* dia = new Editor(this, item->An_K_act, view);
1283
        if (dia->exec())
161 Franz 1284
        {
3 paul 1285
                item->An_K_act = dia->EditTex->text();
225 Franz 1286
                KeyScript->setText( item->An_K_act );
161 Franz 1287
        }
3 paul 1288
        delete dia;
1289
}
1290
 
1291
void Annot::editFormatSc()
1292
{
1293
        Editor* dia = new Editor(this, item->An_F_act, view);
1294
        if (dia->exec())
161 Franz 1295
        {
3 paul 1296
                item->An_F_act = dia->EditTex->text();
225 Franz 1297
                FormatScript->setText( item->An_F_act );
161 Franz 1298
        }
3 paul 1299
        delete dia;
1300
}
1301
 
1302
void Annot::editValidSc()
1303
{
1304
        Editor* dia = new Editor(this, item->An_V_act, view);
1305
        if (dia->exec())
161 Franz 1306
        {
3 paul 1307
                item->An_V_act = dia->EditTex->text();
225 Franz 1308
                ValidScript->setText( item->An_V_act );
161 Franz 1309
        }
3 paul 1310
        delete dia;
1311
}
1312
 
1313
void Annot::editCalcSc()
1314
{
1315
        Editor* dia = new Editor(this, item->An_C_act, view);
1316
        if (dia->exec())
161 Franz 1317
        {
3 paul 1318
                item->An_C_act = dia->EditTex->text();
225 Franz 1319
                CalcScript->setText( item->An_C_act );
161 Franz 1320
        }
3 paul 1321
        delete dia;
1322
}
1323
 
1324
void Annot::editJavaSc()
1325
{
1326
        Editor* dia = new Editor(this, EditJava->text(), view);
1327
        if (dia->exec())
1328
                EditJava->setText(dia->EditTex->text());
1329
        delete dia;
1330
}
1331
 
1332
void Annot::setDateSample(const QString& ds)
1333
{
1334
        QDateTime dt = QDateTime::currentDateTime();
215 Franz 1335
        QString tmp = "";
1336
        if (ds == "m/d")
1337
                tmp = "M/d";
1338
        if (ds == "m/d/yy")
1339
                tmp = "M/d/yy";
1340
        if (ds == "mm/dd/yy")
1341
                tmp = "MM/dd/yy";
1342
        if (ds == "mm/yy")
1343
                tmp = "MM/yy";
1344
        if (ds == "d-mmm")
1345
                tmp = "d-MMM";
1346
        if (ds == "d-mmm-yy")
1347
                tmp = "d-MMM-yy";
1348
        if (ds == "dd-mmm-yy")
1349
                tmp = "dd-MMM-yy";
1350
        if (ds == "yy-mm-dd")
1351
                tmp = "yy-MM-dd";
1352
        if (ds == "mmm-yy")
1353
                tmp = "MMM-yy";
1354
        if (ds == "mmmm-yy")
1355
                tmp = "MMMM-yy";
1356
        if (ds == "mmm d, yyyy")
1357
                tmp = "MMM d, yyyy";
1358
        if (ds == "mmmm d, yyyy")
1359
                tmp = "MMMM d, yyyy";
1360
        if (ds == "m/d/yy h:MM tt")
1361
                tmp = "M/d/yy h:mm ap";
1362
        if (ds == "m/d/yy HH:MM")
1363
                tmp = "M/d/yy hh:mm";
112 Franz 1364
        TextDa1->setText( tr("Example:")+" "+dt.toString(tmp));
3 paul 1365
}
1366
 
1367
void Annot::DecodeVali()
1368
{
1369
        QString pfor = item->An_V_act;
1370
        int ss = pfor.find("(");
1371
        QString pfo = pfor.mid(ss+1, pfor.length()-ss-2);
161 Franz 1372
        QStringList pfol;
1373
        pfol = pfol.split(",", pfo);
3 paul 1374
        MinValid->setText(pfol[1].stripWhiteSpace());
1375
        MaxValid->setText(pfol[3].stripWhiteSpace());
1376
}
1377
 
1378
void Annot::DecodeCalc()
1379
{
1380
        QString tm = "";
1381
        QString tm2;
1382
        QString pfor = item->An_C_act;
1383
        int ss = pfor.findRev("(");
1384
        QString pfo = pfor.mid(ss+1, pfor.length()-ss-3);
161 Franz 1385
        QStringList pfol;
1386
        pfol = pfol.split(",", pfo);
3 paul 1387
        if (pfol.count() > 1)
161 Franz 1388
        {
3 paul 1389
                tm2 = pfol[0].stripWhiteSpace();
1390
                tm += tm2.mid(1, tm2.length()-2);
161 Franz 1391
                for (uint cfx = 1; cfx < pfol.count(); ++cfx)
1392
                {
3 paul 1393
                        tm2 = pfol[cfx].stripWhiteSpace();
1394
                        tm += ", "+tm2.mid(1, tm2.length()-2);
1395
                }
161 Franz 1396
        }
3 paul 1397
        CalcFields->setText(tm);
1398
        ss = pfor.find("(");
1399
        pfo = pfor.mid(ss+1, pfor.length()-ss-3);
161 Franz 1400
        pfol = pfol.split(",", pfo);
215 Franz 1401
        /* PFJ - 28/02/04 - Let's get rid of lots of ifs.... */
1402
        QString pf[] = {"\"SUM\"", "\"PRD\"", "\"AVG\"", "\"MIN\"", "\"MAX\""};
1403
        size_t pfTest = sizeof(pf) / sizeof(*pf);
1404
        for (uint test = 0; test < pfTest; ++test)
1405
                if (pfol[0] == pf[test])
1406
                        CalcArt->setCurrentItem(test);
3 paul 1407
}
1408
 
1409
void Annot::DecodeNum()
1410
{
1411
        QString pfor = item->An_F_act;
1412
        int ss = pfor.find("(");
1413
        QString pfo = pfor.mid(ss+1, pfor.length()-ss-2);
330 Franz 1414
  QStringList pfol;
1415
  pfol = pfol.split(",", pfo);
3 paul 1416
        if (item->AnFormat == 1)
330 Franz 1417
                {
3 paul 1418
                Decim->setValue(pfol[0].toInt());
1419
                switch (pfol[1].toInt())
330 Franz 1420
                        {
1421
                        case 0:
1422
                                Format0->setChecked(true);
1423
                                FormNum = 0;
1424
                                break;
1425
                        case 1:
1426
                                Format1->setChecked(true);
1427
                                FormNum = 1;
1428
                                break;
1429
                        case 2:
1430
                                Format2->setChecked(true);
1431
                                FormNum = 2;
1432
                                break;
1433
                        case 3:
1434
                                Format3->setChecked(true);
1435
                                FormNum = 3;
1436
                                break;
1437
                        }
1438
                if (pfol[5] == " true")
1439
                        PreCurr->setChecked(true);
1440
                else
1441
                        PreCurr->setChecked(false);
3 paul 1442
                if (pfol[4].length() > 2)
330 Franz 1443
                        {
1444
                        if (PreCurr->isChecked())
1445
                                CurSym->setText(pfol[4].mid(2,pfol[4].length()-4));
1446
                        else
1447
                                CurSym->setText(pfol[4].mid(3,pfol[4].length()-4));
1448
                        }
3 paul 1449
                else
1450
                        CurSym->setText("");
1451
                if (CurSym->text() != "")
330 Franz 1452
                        {
3 paul 1453
                        CurSym->setEnabled(true);
1454
                        UseCurr->setEnabled(true);
1455
                        UseCurr->setChecked(true);
1456
                        PreCurr->setEnabled(true);
330 Franz 1457
                        }
3 paul 1458
                }
1459
        if (item->AnFormat == 2)
330 Franz 1460
                {
3 paul 1461
                Decim2->setValue(pfol[0].toInt());
1462
                switch (pfol[1].toInt())
330 Franz 1463
                        {
1464
                        case 0:
1465
                                Format0a->setChecked(true);
1466
                                FormNum = 0;
1467
                                break;
1468
                        case 1:
1469
                                Format1a->setChecked(true);
1470
                                FormNum = 1;
1471
                                break;
1472
                        case 2:
1473
                                Format2a->setChecked(true);
1474
                                FormNum = 2;
1475
                                break;
1476
                        case 3:
1477
                                Format3a->setChecked(true);
1478
                                FormNum = 3;
1479
                                break;
1480
                        }
3 paul 1481
                }
1482
        if (item->AnFormat == 3)
330 Franz 1483
                {
3 paul 1484
                Format0c->setCurrentText(pfol[0]);
1485
                setDateSample(pfol[0]);
330 Franz 1486
                }
3 paul 1487
        if (item->AnFormat == 4)
330 Franz 1488
                {
3 paul 1489
                switch (pfol[0].toInt())
330 Franz 1490
                        {
1491
                        case 0:
1492
                                Format0b->setChecked(true);
1493
                                FormNum = 0;
1494
                                break;
1495
                        case 1:
1496
                                Format1b->setChecked(true);
1497
                                FormNum = 1;
1498
                                break;
1499
                        case 2:
1500
                                Format2b->setChecked(true);
1501
                                FormNum = 2;
1502
                                break;
1503
                        case 3:
1504
                                Format3b->setChecked(true);
1505
                                FormNum = 3;
1506
                                break;
1507
                        }
3 paul 1508
                }
1509
}
1510
 
1511
void Annot::SetFormNum()
1512
{
1513
        switch (item->AnFormat)
161 Franz 1514
        {
225 Franz 1515
        case 1:
1516
                if (Format0->isChecked())
1517
                        FormNum = 0;
1518
                if (Format1->isChecked())
1519
                        FormNum = 1;
1520
                if (Format2->isChecked())
1521
                        FormNum = 2;
1522
                if (Format3->isChecked())
1523
                        FormNum = 3;
1524
                break;
1525
        case 2:
1526
                if (Format0a->isChecked())
1527
                        FormNum = 0;
1528
                if (Format1a->isChecked())
1529
                        FormNum = 1;
1530
                if (Format2a->isChecked())
1531
                        FormNum = 2;
1532
                if (Format3a->isChecked())
1533
                        FormNum = 3;
1534
                break;
1535
        case 4:
1536
                if (Format0b->isChecked())
1537
                        FormNum = 0;
1538
                if (Format1b->isChecked())
1539
                        FormNum = 1;
1540
                if (Format2b->isChecked())
1541
                        FormNum = 2;
1542
                if (Format3b->isChecked())
1543
                        FormNum = 3;
1544
                break;
161 Franz 1545
        }
3 paul 1546
}
1547
 
1548
void Annot::HandleVali()
1549
{
161 Franz 1550
        bool setter = SimpleValid->isChecked() ? true : false;
80 Franz 1551
        MaxValid->setEnabled(setter);
1552
        MinValid->setEnabled(setter);
3 paul 1553
        EditValScript->setEnabled(false);
1554
        if (CustomValid->isChecked())
1555
                EditValScript->setEnabled(true);
1556
}
1557
 
1558
void Annot::SetVali()
1559
{
1560
        MaxValid->setEnabled(false);
1561
        MinValid->setEnabled(false);
1562
        EditValScript->setEnabled(false);
1563
        ValidScript->setEnabled(false);
1564
        if (item->An_V_act == "")
1565
                NoValid->setChecked(true);
1566
        else
161 Franz 1567
        {
1568
                if (item->An_V_act.startsWith("AFRange_Validate"))
3 paul 1569
                {
1570
                        MaxValid->setEnabled(true);
1571
                        MinValid->setEnabled(true);
1572
                        SimpleValid->setChecked(true);
1573
                        DecodeVali();
161 Franz 1574
                }
3 paul 1575
                else
161 Franz 1576
                {
3 paul 1577
                        EditValScript->setEnabled(true);
1578
                        CustomValid->setChecked(true);
1579
                        ValidScript->setText(item->An_V_act);
1580
                }
161 Franz 1581
        }
3 paul 1582
}
1583
 
1584
void Annot::HandleCalc()
1585
{
80 Franz 1586
        bool setter = SimpleCalc->isChecked() ? true : false;
1587
        CalcFields->setEnabled(setter);
1588
        CalcArt->setEnabled(setter);
3 paul 1589
        EditCalc->setEnabled(false);
80 Franz 1590
        SeField->setEnabled(setter);
3 paul 1591
        if (CustomCalc->isChecked())
1592
                EditCalc->setEnabled(true);
1593
}
1594
 
1595
void Annot::SetCalc()
1596
{
1597
        CalcFields->setEnabled(false);
1598
        CalcArt->setEnabled(false);
1599
        EditCalc->setEnabled(false);
1600
        SeField->setEnabled(false);
1601
        if (item->An_C_act == "")
1602
                NoCalc->setChecked(true);
1603
        else
161 Franz 1604
        {
1605
                if (item->An_C_act.startsWith("AFSimple_Calculate"))
3 paul 1606
                {
1607
                        CalcFields->setEnabled(true);
1608
                        CalcArt->setEnabled(true);
1609
                        SimpleCalc->setChecked(true);
1610
                        SeField->setEnabled(true);
1611
                        DecodeCalc();
161 Franz 1612
                }
3 paul 1613
                else
161 Franz 1614
                {
3 paul 1615
                        EditCalc->setEnabled(true);
1616
                        CustomCalc->setChecked(true);
1617
                        CalcScript->setText(item->An_C_act);
1618
                }
161 Franz 1619
        }
3 paul 1620
}
1621
 
1622
void Annot::SetCurr()
1623
{
80 Franz 1624
        bool setter = UseCurr->isChecked() ? true : false;
1625
        CurSym->setEnabled(setter);
1626
        PreCurr->setEnabled(setter);
3 paul 1627
}
1628
 
1629
void Annot::SetFoScript(int it)
1630
{
215 Franz 1631
        /* PFJ - 28/02/04 - Re-written. Profiler took ages on the switch */
1632
        if (it >= 0 && it <=5)
1633
                FoFram->raiseWidget(it);
1634
        if (it == 1)
1635
                SetCurr();
1636
        if (it == 5)
161 Franz 1637
        {
215 Franz 1638
                EditFormat->setEnabled( true );
225 Franz 1639
                EditKeystr->setEnabled( true );
1640
                KeyScript->setText( item->An_K_act );
1641
                FormatScript->setText( item->An_F_act );
161 Franz 1642
        }
3 paul 1643
        item->AnFormat = it;
1644
}
1645
 
80 Franz 1646
void Annot::SetCo(double x, double y)
3 paul 1647
{
1648
        SpinBox21->setValue(static_cast<int>(x*Breite));
1649
        SpinBox31->setValue(static_cast<int>(y*Hoehe));
1650
}
1651
 
1652
void Annot::SetPg(int v)
1653
{
19 Franz 1654
        disconnect(SpinBox11, SIGNAL(valueChanged(int)), this, SLOT(SetPg(int)));
1655
        if (item->AnActType == 7)
161 Franz 1656
        {
1657
                if (!Pg1->SetSeite(v, 100, Destfile->text()))
19 Franz 1658
                {
1659
                        SpinBox11->setValue(1);
1660
                        Pg1->SetSeite(1, 100, Destfile->text());
161 Franz 1661
                }
20 Franz 1662
                Breite = Pg1->Breite;
1663
                Hoehe = Pg1->Hoehe;
225 Franz 1664
                //              SetCo(0,0);
161 Franz 1665
        }
19 Franz 1666
        else
161 Franz 1667
        {
19 Franz 1668
                Pg1->SetSeite(v-1, 100);
1669
                SpinBox11->setValue(v);
20 Franz 1670
                Breite = OriBreite;
1671
                Hoehe = OriHoehe;
225 Franz 1672
                //              SetCo(0,0);
161 Franz 1673
        }
20 Franz 1674
        SpinBox21->setMaxValue(Breite);
1675
        SpinBox31->setMaxValue(Hoehe);
19 Franz 1676
        connect(SpinBox11, SIGNAL(valueChanged(int)), this, SLOT(SetPg(int)));
3 paul 1677
}
1678
 
1679
void Annot::SetCross()
1680
{
1681
        int x,y;
161 Franz 1682
        disconnect(Pg1, SIGNAL(Coords(double, double)), this, SLOT(SetCo(double, double)));
80 Franz 1683
        x = static_cast<int>(static_cast<double>(SpinBox21->value())/static_cast<double>(Breite)*Pg1->pmx.width());
1684
        y = static_cast<int>(static_cast<double>(SpinBox31->value())/static_cast<double>(Hoehe)*Pg1->pmx.height());
3 paul 1685
        Pg1->drawMark(x, y);
161 Franz 1686
        connect(Pg1, SIGNAL(Coords(double, double)), this, SLOT(SetCo(double, double)));
3 paul 1687
}
1688
 
1689
void Annot::SetVals()
1690
{
330 Franz 1691
        QString tmp;
3 paul 1692
        QString Nfo = "";
1693
        bool AAct = false;
1694
        item->AnType = ComboBox1->currentItem()+2;
392 Franz 1695
        if (Name->text() != OldName)
1696
        {
1361 tsoots 1697
                item->setItemName(Name->text());
392 Franz 1698
                item->AutoName = false;
1699
        }
3 paul 1700
        item->AnToolTip = Tip->text();
1701
        item->AnRollOver = TextO->text();
1702
        item->AnDown = DownT->text();
1703
        item->AnBwid = BorderW->currentItem();
1704
        item->AnBsty = BorderS->currentItem();
1705
        item->AnFeed = ComboBox7_2->currentItem();
1706
        item->AnVis = Visib->currentItem();
1707
        item->AnFont = Schrift->currentItem();
1708
        item->AnFlag = 0;
1709
        item->AnIsChk = isChkd->isChecked();
1710
        item->AnChkStil = ChkStil->currentItem();
1711
        item->AnBColor = BorderC->currentText();
1712
        if (item->AnBColor == tr("None"))
1713
                item->AnBColor = "None";
392 Franz 1714
        Limit->isChecked() ? item->AnMaxChar = MaxChars->value() : item->AnMaxChar = -1;
3 paul 1715
        if (item->AnType == 2)
330 Franz 1716
                {
3 paul 1717
                item->AnFlag += 65536;
1718
                if (item->Pfile == "")
1719
                        item->AnUseIcons = false;
330 Franz 1720
                }
3 paul 1721
        else
330 Franz 1722
                {
3 paul 1723
                item->AnUseIcons = false;
1724
                if (ReadOnly->isChecked())
1725
                        item->AnFlag += 1;
1726
                if (Required->isChecked())
1727
                        item->AnFlag += 2;
1728
                if (NoExport->isChecked())
1729
                        item->AnFlag += 4;
330 Franz 1730
                }
3 paul 1731
        if (item->AnType == 5)
330 Franz 1732
                {
3 paul 1733
                item->AnFlag += 131072;
1734
                if (CanEdit->isChecked())
1735
                        item->AnFlag += 262144;
330 Franz 1736
                }
3 paul 1737
        if (item->AnType == 3)
330 Franz 1738
                {
3 paul 1739
                if (MultiL->isChecked())
1740
                        item->AnFlag += 4096;
1741
                if (Passwd->isChecked())
1742
                        item->AnFlag += 8192;
1743
                if (NoSpell->isChecked())
1744
                        item->AnFlag += 4194304;
1745
                if (NoScroll->isChecked())
1746
                        item->AnFlag += 8388608;
330 Franz 1747
                }
3 paul 1748
        if ((item->AnType == 3) || (item->AnType == 5))
330 Franz 1749
                {
3 paul 1750
                if (NoValid->isChecked())
1751
                        item->An_V_act = "";
1752
                if (SimpleValid->isChecked())
1753
                        item->An_V_act = "AFRange_Validate(true, "+MinValid->text()+", true, "+MaxValid->text()+")";
1754
                if (CustomValid->isChecked())
1755
                        item->An_V_act = ValidScript->text();
1756
                if (NoCalc->isChecked())
1757
                        item->An_C_act = "";
1758
                if (SimpleCalc->isChecked())
330 Franz 1759
                        {
1760
                        item->An_C_act = "AFSimple_Calculate(";
1761
                        switch (CalcArt->currentItem())
1762
                                {
1763
                                case 0:
1764
                                        item->An_C_act += "\"SUM\", ";
1765
                                        break;
1766
                                case 1:
1767
                                        item->An_C_act += "\"PRD\", ";
1768
                                        break;
1769
                                case 2:
1770
                                        item->An_C_act += "\"AVG\", ";
1771
                                        break;
1772
                                case 3:
1773
                                        item->An_C_act += "\"MIN\", ";
1774
                                        break;
1775
                                case 4:
1776
                                        item->An_C_act += "\"MAX\", ";
1777
                                        break;
1778
                                }
1779
                        item->An_C_act += "new Array (";
1780
                        QStringList pfol;
1781
                        pfol = pfol.split(",", CalcFields->text());
1782
                        if (pfol.count() > 1)
1783
                                {
1784
                                item->An_C_act += "\""+pfol[0].stripWhiteSpace()+"\"";
1785
                                for (uint cfx = 1; cfx < pfol.count(); cfx++)
1786
                                        {
1787
                                        item->An_C_act += ", \""+pfol[cfx].stripWhiteSpace()+"\"";
1788
                                        }
1789
                                }
1790
                        item->An_C_act += "))";
1791
                        }
1792
                if (CustomCalc->isChecked())
1793
                        item->An_C_act = CalcScript->text();
1794
                switch (TxFormat->currentItem())
1795
                        {
1796
                        case 0:
1797
                                item->An_F_act = "";
1798
                                item->An_K_act = "";
1799
                                break;
1800
                        case 1:
1801
                                Nfo = tmp.setNum(Decim->value())+", "+tmp.setNum(FormNum)+", 0, 0, \"";
1802
                                if (UseCurr->isChecked())
1803
                                        {
1804
                                        if (!PreCurr->isChecked())
1805
                                                Nfo += " ";
1806
                                        Nfo += CurSym->text().stripWhiteSpace();
1807
                                        if (PreCurr->isChecked())
1808
                                                Nfo += " ";
1809
                                        }
1810
                                if (PreCurr->isChecked())
1811
                                        Nfo += "\", true)";
1812
                                else
1813
                                        Nfo += "\", false)";
1814
                                item->An_F_act = "AFNumber_Format("+Nfo;
1815
                                item->An_K_act = "AFNumber_Keystroke("+Nfo;
1816
                                break;
1817
                        case 2:
1818
                                Nfo = tmp.setNum(Decim2->value())+", "+tmp.setNum(FormNum)+")";
1819
                                item->An_F_act = "AFPercent_Format("+Nfo;
1820
                                item->An_K_act = "AFPercent_Keystroke("+Nfo;
1821
                                break;
1822
                        case 3:
1823
                                Nfo = Format0c->currentText()+")";
1824
                                item->An_F_act = "AFDate_FormatEx("+Nfo;
1825
                                item->An_K_act = "AFDate_KeystrokeEx("+Nfo;
1826
                                break;
1827
                        case 4:
1828
                                Nfo = tmp.setNum(FormNum)+")";
1829
                                item->An_F_act = "AFTime_Format("+Nfo;
1830
                                item->An_K_act = "AFTime_Keystroke("+Nfo;
1831
                                break;
1832
                        case 5:
1833
                                item->An_F_act = FormatScript->text();
1834
                                item->An_K_act = KeyScript->text();
1835
                                break;
1836
                        }
215 Franz 1837
                }
3 paul 1838
        item->AnAction = "";
1839
        switch (ActionCombo->currentItem())
225 Franz 1840
                {
3 paul 1841
                case 0:
330 Franz 1842
                        item->AnActType = 0;
3 paul 1843
                        break;
1844
                case 1:
330 Franz 1845
                        item->AnActType = 1;
1846
                        switch (ScrEdited)
1847
                                {
1848
                                case 0:
1849
                                        item->AnAction = EditJava->text();
1850
                                        break;
1851
                                case 1:
1852
                                        item->An_D_act = EditJava->text();
1853
                                        break;
1854
                                case 2:
1855
                                        item->An_E_act = EditJava->text();
1856
                                        break;
1857
                                case 3:
1858
                                        item->An_X_act = EditJava->text();
1859
                                        break;
1860
                                case 4:
1861
                                        item->An_Fo_act = EditJava->text();
1862
                                        break;
1863
                                case 5:
1864
                                        item->An_Bl_act = EditJava->text();
1865
                                        break;
1866
                                case 6:
1867
                                        item->An_K_act = EditJava->text();
1868
                                        break;
1869
                                }
3 paul 1870
                        break;
1871
                case 2:
330 Franz 1872
                        if ((LExtern->isChecked()) && (Destfile->text() != ""))
1873
                                {
1874
                                item->An_Extern = Destfile->text();
1875
                                item->AnActType = 7;
1876
                                }
1877
                        else
1878
                                {
1879
                                item->An_Extern = "";
1880
                                item->AnActType = 2;
1881
                                }
1882
                        item->AnZiel = SpinBox11->value()-1;
1883
                        item->AnAction = tmp.setNum(SpinBox21->value())+" "+tmp.setNum(Hoehe-SpinBox31->value())+" 0";
3 paul 1884
                        break;
1885
                case 3:
330 Franz 1886
                        item->AnActType = 3;
1887
                        item->AnAction = SubURL->text().stripWhiteSpace();
1888
                        item->AnHTML = SubAsHtml->isChecked();
3 paul 1889
                        break;
1890
                case 4:
330 Franz 1891
                        item->AnActType = 4;
3 paul 1892
                        break;
1893
                case 5:
330 Franz 1894
                        item->AnActType = 5;
1895
                        item->AnAction = SubURLa->text().stripWhiteSpace();
3 paul 1896
                        break;
225 Franz 1897
                }
330 Franz 1898
        if (item->An_E_act != "")
3 paul 1899
                AAct = true;
330 Franz 1900
        if (item->An_X_act != "")
1901
                AAct = true;
1902
        if (item->An_D_act != "")
1903
                AAct = true;
1904
        if (item->An_Fo_act != "")
1905
                AAct = true;
1906
        if (item->An_Bl_act != "")
1907
                AAct = true;
1908
        if (item->An_K_act != "")
1909
                AAct = true;
1910
        if (item->An_F_act != "")
1911
                AAct = true;
1912
        if (item->An_V_act != "")
1913
                AAct = true;
1914
        if (item->An_C_act != "")
1915
                AAct = true;
1916
        if (AAct)
1917
                item->AnAAact = true;
1918
        else
1919
                item->AnAAact = false;
3 paul 1920
        accept();
1921
}
1922
 
1923
void Annot::SetZiel(int it)
1924
{
161 Franz 1925
        disconnect(ActionCombo, SIGNAL(activated(int)), this, SLOT(SetActTyp(int)));
1926
        disconnect(TxFormat, SIGNAL(activated(int)), this, SLOT(SetFoScript(int)));
3 paul 1927
        int tmpac = item->AnActType;
19 Franz 1928
        if (tmpac == 7)
1929
                tmpac = 2;
3 paul 1930
        int sela = it + 2;
1931
        TabWidget2->setTabEnabled(tab4, false);
1932
        TabWidget2->setTabEnabled(tab_4, false);
1933
        TabWidget2->setTabEnabled(tab_5, false);
161 Franz 1934
        EditFormat->setEnabled( false );
1935
        EditKeystr->setEnabled( false );
3 paul 1936
        SelAction->clear();
225 Franz 1937
        QString tmp_selact[]={tr("Mouse Up"), tr("Mouse Down"), tr("Mouse Enter"),
1938
                              tr("Mouse Exit"), tr("On Focus"), tr("On Blur")};
167 Franz 1939
        size_t array_sel = sizeof(tmp_selact) / sizeof(*tmp_selact);
215 Franz 1940
        /* PFJ - 28/02/04 - Altered from uint to int and varname */
1941
        for (uint prop = 0; prop < array_sel; ++prop)
225 Franz 1942
                SelAction->insertItem(tmp_selact[prop]);
161 Franz 1943
        bool setter;
3 paul 1944
        switch (sela)
161 Franz 1945
        {
225 Franz 1946
        case 2:
1947
                {
1948
                        Fram->raiseWidget(3);
3 paul 1949
                        FramOp->raiseWidget(sela);
1950
                        ReadOnly->setEnabled(false);
1951
                        ReadOnly->setChecked(false);
1952
                        Required->setEnabled(false);
1953
                        Required->setChecked(false);
1954
                        NoExport->setEnabled(false);
1955
                        NoExport->setChecked(false);
1956
                        ActionCombo->clear();
225 Franz 1957
                        QString tmp_actcom[] = {tr("None"), tr("Java Script"), tr("Go To"),
1958
                                                tr("Submit Form"), tr("Reset Form"), tr("Import Data")};
167 Franz 1959
                        size_t array_act = sizeof(tmp_actcom) / sizeof(*tmp_actcom);
215 Franz 1960
                        /* PFJ - 28/02/04 - Altered from uint to int and varname */
1961
                        for (uint prop = 0; prop < array_act; ++prop)
1962
                                ActionCombo->insertItem(tmp_actcom[prop]);
3 paul 1963
                        ActionCombo->setCurrentItem(QMIN(tmpac,5));
80 Franz 1964
                        setter = item->AnActType != 7 ? true : false;
1965
                        Destfile->setEnabled(setter);
1966
                        ChFile->setEnabled(setter);
225 Franz 1967
                        SetActTyp(tmpac);
3 paul 1968
                        break;
225 Franz 1969
                }
1970
        case 3:
1971
        case 6:
1972
        case 4:
1973
        case 5:
1974
        case 7:
1975
                if ((sela == 3) || (sela == 5))
1976
                {
1977
                        TabWidget2->setTabEnabled(tab4, true);
1978
                        TabWidget2->setTabEnabled(tab_4, true);
1979
                        TabWidget2->setTabEnabled(tab_5, true);
1980
                        TxFormat->setCurrentItem(item->AnFormat);
1981
                        SetFoScript(item->AnFormat);
1982
                        SetVali();
1983
                        SetCalc();
1984
                }
1985
                if (sela == 6)
1986
                        SelAction->insertItem( tr( "Selection Change" ) );
1987
                ReadOnly->setEnabled(true);
1988
                ReadOnly->setChecked(item->AnFlag & 1);
1989
                Required->setChecked(item->AnFlag & 2);
1990
                NoExport->setChecked(item->AnFlag & 4);
1991
                Fram->raiseWidget(3);
1992
                sela >