author | zecke <zecke> | 2002-04-27 17:59:11 (UTC) |
---|---|---|
committer | zecke <zecke> | 2002-04-27 17:59:11 (UTC) |
commit | 5db1fbe485f5e8a1a455d7c8d602695e13db3a97 (patch) (unidiff) | |
tree | 191561593a37f2ea276c55a67090b2a1c93044e4 | |
parent | f3ee6db944094c61ecf803f07ff736bf6d70141d (diff) | |
download | opie-5db1fbe485f5e8a1a455d7c8d602695e13db3a97.zip opie-5db1fbe485f5e8a1a455d7c8d602695e13db3a97.tar.gz opie-5db1fbe485f5e8a1a455d7c8d602695e13db3a97.tar.bz2 |
remove the dependency of libopie
-rw-r--r-- | core/launcher/launcher.cpp | 2 | ||||
-rw-r--r-- | core/launcher/launcher.pro | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/core/launcher/launcher.cpp b/core/launcher/launcher.cpp index 1a52f69..a0f04f1 100644 --- a/core/launcher/launcher.cpp +++ b/core/launcher/launcher.cpp | |||
@@ -1,410 +1,410 @@ | |||
1 | /********************************************************************** | 1 | /********************************************************************** |
2 | ** Copyright (c) 2002 Holger zecke Freyther | 2 | ** Copyright (c) 2002 Holger zecke Freyther |
3 | ** Copyright (C) 2000 Trolltech AS. All rights reserved. | 3 | ** Copyright (C) 2000 Trolltech AS. All rights reserved. |
4 | ** | 4 | ** |
5 | ** This file is part of Qtopia Environment. | 5 | ** This file is part of Qtopia Environment. |
6 | ** | 6 | ** |
7 | ** This file may be distributed and/or modified under the terms of the | 7 | ** This file may be distributed and/or modified under the terms of the |
8 | ** GNU General Public License version 2 as published by the Free Software | 8 | ** GNU General Public License version 2 as published by the Free Software |
9 | ** Foundation and appearing in the file LICENSE.GPL included in the | 9 | ** Foundation and appearing in the file LICENSE.GPL included in the |
10 | ** packaging of this file. | 10 | ** packaging of this file. |
11 | ** | 11 | ** |
12 | ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE | 12 | ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE |
13 | ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. | 13 | ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. |
14 | ** | 14 | ** |
15 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. | 15 | ** See http://www.trolltech.com/gpl/ for GPL licensing information. |
16 | ** | 16 | ** |
17 | ** Contact info@trolltech.com if any conditions of this licensing are | 17 | ** Contact info@trolltech.com if any conditions of this licensing are |
18 | ** not clear to you. | 18 | ** not clear to you. |
19 | ** | 19 | ** |
20 | **********************************************************************/ | 20 | **********************************************************************/ |
21 | 21 | ||
22 | // WARNING: Do *NOT* define this yourself. The SL5xxx from SHARP does NOT | 22 | // WARNING: Do *NOT* define this yourself. The SL5xxx from SHARP does NOT |
23 | // have this class. | 23 | // have this class. |
24 | #define QTOPIA_INTERNAL_FSLP | 24 | #define QTOPIA_INTERNAL_FSLP |
25 | 25 | ||
26 | #include <opie/oconfig.h> | 26 | #include <qpe/config.h> |
27 | #include <qpe/qcopenvelope_qws.h> | 27 | #include <qpe/qcopenvelope_qws.h> |
28 | #include <qpe/resource.h> | 28 | #include <qpe/resource.h> |
29 | #include <qpe/applnk.h> | 29 | #include <qpe/applnk.h> |
30 | #include <qpe/config.h> | 30 | #include <qpe/config.h> |
31 | #include <qpe/global.h> | 31 | #include <qpe/global.h> |
32 | #include <qpe/qpeapplication.h> | 32 | #include <qpe/qpeapplication.h> |
33 | #include <qpe/mimetype.h> | 33 | #include <qpe/mimetype.h> |
34 | #include <qpe/storage.h> | 34 | #include <qpe/storage.h> |
35 | #include <qpe/palmtoprecord.h> | 35 | #include <qpe/palmtoprecord.h> |
36 | 36 | ||
37 | #include <qdatetime.h> | 37 | #include <qdatetime.h> |
38 | #include <qdir.h> | 38 | #include <qdir.h> |
39 | #include <qwindowsystem_qws.h> | 39 | #include <qwindowsystem_qws.h> |
40 | #include <qtimer.h> | 40 | #include <qtimer.h> |
41 | #include <qcombobox.h> | 41 | #include <qcombobox.h> |
42 | #include <qvbox.h> | 42 | #include <qvbox.h> |
43 | #include <qlayout.h> | 43 | #include <qlayout.h> |
44 | #include <qstyle.h> | 44 | #include <qstyle.h> |
45 | #include <qpushbutton.h> | 45 | #include <qpushbutton.h> |
46 | #include <qtabbar.h> | 46 | #include <qtabbar.h> |
47 | #include <qwidgetstack.h> | 47 | #include <qwidgetstack.h> |
48 | #include <qlayout.h> | 48 | #include <qlayout.h> |
49 | #include <qregexp.h> | 49 | #include <qregexp.h> |
50 | #include <qmessagebox.h> | 50 | #include <qmessagebox.h> |
51 | #include <qframe.h> | 51 | #include <qframe.h> |
52 | #include <qpainter.h> | 52 | #include <qpainter.h> |
53 | #include <qlabel.h> | 53 | #include <qlabel.h> |
54 | #include <qtextstream.h> | 54 | #include <qtextstream.h> |
55 | 55 | ||
56 | #include "launcherview.h" | 56 | #include "launcherview.h" |
57 | #include "launcher.h" | 57 | #include "launcher.h" |
58 | #include "syncdialog.h" | 58 | #include "syncdialog.h" |
59 | #include "desktop.h" | 59 | #include "desktop.h" |
60 | #include <qpe/lnkproperties.h> | 60 | #include <qpe/lnkproperties.h> |
61 | #include "mrulist.h" | 61 | #include "mrulist.h" |
62 | #include "qrsync.h" | 62 | #include "qrsync.h" |
63 | #include <stdlib.h> | 63 | #include <stdlib.h> |
64 | #include <unistd.h> | 64 | #include <unistd.h> |
65 | 65 | ||
66 | #if defined(_OS_LINUX_) || defined(Q_OS_LINUX) | 66 | #if defined(_OS_LINUX_) || defined(Q_OS_LINUX) |
67 | #include <stdio.h> | 67 | #include <stdio.h> |
68 | #include <sys/vfs.h> | 68 | #include <sys/vfs.h> |
69 | #include <mntent.h> | 69 | #include <mntent.h> |
70 | #endif | 70 | #endif |
71 | 71 | ||
72 | #include <qpe/storage.h> | 72 | #include <qpe/storage.h> |
73 | #include "mediummountgui.h" | 73 | #include "mediummountgui.h" |
74 | //#define SHOW_ALL | 74 | //#define SHOW_ALL |
75 | 75 | ||
76 | // uidGen | 76 | // uidGen |
77 | 77 | ||
78 | // uidGen | 78 | // uidGen |
79 | namespace { | 79 | namespace { |
80 | QStringList configToMime( Config *cfg ){ | 80 | QStringList configToMime( Config *cfg ){ |
81 | QStringList mimes; | 81 | QStringList mimes; |
82 | bool tmpMime = true; | 82 | bool tmpMime = true; |
83 | cfg->setGroup("mimetypes" ); | 83 | cfg->setGroup("mimetypes" ); |
84 | tmpMime = cfg->readBoolEntry("all" ,true); | 84 | tmpMime = cfg->readBoolEntry("all" ,true); |
85 | if( tmpMime ){ | 85 | if( tmpMime ){ |
86 | mimes << QString::null; | 86 | mimes << QString::null; |
87 | return mimes; | 87 | return mimes; |
88 | }else{ | 88 | }else{ |
89 | tmpMime = cfg->readBoolEntry("audio", true ); | 89 | tmpMime = cfg->readBoolEntry("audio", true ); |
90 | if(tmpMime ) | 90 | if(tmpMime ) |
91 | mimes.append("audio/*" ); | 91 | mimes.append("audio/*" ); |
92 | 92 | ||
93 | tmpMime = cfg->readBoolEntry("image", true ); | 93 | tmpMime = cfg->readBoolEntry("image", true ); |
94 | if(tmpMime ) | 94 | if(tmpMime ) |
95 | mimes.append("image/*" ); | 95 | mimes.append("image/*" ); |
96 | 96 | ||
97 | tmpMime = cfg->readBoolEntry("text", true ); | 97 | tmpMime = cfg->readBoolEntry("text", true ); |
98 | if(tmpMime ) | 98 | if(tmpMime ) |
99 | mimes.append("text/*"); | 99 | mimes.append("text/*"); |
100 | 100 | ||
101 | tmpMime = cfg->readBoolEntry("video", true ); | 101 | tmpMime = cfg->readBoolEntry("video", true ); |
102 | if(tmpMime ) | 102 | if(tmpMime ) |
103 | mimes.append("video/*" ); | 103 | mimes.append("video/*" ); |
104 | } | 104 | } |
105 | return mimes; | 105 | return mimes; |
106 | } | 106 | } |
107 | 107 | ||
108 | } | 108 | } |
109 | 109 | ||
110 | 110 | ||
111 | CategoryTabWidget::CategoryTabWidget( QWidget* parent ) : | 111 | CategoryTabWidget::CategoryTabWidget( QWidget* parent ) : |
112 | QVBox( parent ) | 112 | QVBox( parent ) |
113 | { | 113 | { |
114 | categoryBar = 0; | 114 | categoryBar = 0; |
115 | stack = 0; | 115 | stack = 0; |
116 | } | 116 | } |
117 | 117 | ||
118 | void CategoryTabWidget::prevTab() | 118 | void CategoryTabWidget::prevTab() |
119 | { | 119 | { |
120 | if ( categoryBar ) { | 120 | if ( categoryBar ) { |
121 | int n = categoryBar->count(); | 121 | int n = categoryBar->count(); |
122 | int tab = categoryBar->currentTab(); | 122 | int tab = categoryBar->currentTab(); |
123 | if ( tab >= 0 ) | 123 | if ( tab >= 0 ) |
124 | categoryBar->setCurrentTab( (tab - 1 + n)%n ); | 124 | categoryBar->setCurrentTab( (tab - 1 + n)%n ); |
125 | } | 125 | } |
126 | } | 126 | } |
127 | 127 | ||
128 | void CategoryTabWidget::nextTab() | 128 | void CategoryTabWidget::nextTab() |
129 | { | 129 | { |
130 | if ( categoryBar ) { | 130 | if ( categoryBar ) { |
131 | int n = categoryBar->count(); | 131 | int n = categoryBar->count(); |
132 | int tab = categoryBar->currentTab(); | 132 | int tab = categoryBar->currentTab(); |
133 | categoryBar->setCurrentTab( (tab + 1)%n ); | 133 | categoryBar->setCurrentTab( (tab + 1)%n ); |
134 | } | 134 | } |
135 | } | 135 | } |
136 | 136 | ||
137 | void CategoryTabWidget::addItem( const QString& linkfile ) | 137 | void CategoryTabWidget::addItem( const QString& linkfile ) |
138 | { | 138 | { |
139 | int i=0; | 139 | int i=0; |
140 | AppLnk *app = new AppLnk(linkfile); | 140 | AppLnk *app = new AppLnk(linkfile); |
141 | if ( !app->isValid() ) { | 141 | if ( !app->isValid() ) { |
142 | delete app; | 142 | delete app; |
143 | return; | 143 | return; |
144 | } | 144 | } |
145 | if ( !app->file().isEmpty() ) { | 145 | if ( !app->file().isEmpty() ) { |
146 | // A document | 146 | // A document |
147 | delete app; | 147 | delete app; |
148 | app = new DocLnk(linkfile); | 148 | app = new DocLnk(linkfile); |
149 | ((LauncherView*)(stack->widget(ids.count()-1)))->addItem(app); | 149 | ((LauncherView*)(stack->widget(ids.count()-1)))->addItem(app); |
150 | return; | 150 | return; |
151 | } | 151 | } |
152 | for ( QStringList::Iterator it=ids.begin(); it!=ids.end(); ++it) { | 152 | for ( QStringList::Iterator it=ids.begin(); it!=ids.end(); ++it) { |
153 | if ( !(*it).isEmpty() ) { | 153 | if ( !(*it).isEmpty() ) { |
154 | QRegExp tf(*it,FALSE,TRUE); | 154 | QRegExp tf(*it,FALSE,TRUE); |
155 | if ( tf.match(app->type()) >= 0 ) { | 155 | if ( tf.match(app->type()) >= 0 ) { |
156 | ((LauncherView*)stack->widget(i))->addItem(app); | 156 | ((LauncherView*)stack->widget(i))->addItem(app); |
157 | return; | 157 | return; |
158 | } | 158 | } |
159 | i++; | 159 | i++; |
160 | } | 160 | } |
161 | } | 161 | } |
162 | } | 162 | } |
163 | 163 | ||
164 | void CategoryTabWidget::initializeCategories(AppLnkSet* rootFolder, | 164 | void CategoryTabWidget::initializeCategories(AppLnkSet* rootFolder, |
165 | AppLnkSet* docFolder, const QList<FileSystem> &fs) | 165 | AppLnkSet* docFolder, const QList<FileSystem> &fs) |
166 | { | 166 | { |
167 | delete categoryBar; | 167 | delete categoryBar; |
168 | categoryBar = new CategoryTabBar( this ); | 168 | categoryBar = new CategoryTabBar( this ); |
169 | QPalette pal = categoryBar->palette(); | 169 | QPalette pal = categoryBar->palette(); |
170 | pal.setColor( QColorGroup::Light, pal.color(QPalette::Active,QColorGroup::Shadow) ); | 170 | pal.setColor( QColorGroup::Light, pal.color(QPalette::Active,QColorGroup::Shadow) ); |
171 | pal.setColor( QColorGroup::Background, pal.active().background().light(110) ); | 171 | pal.setColor( QColorGroup::Background, pal.active().background().light(110) ); |
172 | categoryBar->setPalette( pal ); | 172 | categoryBar->setPalette( pal ); |
173 | 173 | ||
174 | delete stack; | 174 | delete stack; |
175 | stack = new QWidgetStack(this); | 175 | stack = new QWidgetStack(this); |
176 | tabs=0; | 176 | tabs=0; |
177 | 177 | ||
178 | ids.clear(); | 178 | ids.clear(); |
179 | 179 | ||
180 | QStringList types = rootFolder->types(); | 180 | QStringList types = rootFolder->types(); |
181 | for ( QStringList::Iterator it=types.begin(); it!=types.end(); ++it) { | 181 | for ( QStringList::Iterator it=types.begin(); it!=types.end(); ++it) { |
182 | if ( !(*it).isEmpty() ) { | 182 | if ( !(*it).isEmpty() ) { |
183 | newView(*it,rootFolder->typePixmap(*it),rootFolder->typeName(*it)); | 183 | newView(*it,rootFolder->typePixmap(*it),rootFolder->typeName(*it)); |
184 | } | 184 | } |
185 | } | 185 | } |
186 | QListIterator<AppLnk> it( rootFolder->children() ); | 186 | QListIterator<AppLnk> it( rootFolder->children() ); |
187 | AppLnk* l; | 187 | AppLnk* l; |
188 | while ( (l=it.current()) ) { | 188 | while ( (l=it.current()) ) { |
189 | if ( l->type() == "Separator" ) { | 189 | if ( l->type() == "Separator" ) { |
190 | rootFolder->remove(l); | 190 | rootFolder->remove(l); |
191 | delete l; | 191 | delete l; |
192 | } else { | 192 | } else { |
193 | int i=0; | 193 | int i=0; |
194 | for ( QStringList::Iterator it=types.begin(); it!=types.end(); ++it) { | 194 | for ( QStringList::Iterator it=types.begin(); it!=types.end(); ++it) { |
195 | if ( *it == l->type() ) | 195 | if ( *it == l->type() ) |
196 | ((LauncherView*)stack->widget(i))->addItem(l,FALSE); | 196 | ((LauncherView*)stack->widget(i))->addItem(l,FALSE); |
197 | i++; | 197 | i++; |
198 | } | 198 | } |
199 | } | 199 | } |
200 | ++it; | 200 | ++it; |
201 | } | 201 | } |
202 | rootFolder->detachChildren(); | 202 | rootFolder->detachChildren(); |
203 | for (int i=0; i<tabs; i++) | 203 | for (int i=0; i<tabs; i++) |
204 | ((LauncherView*)stack->widget(i))->sort(); | 204 | ((LauncherView*)stack->widget(i))->sort(); |
205 | 205 | ||
206 | // all documents | 206 | // all documents |
207 | docview = newView( QString::null, Resource::loadPixmap("DocsIcon"), tr("Documents")); | 207 | docview = newView( QString::null, Resource::loadPixmap("DocsIcon"), tr("Documents")); |
208 | docview->populate( docFolder, QString::null ); | 208 | docview->populate( docFolder, QString::null ); |
209 | docFolder->detachChildren(); | 209 | docFolder->detachChildren(); |
210 | docview->setFileSystems(fs); | 210 | docview->setFileSystems(fs); |
211 | docview->setToolsEnabled(TRUE); | 211 | docview->setToolsEnabled(TRUE); |
212 | 212 | ||
213 | connect( categoryBar, SIGNAL(selected(int)), stack, SLOT(raiseWidget(int)) ); | 213 | connect( categoryBar, SIGNAL(selected(int)), stack, SLOT(raiseWidget(int)) ); |
214 | 214 | ||
215 | ((LauncherView*)stack->widget(0))->setFocus(); | 215 | ((LauncherView*)stack->widget(0))->setFocus(); |
216 | 216 | ||
217 | categoryBar->show(); | 217 | categoryBar->show(); |
218 | stack->show(); | 218 | stack->show(); |
219 | } | 219 | } |
220 | 220 | ||
221 | void CategoryTabWidget::updateDocs(AppLnkSet* docFolder, const QList<FileSystem> &fs) | 221 | void CategoryTabWidget::updateDocs(AppLnkSet* docFolder, const QList<FileSystem> &fs) |
222 | { | 222 | { |
223 | docview->populate( docFolder, QString::null ); | 223 | docview->populate( docFolder, QString::null ); |
224 | docFolder->detachChildren(); | 224 | docFolder->detachChildren(); |
225 | docview->setFileSystems(fs); | 225 | docview->setFileSystems(fs); |
226 | docview->updateTools(); | 226 | docview->updateTools(); |
227 | } | 227 | } |
228 | 228 | ||
229 | LauncherView* CategoryTabWidget::newView( const QString& id, const QPixmap& pm, const QString& label ) | 229 | LauncherView* CategoryTabWidget::newView( const QString& id, const QPixmap& pm, const QString& label ) |
230 | { | 230 | { |
231 | LauncherView* view = new LauncherView( stack ); | 231 | LauncherView* view = new LauncherView( stack ); |
232 | connect( view, SIGNAL(clicked(const AppLnk*)), | 232 | connect( view, SIGNAL(clicked(const AppLnk*)), |
233 | this, SIGNAL(clicked(const AppLnk*))); | 233 | this, SIGNAL(clicked(const AppLnk*))); |
234 | connect( view, SIGNAL(rightPressed(AppLnk*)), | 234 | connect( view, SIGNAL(rightPressed(AppLnk*)), |
235 | this, SIGNAL(rightPressed(AppLnk*))); | 235 | this, SIGNAL(rightPressed(AppLnk*))); |
236 | ids.append(id); | 236 | ids.append(id); |
237 | categoryBar->addTab( new QTab( pm, label ) ); | 237 | categoryBar->addTab( new QTab( pm, label ) ); |
238 | stack->addWidget( view, tabs++ ); | 238 | stack->addWidget( view, tabs++ ); |
239 | return view; | 239 | return view; |
240 | } | 240 | } |
241 | 241 | ||
242 | void CategoryTabWidget::updateLink(const QString& linkfile) | 242 | void CategoryTabWidget::updateLink(const QString& linkfile) |
243 | { | 243 | { |
244 | int i=0; | 244 | int i=0; |
245 | LauncherView* view; | 245 | LauncherView* view; |
246 | while ((view = (LauncherView*)stack->widget(i++))) { | 246 | while ((view = (LauncherView*)stack->widget(i++))) { |
247 | if ( view->removeLink(linkfile) ) | 247 | if ( view->removeLink(linkfile) ) |
248 | break; | 248 | break; |
249 | } | 249 | } |
250 | addItem(linkfile); | 250 | addItem(linkfile); |
251 | docview->updateTools(); | 251 | docview->updateTools(); |
252 | } | 252 | } |
253 | 253 | ||
254 | void CategoryTabWidget::paletteChange( const QPalette &p ) | 254 | void CategoryTabWidget::paletteChange( const QPalette &p ) |
255 | { | 255 | { |
256 | QVBox::paletteChange( p ); | 256 | QVBox::paletteChange( p ); |
257 | QPalette pal = palette(); | 257 | QPalette pal = palette(); |
258 | pal.setColor( QColorGroup::Light, pal.color(QPalette::Active,QColorGroup::Shadow) ); | 258 | pal.setColor( QColorGroup::Light, pal.color(QPalette::Active,QColorGroup::Shadow) ); |
259 | pal.setColor( QColorGroup::Background, pal.active().background().light(110) ); | 259 | pal.setColor( QColorGroup::Background, pal.active().background().light(110) ); |
260 | categoryBar->setPalette( pal ); | 260 | categoryBar->setPalette( pal ); |
261 | categoryBar->update(); | 261 | categoryBar->update(); |
262 | } | 262 | } |
263 | 263 | ||
264 | void CategoryTabWidget::setBusy(bool on) | 264 | void CategoryTabWidget::setBusy(bool on) |
265 | { | 265 | { |
266 | if ( on ) | 266 | if ( on ) |
267 | ((LauncherView*)stack->visibleWidget())->setBusy(TRUE); | 267 | ((LauncherView*)stack->visibleWidget())->setBusy(TRUE); |
268 | else | 268 | else |
269 | for (int i=0; i<tabs; i++) | 269 | for (int i=0; i<tabs; i++) |
270 | ((LauncherView*)stack->widget(i))->setBusy(FALSE); | 270 | ((LauncherView*)stack->widget(i))->setBusy(FALSE); |
271 | } | 271 | } |
272 | 272 | ||
273 | 273 | ||
274 | CategoryTabBar::CategoryTabBar( QWidget *parent, const char *name ) | 274 | CategoryTabBar::CategoryTabBar( QWidget *parent, const char *name ) |
275 | : QTabBar( parent, name ) | 275 | : QTabBar( parent, name ) |
276 | { | 276 | { |
277 | setFocusPolicy( NoFocus ); | 277 | setFocusPolicy( NoFocus ); |
278 | connect( this, SIGNAL( selected(int) ), this, SLOT( layoutTabs() ) ); | 278 | connect( this, SIGNAL( selected(int) ), this, SLOT( layoutTabs() ) ); |
279 | } | 279 | } |
280 | 280 | ||
281 | CategoryTabBar::~CategoryTabBar() | 281 | CategoryTabBar::~CategoryTabBar() |
282 | { | 282 | { |
283 | } | 283 | } |
284 | 284 | ||
285 | void CategoryTabBar::layoutTabs() | 285 | void CategoryTabBar::layoutTabs() |
286 | { | 286 | { |
287 | if ( !count() ) | 287 | if ( !count() ) |
288 | return; | 288 | return; |
289 | 289 | ||
290 | // int percentFalloffTable[] = { 100, 70, 40, 12, 6, 3, 1, 0 }; | 290 | // int percentFalloffTable[] = { 100, 70, 40, 12, 6, 3, 1, 0 }; |
291 | int hiddenTabWidth = -12; | 291 | int hiddenTabWidth = -12; |
292 | int middleTab = currentTab(); | 292 | int middleTab = currentTab(); |
293 | int hframe, vframe, overlap; | 293 | int hframe, vframe, overlap; |
294 | style().tabbarMetrics( this, hframe, vframe, overlap ); | 294 | style().tabbarMetrics( this, hframe, vframe, overlap ); |
295 | QFontMetrics fm = fontMetrics(); | 295 | QFontMetrics fm = fontMetrics(); |
296 | int x = 0; | 296 | int x = 0; |
297 | QRect r; | 297 | QRect r; |
298 | QTab *t; | 298 | QTab *t; |
299 | int available = width()-1; | 299 | int available = width()-1; |
300 | int required = 0; | 300 | int required = 0; |
301 | for ( int i = 0; i < count(); i++ ) { | 301 | for ( int i = 0; i < count(); i++ ) { |
302 | t = tab(i); | 302 | t = tab(i); |
303 | // if (( i < (middleTab - 1) ) || ( i > (middleTab + 1) )) { | 303 | // if (( i < (middleTab - 1) ) || ( i > (middleTab + 1) )) { |
304 | if ( i != middleTab ) { | 304 | if ( i != middleTab ) { |
305 | // required += hiddenTabWidth + hframe - overlap; | 305 | // required += hiddenTabWidth + hframe - overlap; |
306 | available -= hiddenTabWidth + hframe - overlap; | 306 | available -= hiddenTabWidth + hframe - overlap; |
307 | if ( t->iconSet() != 0 ) | 307 | if ( t->iconSet() != 0 ) |
308 | available -= t->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).width(); | 308 | available -= t->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).width(); |
309 | } else { | 309 | } else { |
310 | required += fm.width( t->text() ) + hframe - overlap; | 310 | required += fm.width( t->text() ) + hframe - overlap; |
311 | if ( t->iconSet() != 0 ) | 311 | if ( t->iconSet() != 0 ) |
312 | required += t->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).width(); | 312 | required += t->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).width(); |
313 | } | 313 | } |
314 | } | 314 | } |
315 | for ( int i = 0; i < count(); i++ ) { | 315 | for ( int i = 0; i < count(); i++ ) { |
316 | t = tab(i); | 316 | t = tab(i); |
317 | // if (( i < (middleTab - 1) ) || ( i > (middleTab + 1) )) { | 317 | // if (( i < (middleTab - 1) ) || ( i > (middleTab + 1) )) { |
318 | if ( i != middleTab ) { | 318 | if ( i != middleTab ) { |
319 | int w = hiddenTabWidth; | 319 | int w = hiddenTabWidth; |
320 | int ih = 0; | 320 | int ih = 0; |
321 | if ( t->iconSet() != 0 ) { | 321 | if ( t->iconSet() != 0 ) { |
322 | w += t->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).width(); | 322 | w += t->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).width(); |
323 | ih = t->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).height(); | 323 | ih = t->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).height(); |
324 | } | 324 | } |
325 | int h = QMAX( fm.height(), ih ); | 325 | int h = QMAX( fm.height(), ih ); |
326 | h = QMAX( h, QApplication::globalStrut().height() ); | 326 | h = QMAX( h, QApplication::globalStrut().height() ); |
327 | 327 | ||
328 | h += vframe; | 328 | h += vframe; |
329 | w += hframe; | 329 | w += hframe; |
330 | 330 | ||
331 | t->setRect( QRect(x, 0, w, h) ); | 331 | t->setRect( QRect(x, 0, w, h) ); |
332 | x += t->rect().width() - overlap; | 332 | x += t->rect().width() - overlap; |
333 | r = r.unite( t->rect() ); | 333 | r = r.unite( t->rect() ); |
334 | } else { | 334 | } else { |
335 | int w = fm.width( t->text() ); | 335 | int w = fm.width( t->text() ); |
336 | int ih = 0; | 336 | int ih = 0; |
337 | if ( t->iconSet() != 0 ) { | 337 | if ( t->iconSet() != 0 ) { |
338 | w += t->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).width(); | 338 | w += t->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).width(); |
339 | ih = t->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).height(); | 339 | ih = t->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).height(); |
340 | } | 340 | } |
341 | int h = QMAX( fm.height(), ih ); | 341 | int h = QMAX( fm.height(), ih ); |
342 | h = QMAX( h, QApplication::globalStrut().height() ); | 342 | h = QMAX( h, QApplication::globalStrut().height() ); |
343 | 343 | ||
344 | h += vframe; | 344 | h += vframe; |
345 | w += hframe; | 345 | w += hframe; |
346 | 346 | ||
347 | // t->setRect( QRect(x, 0, w * available/required, h) ); | 347 | // t->setRect( QRect(x, 0, w * available/required, h) ); |
348 | t->setRect( QRect(x, 0, available, h) ); | 348 | t->setRect( QRect(x, 0, available, h) ); |
349 | x += t->rect().width() - overlap; | 349 | x += t->rect().width() - overlap; |
350 | r = r.unite( t->rect() ); | 350 | r = r.unite( t->rect() ); |
351 | } | 351 | } |
352 | } | 352 | } |
353 | 353 | ||
354 | QRect rr = tab(count()-1)->rect(); | 354 | QRect rr = tab(count()-1)->rect(); |
355 | rr.setRight(width()-1); | 355 | rr.setRight(width()-1); |
356 | tab(count()-1)->setRect( rr ); | 356 | tab(count()-1)->setRect( rr ); |
357 | 357 | ||
358 | for ( t = tabList()->first(); t; t = tabList()->next() ) { | 358 | for ( t = tabList()->first(); t; t = tabList()->next() ) { |
359 | QRect tr = t->rect(); | 359 | QRect tr = t->rect(); |
360 | tr.setHeight( r.height() ); | 360 | tr.setHeight( r.height() ); |
361 | t->setRect( tr ); | 361 | t->setRect( tr ); |
362 | } | 362 | } |
363 | 363 | ||
364 | update(); | 364 | update(); |
365 | } | 365 | } |
366 | 366 | ||
367 | 367 | ||
368 | void CategoryTabBar::paint( QPainter * p, QTab * t, bool selected ) const | 368 | void CategoryTabBar::paint( QPainter * p, QTab * t, bool selected ) const |
369 | { | 369 | { |
370 | #if QT_VERSION >= 300 | 370 | #if QT_VERSION >= 300 |
371 | QStyle::SFlags flags = QStyle::Style_Default; | 371 | QStyle::SFlags flags = QStyle::Style_Default; |
372 | if ( selected ) | 372 | if ( selected ) |
373 | flags |= QStyle::Style_Selected; | 373 | flags |= QStyle::Style_Selected; |
374 | style().drawControl( QStyle::CE_TabBarTab, p, this, t->rect(), | 374 | style().drawControl( QStyle::CE_TabBarTab, p, this, t->rect(), |
375 | colorGroup(), flags, QStyleOption(t) ); | 375 | colorGroup(), flags, QStyleOption(t) ); |
376 | #else | 376 | #else |
377 | style().drawTab( p, this, t, selected ); | 377 | style().drawTab( p, this, t, selected ); |
378 | #endif | 378 | #endif |
379 | 379 | ||
380 | QRect r( t->rect() ); | 380 | QRect r( t->rect() ); |
381 | QFont f( font() ); | 381 | QFont f( font() ); |
382 | if ( selected ) | 382 | if ( selected ) |
383 | f.setBold( TRUE ); | 383 | f.setBold( TRUE ); |
384 | p->setFont( f ); | 384 | p->setFont( f ); |
385 | 385 | ||
386 | int iw = 0; | 386 | int iw = 0; |
387 | int ih = 0; | 387 | int ih = 0; |
388 | if ( t->iconSet() != 0 ) { | 388 | if ( t->iconSet() != 0 ) { |
389 | iw = t->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).width() + 2; | 389 | iw = t->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).width() + 2; |
390 | ih = t->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).height(); | 390 | ih = t->iconSet()->pixmap( QIconSet::Small, QIconSet::Normal ).height(); |
391 | } | 391 | } |
392 | int w = iw + p->fontMetrics().width( t->text() ) + 4; | 392 | int w = iw + p->fontMetrics().width( t->text() ) + 4; |
393 | int h = QMAX(p->fontMetrics().height() + 4, ih ); | 393 | int h = QMAX(p->fontMetrics().height() + 4, ih ); |
394 | paintLabel( p, QRect( r.left() + (r.width()-w)/2 - 3, | 394 | paintLabel( p, QRect( r.left() + (r.width()-w)/2 - 3, |
395 | r.top() + (r.height()-h)/2, w, h ), t, | 395 | r.top() + (r.height()-h)/2, w, h ), t, |
396 | #if QT_VERSION >= 300 | 396 | #if QT_VERSION >= 300 |
397 | t->identifier() == keyboardFocusTab() | 397 | t->identifier() == keyboardFocusTab() |
398 | #else | 398 | #else |
399 | t->identitifer() == keyboardFocusTab() | 399 | t->identitifer() == keyboardFocusTab() |
400 | #endif | 400 | #endif |
401 | ); | 401 | ); |
402 | } | 402 | } |
403 | 403 | ||
404 | 404 | ||
405 | void CategoryTabBar::paintLabel( QPainter* p, const QRect&, | 405 | void CategoryTabBar::paintLabel( QPainter* p, const QRect&, |
406 | QTab* t, bool has_focus ) const | 406 | QTab* t, bool has_focus ) const |
407 | { | 407 | { |
408 | QRect r = t->rect(); | 408 | QRect r = t->rect(); |
409 | // if ( t->id != currentTab() ) | 409 | // if ( t->id != currentTab() ) |
410 | //r.moveBy( 1, 1 ); | 410 | //r.moveBy( 1, 1 ); |
diff --git a/core/launcher/launcher.pro b/core/launcher/launcher.pro index f94f338..c77da50 100644 --- a/core/launcher/launcher.pro +++ b/core/launcher/launcher.pro | |||
@@ -1,123 +1,123 @@ | |||
1 | TEMPLATE= app | 1 | TEMPLATE= app |
2 | 2 | ||
3 | CONFIG = qt warn_on release | 3 | CONFIG = qt warn_on release |
4 | 4 | ||
5 | DESTDIR = $(OPIEDIR)/bin | 5 | DESTDIR = $(OPIEDIR)/bin |
6 | 6 | ||
7 | HEADERS = background.h \ | 7 | HEADERS = background.h \ |
8 | desktop.h \ | 8 | desktop.h \ |
9 | qprocess.h \ | 9 | qprocess.h \ |
10 | mediummountgui.h \ | 10 | mediummountgui.h \ |
11 | info.h \ | 11 | info.h \ |
12 | appicons.h \ | 12 | appicons.h \ |
13 | taskbar.h \ | 13 | taskbar.h \ |
14 | sidething.h \ | 14 | sidething.h \ |
15 | mrulist.h \ | 15 | mrulist.h \ |
16 | stabmon.h \ | 16 | stabmon.h \ |
17 | inputmethods.h \ | 17 | inputmethods.h \ |
18 | systray.h \ | 18 | systray.h \ |
19 | wait.h \ | 19 | wait.h \ |
20 | shutdownimpl.h \ | 20 | shutdownimpl.h \ |
21 | launcher.h \ | 21 | launcher.h \ |
22 | launcherview.h \ | 22 | launcherview.h \ |
23 | ../calibrate/calibrate.h \ | 23 | ../calibrate/calibrate.h \ |
24 | startmenu.h \ | 24 | startmenu.h \ |
25 | transferserver.h \ | 25 | transferserver.h \ |
26 | qcopbridge.h \ | 26 | qcopbridge.h \ |
27 | packageslave.h \ | 27 | packageslave.h \ |
28 | irserver.h \ | 28 | irserver.h \ |
29 | $(OPIEDIR)/rsync/buf.h \ | 29 | $(OPIEDIR)/rsync/buf.h \ |
30 | $(OPIEDIR)/rsync/checksum.h \ | 30 | $(OPIEDIR)/rsync/checksum.h \ |
31 | $(OPIEDIR)/rsync/command.h \ | 31 | $(OPIEDIR)/rsync/command.h \ |
32 | $(OPIEDIR)/rsync/emit.h \ | 32 | $(OPIEDIR)/rsync/emit.h \ |
33 | $(OPIEDIR)/rsync/job.h \ | 33 | $(OPIEDIR)/rsync/job.h \ |
34 | $(OPIEDIR)/rsync/netint.h \ | 34 | $(OPIEDIR)/rsync/netint.h \ |
35 | $(OPIEDIR)/rsync/protocol.h \ | 35 | $(OPIEDIR)/rsync/protocol.h \ |
36 | $(OPIEDIR)/rsync/prototab.h \ | 36 | $(OPIEDIR)/rsync/prototab.h \ |
37 | $(OPIEDIR)/rsync/rsync.h \ | 37 | $(OPIEDIR)/rsync/rsync.h \ |
38 | $(OPIEDIR)/rsync/search.h \ | 38 | $(OPIEDIR)/rsync/search.h \ |
39 | $(OPIEDIR)/rsync/stream.h \ | 39 | $(OPIEDIR)/rsync/stream.h \ |
40 | $(OPIEDIR)/rsync/sumset.h \ | 40 | $(OPIEDIR)/rsync/sumset.h \ |
41 | $(OPIEDIR)/rsync/trace.h \ | 41 | $(OPIEDIR)/rsync/trace.h \ |
42 | $(OPIEDIR)/rsync/types.h \ | 42 | $(OPIEDIR)/rsync/types.h \ |
43 | $(OPIEDIR)/rsync/util.h \ | 43 | $(OPIEDIR)/rsync/util.h \ |
44 | $(OPIEDIR)/rsync/whole.h \ | 44 | $(OPIEDIR)/rsync/whole.h \ |
45 | $(OPIEDIR)/rsync/config_rsync.h \ | 45 | $(OPIEDIR)/rsync/config_rsync.h \ |
46 | $(OPIEDIR)/rsync/qrsync.h | 46 | $(OPIEDIR)/rsync/qrsync.h |
47 | # quicklauncher.h \ | 47 | # quicklauncher.h \ |
48 | 48 | ||
49 | SOURCES = background.cpp \ | 49 | SOURCES = background.cpp \ |
50 | desktop.cpp \ | 50 | desktop.cpp \ |
51 | mediummountgui.cpp \ | 51 | mediummountgui.cpp \ |
52 | qprocess.cpp qprocess_unix.cpp \ | 52 | qprocess.cpp qprocess_unix.cpp \ |
53 | info.cpp \ | 53 | info.cpp \ |
54 | appicons.cpp \ | 54 | appicons.cpp \ |
55 | taskbar.cpp \ | 55 | taskbar.cpp \ |
56 | sidething.cpp \ | 56 | sidething.cpp \ |
57 | mrulist.cpp \ | 57 | mrulist.cpp \ |
58 | stabmon.cpp \ | 58 | stabmon.cpp \ |
59 | inputmethods.cpp \ | 59 | inputmethods.cpp \ |
60 | systray.cpp \ | 60 | systray.cpp \ |
61 | wait.cpp \ | 61 | wait.cpp \ |
62 | shutdownimpl.cpp \ | 62 | shutdownimpl.cpp \ |
63 | launcher.cpp \ | 63 | launcher.cpp \ |
64 | launcherview.cpp \ | 64 | launcherview.cpp \ |
65 | $(OPIEDIR)/calibrate/calibrate.cpp \ | 65 | $(OPIEDIR)/calibrate/calibrate.cpp \ |
66 | transferserver.cpp \ | 66 | transferserver.cpp \ |
67 | packageslave.cpp \ | 67 | packageslave.cpp \ |
68 | irserver.cpp \ | 68 | irserver.cpp \ |
69 | qcopbridge.cpp \ | 69 | qcopbridge.cpp \ |
70 | startmenu.cpp \ | 70 | startmenu.cpp \ |
71 | main.cpp \ | 71 | main.cpp \ |
72 | $(OPIEDIR)/rsync/base64.c \ | 72 | $(OPIEDIR)/rsync/base64.c \ |
73 | $(OPIEDIR)/rsync/buf.c \ | 73 | $(OPIEDIR)/rsync/buf.c \ |
74 | $(OPIEDIR)/rsync/checksum.c \ | 74 | $(OPIEDIR)/rsync/checksum.c \ |
75 | $(OPIEDIR)/rsync/command.c \ | 75 | $(OPIEDIR)/rsync/command.c \ |
76 | $(OPIEDIR)/rsync/delta.c \ | 76 | $(OPIEDIR)/rsync/delta.c \ |
77 | $(OPIEDIR)/rsync/emit.c \ | 77 | $(OPIEDIR)/rsync/emit.c \ |
78 | $(OPIEDIR)/rsync/hex.c \ | 78 | $(OPIEDIR)/rsync/hex.c \ |
79 | $(OPIEDIR)/rsync/job.c \ | 79 | $(OPIEDIR)/rsync/job.c \ |
80 | $(OPIEDIR)/rsync/mdfour.c \ | 80 | $(OPIEDIR)/rsync/mdfour.c \ |
81 | $(OPIEDIR)/rsync/mksum.c \ | 81 | $(OPIEDIR)/rsync/mksum.c \ |
82 | $(OPIEDIR)/rsync/msg.c \ | 82 | $(OPIEDIR)/rsync/msg.c \ |
83 | $(OPIEDIR)/rsync/netint.c \ | 83 | $(OPIEDIR)/rsync/netint.c \ |
84 | $(OPIEDIR)/rsync/patch.c \ | 84 | $(OPIEDIR)/rsync/patch.c \ |
85 | $(OPIEDIR)/rsync/prototab.c \ | 85 | $(OPIEDIR)/rsync/prototab.c \ |
86 | $(OPIEDIR)/rsync/readsums.c \ | 86 | $(OPIEDIR)/rsync/readsums.c \ |
87 | $(OPIEDIR)/rsync/scoop.c \ | 87 | $(OPIEDIR)/rsync/scoop.c \ |
88 | $(OPIEDIR)/rsync/search.c \ | 88 | $(OPIEDIR)/rsync/search.c \ |
89 | $(OPIEDIR)/rsync/stats.c \ | 89 | $(OPIEDIR)/rsync/stats.c \ |
90 | $(OPIEDIR)/rsync/stream.c \ | 90 | $(OPIEDIR)/rsync/stream.c \ |
91 | $(OPIEDIR)/rsync/sumset.c \ | 91 | $(OPIEDIR)/rsync/sumset.c \ |
92 | $(OPIEDIR)/rsync/trace.c \ | 92 | $(OPIEDIR)/rsync/trace.c \ |
93 | $(OPIEDIR)/rsync/tube.c \ | 93 | $(OPIEDIR)/rsync/tube.c \ |
94 | $(OPIEDIR)/rsync/util.c \ | 94 | $(OPIEDIR)/rsync/util.c \ |
95 | $(OPIEDIR)/rsync/version.c \ | 95 | $(OPIEDIR)/rsync/version.c \ |
96 | $(OPIEDIR)/rsync/whole.c \ | 96 | $(OPIEDIR)/rsync/whole.c \ |
97 | $(OPIEDIR)/rsync/qrsync.cpp | 97 | $(OPIEDIR)/rsync/qrsync.cpp |
98 | 98 | ||
99 | INTERFACES= shutdown.ui syncdialog.ui | 99 | INTERFACES= shutdown.ui syncdialog.ui |
100 | 100 | ||
101 | INCLUDEPATH += $(OPIEDIR)/include | 101 | INCLUDEPATH += $(OPIEDIR)/include |
102 | DEPENDPATH+= $(OPIEDIR)/include . | 102 | DEPENDPATH+= $(OPIEDIR)/include . |
103 | 103 | ||
104 | INCLUDEPATH += $(OPIEDIR)/calibrate | 104 | INCLUDEPATH += $(OPIEDIR)/calibrate |
105 | DEPENDPATH+= $(OPIEDIR)/calibrate | 105 | DEPENDPATH+= $(OPIEDIR)/calibrate |
106 | 106 | ||
107 | INCLUDEPATH += $(OPIEDIR)/rsync | 107 | INCLUDEPATH += $(OPIEDIR)/rsync |
108 | DEPENDPATH+= $(OPIEDIR)/rsync | 108 | DEPENDPATH+= $(OPIEDIR)/rsync |
109 | 109 | ||
110 | TARGET = qpe | 110 | TARGET = qpe |
111 | 111 | ||
112 | LIBS += -lqpe -lcrypt -lopie | 112 | LIBS += -lqpe -lcrypt |
113 | 113 | ||
114 | TRANSLATIONS = ../i18n/de/qpe.ts | 114 | TRANSLATIONS = ../i18n/de/qpe.ts |
115 | TRANSLATIONS += ../i18n/pt_BR/qpe.ts | 115 | TRANSLATIONS += ../i18n/pt_BR/qpe.ts |
116 | TRANSLATIONS += ../i18n/en/qpe.ts | 116 | TRANSLATIONS += ../i18n/en/qpe.ts |
117 | TRANSLATIONS += ../i18n/hu/qpe.ts | 117 | TRANSLATIONS += ../i18n/hu/qpe.ts |
118 | TRANSLATIONS += ../i18n/ja/qpe.ts | 118 | TRANSLATIONS += ../i18n/ja/qpe.ts |
119 | TRANSLATIONS += ../i18n/fr/qpe.ts | 119 | TRANSLATIONS += ../i18n/fr/qpe.ts |
120 | TRANSLATIONS += ../i18n/ko/qpe.ts | 120 | TRANSLATIONS += ../i18n/ko/qpe.ts |
121 | TRANSLATIONS += ../i18n/no/qpe.ts | 121 | TRANSLATIONS += ../i18n/no/qpe.ts |
122 | TRANSLATIONS += ../i18n/zh_CN/qpe.ts | 122 | TRANSLATIONS += ../i18n/zh_CN/qpe.ts |
123 | TRANSLATIONS += ../i18n/zh_TW/qpe.ts | 123 | TRANSLATIONS += ../i18n/zh_TW/qpe.ts |