summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/launcher/launcherview.cpp13
-rw-r--r--library/applnk.cpp24
-rw-r--r--library/applnk.h1
-rw-r--r--library/lnkproperties.cpp31
-rw-r--r--library/lnkpropertiesbase_p.ui366
5 files changed, 370 insertions, 65 deletions
diff --git a/core/launcher/launcherview.cpp b/core/launcher/launcherview.cpp
index fa46543..6e63fca 100644
--- a/core/launcher/launcherview.cpp
+++ b/core/launcher/launcherview.cpp
@@ -490,10 +490,9 @@ bool LauncherIconView::removeLink(const QString& linkfile)
490 DocLnk dl(linkfile); 490 DocLnk dl(linkfile);
491 while (item) { 491 while (item) {
492 l = item->appLnk(); 492 l = item->appLnk();
493 if ( l->linkFileKnown() && l->linkFile() == linkfile 493 if ( ( l->linkFileKnown() && ( l->linkFile() == linkfile ))
494 || l->fileKnown() && ( 494 || ( l->fileKnown() && ( l->file() == linkfile ))
495 l->file() == linkfile 495 || ( dl.fileKnown() && l->fileKnown() && ( dl.file() == l->file() )) ) {
496 || dl.isValid() && dl.file() == l->file() ) ) {
497 delete item; 496 delete item;
498 did = TRUE; 497 did = TRUE;
499 } 498 }
@@ -502,9 +501,9 @@ bool LauncherIconView::removeLink(const QString& linkfile)
502 QListIterator<AppLnk> it(hidden); 501 QListIterator<AppLnk> it(hidden);
503 while ((l=it.current())) { 502 while ((l=it.current())) {
504 ++it; 503 ++it;
505 if ( l->linkFileKnown() && l->linkFile() == linkfile 504 if ( ( l->linkFileKnown() && ( l->linkFile() == linkfile ))
506 || l->file() == linkfile 505 || ( l->file() == linkfile )
507 || dl.isValid() && dl.file() == l->file() ) { 506 || ( dl.fileKnown() && ( dl.file() == l->file() )) ) {
508 hidden.removeRef(l); 507 hidden.removeRef(l);
509 did = TRUE; 508 did = TRUE;
510 } 509 }
diff --git a/library/applnk.cpp b/library/applnk.cpp
index 44f3f58..a56da5d 100644
--- a/library/applnk.cpp
+++ b/library/applnk.cpp
@@ -372,7 +372,10 @@ AppLnk::AppLnk( const QString &file )
372 mMimeTypeIcons = config.readListEntry( "MimeTypeIcons", ';' ); 372 mMimeTypeIcons = config.readListEntry( "MimeTypeIcons", ';' );
373 mLinkFile = file; 373 mLinkFile = file;
374 mFile = config.readEntry("File", QString::null); 374 mFile = config.readEntry("File", QString::null);
375 if ( mFile[0] != '/' ) { 375 if ( !mExec. isEmpty ( )) {
376 mFile = QString::null;
377 }
378 else if ( mFile[0] != '/' ) {
376 int slash = file.findRev('/'); 379 int slash = file.findRev('/');
377 if ( slash >= 0 ) { 380 if ( slash >= 0 ) {
378 mFile = file.left(slash) + '/' + mFile; 381 mFile = file.left(slash) + '/' + mFile;
@@ -520,7 +523,7 @@ QString AppLnk::type() const
520*/ 523*/
521QString AppLnk::file() const 524QString AppLnk::file() const
522{ 525{
523 if ( mFile.isNull() ) { 526 if ( mExec.isEmpty ( ) && mFile.isNull() ) {
524 AppLnk* that = (AppLnk*)this; 527 AppLnk* that = (AppLnk*)this;
525 QString ext = MimeType(mType).extension(); 528 QString ext = MimeType(mType).extension();
526 if ( !ext.isEmpty() ) 529 if ( !ext.isEmpty() )
@@ -529,6 +532,7 @@ QString AppLnk::file() const
529 that->mFile = 532 that->mFile =
530 mLinkFile.right(8)==".desktop" // 8 = strlen(".desktop") 533 mLinkFile.right(8)==".desktop" // 8 = strlen(".desktop")
531 ? mLinkFile.left(mLinkFile.length()-8) : mLinkFile; 534 ? mLinkFile.left(mLinkFile.length()-8) : mLinkFile;
535 qDebug("mFile now == %s", mFile.latin1());
532 } else if ( mType.contains('/') ) { 536 } else if ( mType.contains('/') ) {
533 that->mFile = 537 that->mFile =
534 QString(getenv("HOME"))+"/Documents/"+mType+"/"+safeFileName(that->mName); 538 QString(getenv("HOME"))+"/Documents/"+mType+"/"+safeFileName(that->mName);
@@ -697,6 +701,18 @@ void AppLnk::setExec( const QString& exec )
697 mExec = exec; 701 mExec = exec;
698} 702}
699 703
704#if 0 // this was inlined for better BC
705/*!
706 Sets the Rotation property to \a rot.
707
708 \sa rotation()
709*/
710void AppLnk::setRotation ( const QString &rot )
711{
712 mRotation = rot;
713}
714#endif
715
700/*! 716/*!
701 Sets the Name property to \a docname. 717 Sets the Name property to \a docname.
702 718
@@ -835,6 +851,10 @@ void AppLnk::storeLink() const
835 config.writeEntry("Name",mName); 851 config.writeEntry("Name",mName);
836 if ( !mIconFile.isNull() ) config.writeEntry("Icon",mIconFile); 852 if ( !mIconFile.isNull() ) config.writeEntry("Icon",mIconFile);
837 config.writeEntry("Type",type()); 853 config.writeEntry("Type",type());
854 if(!rotation().isEmpty())
855 config.writeEntry("Rotation",rotation());
856 else
857 config.removeEntry("Rotation");
838 if ( !mComment.isNull() ) config.writeEntry("Comment",mComment); 858 if ( !mComment.isNull() ) config.writeEntry("Comment",mComment);
839 QString f = file(); 859 QString f = file();
840 int i = 0; 860 int i = 0;
diff --git a/library/applnk.h b/library/applnk.h
index 71b62ef..b92ddba 100644
--- a/library/applnk.h
+++ b/library/applnk.h
@@ -73,6 +73,7 @@ public:
73 void setLinkFile( const QString& filename ); 73 void setLinkFile( const QString& filename );
74 void setComment( const QString& comment ); 74 void setComment( const QString& comment );
75 void setType( const QString& mimetype ); 75 void setType( const QString& mimetype );
76 inline void setRotation ( const QString &rotation ) { mRotation = rot; } // inline for BC
76 void setIcon( const QString& iconname ); 77 void setIcon( const QString& iconname );
77 void setCategories( const QArray<int> &v ); 78 void setCategories( const QArray<int> &v );
78 bool writeLink() const; 79 bool writeLink() const;
diff --git a/library/lnkproperties.cpp b/library/lnkproperties.cpp
index 983c677..0b30a9a 100644
--- a/library/lnkproperties.cpp
+++ b/library/lnkproperties.cpp
@@ -26,6 +26,7 @@
26#include "lnkpropertiesbase_p.h" 26#include "lnkpropertiesbase_p.h"
27#include "ir.h" 27#include "ir.h"
28 28
29#include <qpe/qpeapplication.h>
29#include <qpe/applnk.h> 30#include <qpe/applnk.h>
30#include <qpe/global.h> 31#include <qpe/global.h>
31#include <qpe/categorywidget.h> 32#include <qpe/categorywidget.h>
@@ -50,6 +51,7 @@
50#include <qsize.h> 51#include <qsize.h>
51#include <qcombobox.h> 52#include <qcombobox.h>
52#include <qregexp.h> 53#include <qregexp.h>
54#include <qbuttongroup.h>
53 55
54#include <stdlib.h> 56#include <stdlib.h>
55 57
@@ -85,7 +87,9 @@ LnkProperties::LnkProperties( AppLnk* l, QWidget* parent )
85 87
86 d->docname->setReadOnly( FALSE ); 88 d->docname->setReadOnly( FALSE );
87 d->preload->hide(); 89 d->preload->hide();
88 d->spacer->hide(); 90 d->rotate->hide();
91 d->rotateButtons->hide();
92 d->labelspacer->hide();
89 93
90 // ### THIS MUST GO, FIX WIERD BUG in QLAYOUT 94 // ### THIS MUST GO, FIX WIERD BUG in QLAYOUT
91 d->categoryEdit->kludge(); 95 d->categoryEdit->kludge();
@@ -110,6 +114,13 @@ LnkProperties::LnkProperties( AppLnk* l, QWidget* parent )
110 114
111 if ( l->property("CanFastload") == "0" ) 115 if ( l->property("CanFastload") == "0" )
112 d->preload->hide(); 116 d->preload->hide();
117 if ( !l->property("Rotation"). isEmpty ()) {
118 d->rotate->setChecked ( true );
119 d->rotateButtons->setButton(((QPEApplication::defaultRotation()+l->rotation().toInt())%360)/90);
120 }
121 else {
122 d->rotateButtons->setEnabled(false);
123 }
113 124
114 Config cfg("Launcher"); 125 Config cfg("Launcher");
115 cfg.setGroup("Preload"); 126 cfg.setGroup("Preload");
@@ -275,12 +286,28 @@ void LnkProperties::done(int ok)
275 changed = TRUE; 286 changed = TRUE;
276 } 287 }
277 } 288 }
289 if ( !d->rotate->isHidden()) {
290 QString newrot;
291
292 if (d->rotate->isChecked()) {
293 int rot=0;
294 for(; rot<4; rot++) {
295 if (d->rotateButtons->find(rot)->isOn())
296 break;
297 }
298 newrot = QString::number((QPEApplication::defaultRotation()+rot*90)%360);
299 }
300 if (newrot !=lnk->rotation()) {
301 lnk->setRotation(newrot);
302 changed = TRUE;
303 }
304 }
278 if ( d->preload->isHidden() && d->locationCombo->currentItem() != currentLocation ) { 305 if ( d->preload->isHidden() && d->locationCombo->currentItem() != currentLocation ) {
279 moveLnk(); 306 moveLnk();
280 } else if ( changed ) { 307 } else if ( changed ) {
281 lnk->writeLink(); 308 lnk->writeLink();
282 } 309 }
283 310
284 if ( !d->preload->isHidden() ) { 311 if ( !d->preload->isHidden() ) {
285 Config cfg("Launcher"); 312 Config cfg("Launcher");
286 cfg.setGroup("Preload"); 313 cfg.setGroup("Preload");
diff --git a/library/lnkpropertiesbase_p.ui b/library/lnkpropertiesbase_p.ui
index e7139e7..c2271f1 100644
--- a/library/lnkpropertiesbase_p.ui
+++ b/library/lnkpropertiesbase_p.ui
@@ -11,8 +11,8 @@
11 <rect> 11 <rect>
12 <x>0</x> 12 <x>0</x>
13 <y>0</y> 13 <y>0</y>
14 <width>289</width> 14 <width>267</width>
15 <height>449</height> 15 <height>450</height>
16 </rect> 16 </rect>
17 </property> 17 </property>
18 <property stdset="1"> 18 <property stdset="1">
@@ -31,6 +31,10 @@
31 <name>caption</name> 31 <name>caption</name>
32 <string>Details</string> 32 <string>Details</string>
33 </property> 33 </property>
34 <property stdset="1">
35 <name>icon</name>
36 <pixmap>image0</pixmap>
37 </property>
34 <property> 38 <property>
35 <name>layoutMargin</name> 39 <name>layoutMargin</name>
36 </property> 40 </property>
@@ -79,7 +83,7 @@
79 <name>spacing</name> 83 <name>spacing</name>
80 <number>3</number> 84 <number>3</number>
81 </property> 85 </property>
82 <widget row="6" column="0" rowspan="1" colspan="2" > 86 <widget row="8" column="0" rowspan="1" colspan="2" >
83 <class>CategoryWidget</class> 87 <class>CategoryWidget</class>
84 <property stdset="1"> 88 <property stdset="1">
85 <name>name</name> 89 <name>name</name>
@@ -94,53 +98,46 @@
94 </property> 98 </property>
95 </widget> 99 </widget>
96 <widget row="5" column="0" rowspan="1" colspan="2" > 100 <widget row="5" column="0" rowspan="1" colspan="2" >
97 <class>QLabel</class> 101 <class>QCheckBox</class>
98 <property stdset="1"> 102 <property stdset="1">
99 <name>name</name> 103 <name>name</name>
100 <cstring>spacer</cstring> 104 <cstring>rotate</cstring>
101 </property>
102 <property stdset="1">
103 <name>sizePolicy</name>
104 <sizepolicy>
105 <hsizetype>1</hsizetype>
106 <vsizetype>7</vsizetype>
107 </sizepolicy>
108 </property> 105 </property>
109 <property stdset="1"> 106 <property stdset="1">
110 <name>text</name> 107 <name>text</name>
111 <string></string> 108 <string>Use custom rotation</string>
112 </property> 109 </property>
113 </widget> 110 <property>
114 <widget row="3" column="0" > 111 <name>layoutMargin</name>
115 <class>QLabel</class>
116 <property stdset="1">
117 <name>name</name>
118 <cstring>commentLabel</cstring>
119 </property> 112 </property>
120 <property stdset="1"> 113 <property>
121 <name>text</name> 114 <name>layoutSpacing</name>
122 <string>Comment:</string> 115 </property>
116 <property>
117 <name>whatsThis</name>
118 <string>Preload this application so that it is available instantly.</string>
123 </property> 119 </property>
124 </widget> 120 </widget>
125 <widget row="2" column="0" > 121 <widget row="0" column="1" >
126 <class>QLabel</class> 122 <class>QLineEdit</class>
127 <property stdset="1"> 123 <property stdset="1">
128 <name>name</name> 124 <name>name</name>
129 <cstring>typeLabel</cstring> 125 <cstring>docname</cstring>
130 </property> 126 </property>
131 <property stdset="1"> 127 <property stdset="1">
132 <name>focusPolicy</name> 128 <name>sizePolicy</name>
133 <enum>NoFocus</enum> 129 <sizepolicy>
130 <hsizetype>7</hsizetype>
131 <vsizetype>0</vsizetype>
132 </sizepolicy>
134 </property> 133 </property>
135 <property stdset="1"> 134 <property stdset="1">
136 <name>text</name> 135 <name>text</name>
137 <string>Type:</string> 136 <string></string>
138 </property>
139 <property>
140 <name>layoutMargin</name>
141 </property> 137 </property>
142 <property> 138 <property>
143 <name>layoutSpacing</name> 139 <name>whatsThis</name>
140 <string>The name of this document.</string>
144 </property> 141 </property>
145 </widget> 142 </widget>
146 <widget row="1" column="1" > 143 <widget row="1" column="1" >
@@ -161,41 +158,36 @@
161 <string>The media the document resides on.</string> 158 <string>The media the document resides on.</string>
162 </property> 159 </property>
163 </widget> 160 </widget>
164 <widget row="0" column="1" > 161 <widget row="2" column="0" >
165 <class>QLineEdit</class> 162 <class>QLabel</class>
166 <property stdset="1"> 163 <property stdset="1">
167 <name>name</name> 164 <name>name</name>
168 <cstring>docname</cstring> 165 <cstring>typeLabel</cstring>
169 </property> 166 </property>
170 <property stdset="1"> 167 <property stdset="1">
171 <name>sizePolicy</name> 168 <name>focusPolicy</name>
172 <sizepolicy> 169 <enum>NoFocus</enum>
173 <hsizetype>7</hsizetype>
174 <vsizetype>0</vsizetype>
175 </sizepolicy>
176 </property> 170 </property>
177 <property stdset="1"> 171 <property stdset="1">
178 <name>text</name> 172 <name>text</name>
179 <string></string> 173 <string>Type:</string>
180 </property> 174 </property>
181 <property> 175 <property>
182 <name>whatsThis</name> 176 <name>layoutMargin</name>
183 <string>The name of this document.</string> 177 </property>
178 <property>
179 <name>layoutSpacing</name>
184 </property> 180 </property>
185 </widget> 181 </widget>
186 <widget row="0" column="0" > 182 <widget row="2" column="1" >
187 <class>QLabel</class> 183 <class>QLabel</class>
188 <property stdset="1"> 184 <property stdset="1">
189 <name>name</name> 185 <name>name</name>
190 <cstring>TextLabel1</cstring> 186 <cstring>type</cstring>
191 </property>
192 <property stdset="1">
193 <name>frameShadow</name>
194 <enum>MShadow</enum>
195 </property> 187 </property>
196 <property stdset="1"> 188 <property stdset="1">
197 <name>text</name> 189 <name>text</name>
198 <string>Name:</string> 190 <string></string>
199 </property> 191 </property>
200 </widget> 192 </widget>
201 <widget row="1" column="0" > 193 <widget row="1" column="0" >
@@ -226,15 +218,19 @@
226 <name>layoutSpacing</name> 218 <name>layoutSpacing</name>
227 </property> 219 </property>
228 </widget> 220 </widget>
229 <widget row="2" column="1" > 221 <widget row="0" column="0" >
230 <class>QLabel</class> 222 <class>QLabel</class>
231 <property stdset="1"> 223 <property stdset="1">
232 <name>name</name> 224 <name>name</name>
233 <cstring>type</cstring> 225 <cstring>TextLabel1</cstring>
226 </property>
227 <property stdset="1">
228 <name>frameShadow</name>
229 <enum>MShadow</enum>
234 </property> 230 </property>
235 <property stdset="1"> 231 <property stdset="1">
236 <name>text</name> 232 <name>text</name>
237 <string></string> 233 <string>Name:</string>
238 </property> 234 </property>
239 </widget> 235 </widget>
240 <widget row="3" column="1" > 236 <widget row="3" column="1" >
@@ -248,6 +244,233 @@
248 <string></string> 244 <string></string>
249 </property> 245 </property>
250 </widget> 246 </widget>
247 <widget row="6" column="0" rowspan="1" colspan="2" >
248 <class>QButtonGroup</class>
249 <property stdset="1">
250 <name>name</name>
251 <cstring>rotateButtons</cstring>
252 </property>
253 <property stdset="1">
254 <name>frameShape</name>
255 <enum>NoFrame</enum>
256 </property>
257 <property stdset="1">
258 <name>title</name>
259 <string></string>
260 </property>
261 <property stdset="1">
262 <name>exclusive</name>
263 <bool>true</bool>
264 </property>
265 <property>
266 <name>layoutMargin</name>
267 </property>
268 <property>
269 <name>layoutSpacing</name>
270 </property>
271 <hbox>
272 <property stdset="1">
273 <name>margin</name>
274 <number>0</number>
275 </property>
276 <property stdset="1">
277 <name>spacing</name>
278 <number>3</number>
279 </property>
280 <spacer>
281 <property>
282 <name>name</name>
283 <cstring>s1</cstring>
284 </property>
285 <property stdset="1">
286 <name>orientation</name>
287 <enum>Horizontal</enum>
288 </property>
289 <property stdset="1">
290 <name>sizeType</name>
291 <enum>Fixed</enum>
292 </property>
293 <property>
294 <name>sizeHint</name>
295 <size>
296 <width>20</width>
297 <height>28</height>
298 </size>
299 </property>
300 </spacer>
301 <widget>
302 <class>QToolButton</class>
303 <property stdset="1">
304 <name>name</name>
305 <cstring>ToolButton1</cstring>
306 </property>
307 <property stdset="1">
308 <name>text</name>
309 <string></string>
310 </property>
311 <property stdset="1">
312 <name>pixmap</name>
313 <pixmap>image0</pixmap>
314 </property>
315 <property stdset="1">
316 <name>toggleButton</name>
317 <bool>true</bool>
318 </property>
319 <property stdset="1">
320 <name>on</name>
321 <bool>false</bool>
322 </property>
323 <property stdset="1">
324 <name>usesBigPixmap</name>
325 <bool>true</bool>
326 </property>
327 <property stdset="1">
328 <name>toggleButton</name>
329 <bool>true</bool>
330 </property>
331 <property stdset="1">
332 <name>on</name>
333 <bool>false</bool>
334 </property>
335 <property stdset="1">
336 <name>buttonGroupId</name>
337 <number>0</number>
338 </property>
339 </widget>
340 <widget>
341 <class>QToolButton</class>
342 <property stdset="1">
343 <name>name</name>
344 <cstring>ToolButton2</cstring>
345 </property>
346 <property stdset="1">
347 <name>text</name>
348 <string></string>
349 </property>
350 <property stdset="1">
351 <name>pixmap</name>
352 <pixmap>image1</pixmap>
353 </property>
354 <property stdset="1">
355 <name>toggleButton</name>
356 <bool>true</bool>
357 </property>
358 <property stdset="1">
359 <name>usesBigPixmap</name>
360 <bool>true</bool>
361 </property>
362 <property stdset="1">
363 <name>toggleButton</name>
364 <bool>true</bool>
365 </property>
366 <property stdset="1">
367 <name>buttonGroupId</name>
368 <number>1</number>
369 </property>
370 </widget>
371 <widget>
372 <class>QToolButton</class>
373 <property stdset="1">
374 <name>name</name>
375 <cstring>ToolButton3</cstring>
376 </property>
377 <property stdset="1">
378 <name>text</name>
379 <string></string>
380 </property>
381 <property stdset="1">
382 <name>pixmap</name>
383 <pixmap>image2</pixmap>
384 </property>
385 <property stdset="1">
386 <name>toggleButton</name>
387 <bool>true</bool>
388 </property>
389 <property stdset="1">
390 <name>usesBigPixmap</name>
391 <bool>true</bool>
392 </property>
393 <property stdset="1">
394 <name>toggleButton</name>
395 <bool>true</bool>
396 </property>
397 <property stdset="1">
398 <name>buttonGroupId</name>
399 <number>2</number>
400 </property>
401 </widget>
402 <widget>
403 <class>QToolButton</class>
404 <property stdset="1">
405 <name>name</name>
406 <cstring>ToolButton4</cstring>
407 </property>
408 <property stdset="1">
409 <name>text</name>
410 <string></string>
411 </property>
412 <property stdset="1">
413 <name>pixmap</name>
414 <pixmap>image3</pixmap>
415 </property>
416 <property stdset="1">
417 <name>toggleButton</name>
418 <bool>true</bool>
419 </property>
420 <property stdset="1">
421 <name>usesBigPixmap</name>
422 <bool>true</bool>
423 </property>
424 <property stdset="1">
425 <name>toggleButton</name>
426 <bool>true</bool>
427 </property>
428 <property stdset="1">
429 <name>buttonGroupId</name>
430 <number>3</number>
431 </property>
432 </widget>
433 <spacer>
434 <property>
435 <name>name</name>
436 <cstring>s4</cstring>
437 </property>
438 <property stdset="1">
439 <name>orientation</name>
440 <enum>Horizontal</enum>
441 </property>
442 <property stdset="1">
443 <name>sizeType</name>
444 <enum>MinimumExpanding</enum>
445 </property>
446 <property>
447 <name>sizeHint</name>
448 <size>
449 <width>20</width>
450 <height>20</height>
451 </size>
452 </property>
453 </spacer>
454 </hbox>
455 </widget>
456 <widget row="7" column="0" rowspan="1" colspan="2" >
457 <class>QLabel</class>
458 <property stdset="1">
459 <name>name</name>
460 <cstring>labelspacer</cstring>
461 </property>
462 <property stdset="1">
463 <name>sizePolicy</name>
464 <sizepolicy>
465 <hsizetype>1</hsizetype>
466 <vsizetype>7</vsizetype>
467 </sizepolicy>
468 </property>
469 <property stdset="1">
470 <name>text</name>
471 <string></string>
472 </property>
473 </widget>
251 <widget row="4" column="0" rowspan="1" colspan="2" > 474 <widget row="4" column="0" rowspan="1" colspan="2" >
252 <class>QCheckBox</class> 475 <class>QCheckBox</class>
253 <property stdset="1"> 476 <property stdset="1">
@@ -269,6 +492,17 @@
269 <string>Preload this application so that it is available instantly.</string> 492 <string>Preload this application so that it is available instantly.</string>
270 </property> 493 </property>
271 </widget> 494 </widget>
495 <widget row="3" column="0" >
496 <class>QLabel</class>
497 <property stdset="1">
498 <name>name</name>
499 <cstring>commentLabel</cstring>
500 </property>
501 <property stdset="1">
502 <name>text</name>
503 <string>Comment:</string>
504 </property>
505 </widget>
272 </grid> 506 </grid>
273 </widget> 507 </widget>
274 <widget> 508 <widget>
@@ -403,15 +637,39 @@
403 <hordata>7</hordata> 637 <hordata>7</hordata>
404 <verdata>7</verdata> 638 <verdata>7</verdata>
405 </sizepolicy> 639 </sizepolicy>
406 <pixmap>image0</pixmap> 640 <pixmap>image4</pixmap>
407 </customwidget> 641 </customwidget>
408</customwidgets> 642</customwidgets>
409<images> 643<images>
410 <image> 644 <image>
411 <name>image0</name> 645 <name>image0</name>
646 <data format="XPM.GZ" length="1226">789cd3d7528808f055d0d2e72a2e492cc94c5648ce482c52d04a29cdcdad8c8eb5ade6523236520022230543251d2e253d856405bffcbc54105b19c856360003b014013032d4282b2b13366708a951067908240fa6a00a95612cb01a6528d04362e92158e0a40213830510c4546598dd103570b72098482ea3ae1ac2eec1ef2f6565d4f051c6123e3035f8c1a81a2aa8a9b5e60200f6abd263</data>
647 </image>
648 <image>
649 <name>image1</name>
650 <data format="XPM.GZ" length="1226">789cd3d7528808f055d0d2e72a2e492cc94c5648ce482c52d04a29cdcdad8c8eb5ade6523236520022230543251d2e253d856405bffcbc54105b19c856360003b01416a0ac8c6053a2061960aa019b806c0ca61a65a81a7c764125e9a486b07b40d2cacaf8fd0555a4875f0d0620cf1c22dc33d8c2197fda504605e4ab41b5129f7b3001b630c46317f16a88cb17c814add5d02ecdd75a730100b509d263</data>
651 </image>
652 <image>
653 <name>image2</name>
654 <data format="XPM.GZ" length="1226">789cd3d7528808f055d0d2e72a2e492cc94c5648ce482c52d04a29cdcdad8c8eb5ade6523236520022230543251d2e253d856405bffcbc54105b19c856360003b0140130aa863a6a9495f5f49441002c02664030840d53a3ac0c53a40c67c25950bb60d27a70857a08268a7b20164059082695d510e31e62fc85193e7aa8e1832568a1eaf1c6c5e053a34c500d0a18b66a6aadb9001be4d263</data>
655 </image>
656 <image>
657 <name>image3</name>
658 <data format="XPM.GZ" length="1226">789cd3d7528808f055d0d2e72a2e492cc94c5648ce482c52d04a29cdcdad8c8eb5ade6523236520022230543251d2e253d856405bffcbc54105b19c856360003b014125006013d5480a64659198b22543510697445e86a9029daaad183ba87809bb1788c7435d8019a392872cad8d5a002b2d510e777648ad66a08a70d62d2185169152b1819699ec870c634869cf48c1e7cc4aba9b5e602005d86d263</data>
659 </image>
660 <image>
661 <name>image4</name>
412 <data format="XPM.GZ" length="646">789c6dd2c10ac2300c00d07bbf2234b7229d1be245fc04c5a3201e4615f430059d0711ff5ddb2e6bb236ec90eed134cb5a19d8ef36602af5ecdbfeeac05dda0798d3abebde87e3faa374d3807fa0d633a52d38d8de6f679fe33fc776e196f53cd010188256a3600a292882096246517815ca99884606e18044a3a40d91824820924265a7923a2e8bcd05f33db1173e002913175f2a6be6d3294871a2d95fa00e8a94ee017b69d339d90df1e77c57ea072ede6758</data> 662 <data format="XPM.GZ" length="646">789c6dd2c10ac2300c00d07bbf2234b7229d1be245fc04c5a3201e4615f430059d0711ff5ddb2e6bb236ec90eed134cb5a19d8ef36602af5ecdbfeeac05dda0798d3abebde87e3faa374d3807fa0d633a52d38d8de6f679fe33fc776e196f53cd010188256a3600a292882096246517815ca99884606e18044a3a40d91824820924265a7923a2e8bcd05f33db1173e002913175f2a6be6d3294871a2d95fa00e8a94ee017b69d339d90df1e77c57ea072ede6758</data>
413 </image> 663 </image>
414</images> 664</images>
665<connections>
666 <connection>
667 <sender>rotate</sender>
668 <signal>toggled(bool)</signal>
669 <receiver>rotateButtons</receiver>
670 <slot>setEnabled(bool)</slot>
671 </connection>
672</connections>
415<tabstops> 673<tabstops>
416 <tabstop>docname</tabstop> 674 <tabstop>docname</tabstop>
417 <tabstop>preload</tabstop> 675 <tabstop>preload</tabstop>