summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--core/launcher/launcher.cpp102
-rw-r--r--core/launcher/launcher.h29
2 files changed, 93 insertions, 38 deletions
diff --git a/core/launcher/launcher.cpp b/core/launcher/launcher.cpp
index bcc2495..d9fc8e4 100644
--- a/core/launcher/launcher.cpp
+++ b/core/launcher/launcher.cpp
@@ -22,6 +22,8 @@
22// have this class. 22// have this class.
23#define QTOPIA_INTERNAL_FSLP 23#define QTOPIA_INTERNAL_FSLP
24 24
25//#include <opie/ofiledialog.h>
26#include <opie/ofileselector.h>
25#include <qpe/qcopenvelope_qws.h> 27#include <qpe/qcopenvelope_qws.h>
26#include <qpe/resource.h> 28#include <qpe/resource.h>
27#include <qpe/applnk.h> 29#include <qpe/applnk.h>
@@ -197,7 +199,7 @@ void CategoryTabWidget::addItem( const QString& linkfile )
197} 199}
198 200
199void CategoryTabWidget::initializeCategories(AppLnkSet* rootFolder, 201void CategoryTabWidget::initializeCategories(AppLnkSet* rootFolder,
200 AppLnkSet* docFolder, const QList<FileSystem> &fs) 202 AppLnkSet* /*docFolder*/, const QList<FileSystem> & /*fs*/)
201{ 203{
202 QString current; 204 QString current;
203 if ( categoryBar ) { 205 if ( categoryBar ) {
@@ -251,13 +253,23 @@ void CategoryTabWidget::initializeCategories(AppLnkSet* rootFolder,
251 QImage img( Resource::loadImage( "DocsIcon" ) ); 253 QImage img( Resource::loadImage( "DocsIcon" ) );
252 QPixmap pm; 254 QPixmap pm;
253 pm = img.smoothScale( AppLnk::smallIconSize(), AppLnk::smallIconSize() ); 255 pm = img.smoothScale( AppLnk::smallIconSize(), AppLnk::smallIconSize() );
254 docview = newView( "Documents", // No tr 256
255 pm, tr("Documents")); 257 //ljpotter
256 docview->populate( docFolder, QString::null ); 258 CategoryTab *catTab ;
257 docFolder->detachChildren(); 259 catTab = new CategoryTab( pm, "Documents" );
258 docview->setFileSystems(fs); 260
259 docview->setToolsEnabled(TRUE); 261 categoryBar->addTab( catTab );
260 setTabAppearance( "Documents", cfg ); // No tr 262
263 fileSel = new DocumentTab( stack, 4, 0, "/","");
264 stack->addWidget( fileSel, tabs++ );
265
266 // fileSel->hide();
267
268 connect( fileSel, SIGNAL( fileSelected( const DocLnk & )),
269 this, SLOT(clickie(const DocLnk&)) );
270
271// connect( fileSel, SIGNAL( fileSelected( const QString & )),
272// this, SLOT(clickie(const QString&)) );
261 273
262 connect( categoryBar, SIGNAL(selected(int)), stack, SLOT(raiseWidget(int)) ); 274 connect( categoryBar, SIGNAL(selected(int)), stack, SLOT(raiseWidget(int)) );
263 275
@@ -273,9 +285,20 @@ void CategoryTabWidget::initializeCategories(AppLnkSet* rootFolder,
273 categoryBar->show(); 285 categoryBar->show();
274 stack->show(); 286 stack->show();
275 287
288
276 QCopEnvelope e("QPE/TaskBar","reloadApps()"); 289 QCopEnvelope e("QPE/TaskBar","reloadApps()");
277} 290}
278 291
292void CategoryTabWidget::clickie(const DocLnk &lnk) {
293 lnk.execute();
294 // fileSel->reparse();
295}
296
297void CategoryTabWidget::clickie(const QString &appStr) {
298// DocLnk lnk(appStr);
299// lnk.execute();
300}
301
279void CategoryTabWidget::setTabAppearance( const QString &id, Config &cfg ) 302void CategoryTabWidget::setTabAppearance( const QString &id, Config &cfg )
280{ 303{
281 QString grp( "Tab %1" ); // No tr 304 QString grp( "Tab %1" ); // No tr
@@ -318,13 +341,10 @@ void CategoryTabWidget::setTabAppearance( const QString &id, Config &cfg )
318 tab->fgColor = QColor(tabTextCol); 341 tab->fgColor = QColor(tabTextCol);
319} 342}
320 343
321void CategoryTabWidget::updateDocs(AppLnkSet* docFolder, const QList<FileSystem> &fs) 344//void CategoryTabWidget::updateDocs(AppLnkSet* docFolder, const QList<FileSystem> & /*fs*/)
322{ 345//{
323 docview->populate( docFolder, QString::null ); 346 // docFolder->detachChildren();
324 docFolder->detachChildren(); 347//}
325 docview->setFileSystems(fs);
326 docview->updateTools();
327}
328 348
329void CategoryTabWidget::tabProperties() 349void CategoryTabWidget::tabProperties()
330{ 350{
@@ -343,7 +363,7 @@ void CategoryTabWidget::tabProperties()
343 363
344QString CategoryTabWidget::getAllDocLinkInfo() const 364QString CategoryTabWidget::getAllDocLinkInfo() const
345{ 365{
346 return docview->getAllDocLinkInfo(); 366 return "";
347} 367}
348 368
349LauncherView* CategoryTabWidget::newView( const QString& id, const QPixmap& pm, const QString& label ) 369LauncherView* CategoryTabWidget::newView( const QString& id, const QPixmap& pm, const QString& label )
@@ -361,15 +381,14 @@ LauncherView* CategoryTabWidget::newView( const QString& id, const QPixmap& pm,
361 381
362void CategoryTabWidget::updateLink(const QString& linkfile) 382void CategoryTabWidget::updateLink(const QString& linkfile)
363{ 383{
364 int i=0; 384 // LauncherView* view;
365 LauncherView* view;
366 qApp->processEvents(); 385 qApp->processEvents();
367 while ((view = (LauncherView*)stack->widget(i++))) { 386// while ((view = (LauncherView*)stack->widget(i++))) {
368 if ( view->removeLink(linkfile) ) 387// if ( view->removeLink(linkfile) )
369 break; 388// break;
370 } 389// }
371 addItem(linkfile); 390 // addItem(linkfile);
372 docview->updateTools(); 391 fileSel->reparse();
373} 392}
374 393
375void CategoryTabWidget::paletteChange( const QPalette &p ) 394void CategoryTabWidget::paletteChange( const QPalette &p )
@@ -387,7 +406,7 @@ void CategoryTabWidget::setBusy(bool on)
387 if ( on ) 406 if ( on )
388 ((LauncherView*)stack->visibleWidget())->setBusy(TRUE); 407 ((LauncherView*)stack->visibleWidget())->setBusy(TRUE);
389 else 408 else
390 for (int i=0; i<tabs; i++) 409 for (int i=0; i<tabs-1; i++)
391 ((LauncherView*)stack->widget(i))->setBusy(FALSE); 410 ((LauncherView*)stack->widget(i))->setBusy(FALSE);
392} 411}
393 412
@@ -648,6 +667,7 @@ Launcher::Launcher( QWidget* parent, const char* name, WFlags fl )
648 connect( tabs, SIGNAL(rightPressed(AppLnk*)), 667 connect( tabs, SIGNAL(rightPressed(AppLnk*)),
649 this, SLOT(properties(AppLnk*))); 668 this, SLOT(properties(AppLnk*)));
650 669
670
651#if !defined(QT_NO_COP) 671#if !defined(QT_NO_COP)
652 QCopChannel* sysChannel = new QCopChannel( "QPE/System", this ); 672 QCopChannel* sysChannel = new QCopChannel( "QPE/System", this );
653 connect( sysChannel, SIGNAL(received(const QCString &, const QByteArray &)), 673 connect( sysChannel, SIGNAL(received(const QCString &, const QByteArray &)),
@@ -732,16 +752,13 @@ void Launcher::updateMimeTypes(AppLnkSet* folder)
732 */ 752 */
733void Launcher::loadDocs() // ok here comes a hack belonging to Global:: 753void Launcher::loadDocs() // ok here comes a hack belonging to Global::
734{ 754{
735
736 OWait *owait = new OWait(); 755 OWait *owait = new OWait();
737 Global::statusMessage( tr( "Finding documents" ) ); 756 Global::statusMessage( tr( "Finding documents" ) );
738 757
739 owait->show(); 758 owait->show();
740 qApp->processEvents(); 759 qApp->processEvents();
741 760 if(docsFolder) delete docsFolder;
742 delete docsFolder;
743 docsFolder = new DocLnkSet; 761 docsFolder = new DocLnkSet;
744
745 DocLnkSet *tmp = 0; 762 DocLnkSet *tmp = 0;
746 QString home = QString(getenv("HOME")) + "/Documents"; 763 QString home = QString(getenv("HOME")) + "/Documents";
747 tmp = new DocLnkSet( home , QString::null); 764 tmp = new DocLnkSet( home , QString::null);
@@ -764,9 +781,11 @@ void Launcher::loadDocs() // ok here comes a hack belonging to Global::
764 Config mediumCfg( "medium"); 781 Config mediumCfg( "medium");
765 mediumCfg.setGroup("main"); 782 mediumCfg.setGroup("main");
766 // a) -zecke we don't want to check 783 // a) -zecke we don't want to check
767 if(!mediumCfg.readBoolEntry("use", true ) ) 784 if(!mediumCfg.readBoolEntry("use", true ) ) {
785 owait->hide();
786 delete owait;
768 return; 787 return;
769 788 }
770 // find out wich filesystems are new in this round 789 // find out wich filesystems are new in this round
771 // We will do this by having a timestamp inside each mountpoint 790 // We will do this by having a timestamp inside each mountpoint
772 // if the current timestamp doesn't match this is a new file system and 791 // if the current timestamp doesn't match this is a new file system and
@@ -785,6 +804,8 @@ void Launcher::loadDocs() // ok here comes a hack belonging to Global::
785 delete tmp; 804 delete tmp;
786 } 805 }
787 } // done 806 } // done
807 owait->hide();
808 delete owait;
788 return; // save the else 809 return; // save the else
789 } 810 }
790 // c) zecke 811 // c) zecke
@@ -848,7 +869,6 @@ void Launcher::loadDocs() // ok here comes a hack belonging to Global::
848void Launcher::updateTabs() 869void Launcher::updateTabs()
849{ 870{
850 MimeType::updateApplications(); // ### reads all applnks twice 871 MimeType::updateApplications(); // ### reads all applnks twice
851
852 delete rootFolder; 872 delete rootFolder;
853 rootFolder = new AppLnkSet( MimeType::appsFolderName() ); 873 rootFolder = new AppLnkSet( MimeType::appsFolderName() );
854 874
@@ -860,7 +880,7 @@ void Launcher::updateTabs()
860void Launcher::updateDocs() 880void Launcher::updateDocs()
861{ 881{
862 loadDocs(); 882 loadDocs();
863 tabs->updateDocs(docsFolder,storage->fileSystems()); 883 // tabs->updateDocs(docsFolder,storage->fileSystems());
864} 884}
865 885
866void Launcher::viewSelected(const QString& s) 886void Launcher::viewSelected(const QString& s)
@@ -1317,3 +1337,19 @@ void Launcher::preloadApps()
1317#endif 1337#endif
1318 } 1338 }
1319} 1339}
1340
1341DocumentTab::DocumentTab( QWidget *parent, int mode, int selector, const QString &dirName, const QString &fileName)
1342 : OFileSelector(parent,mode,selector,dirName,fileName)
1343{
1344 setYesCancelVisible(false);
1345 setToolbarVisible(true);
1346 setPermissionBarVisible(false);
1347 setLineEditVisible(false) ;
1348 //setChooserVisible( bool chooser );
1349
1350}
1351
1352DocumentTab::~DocumentTab() {
1353
1354}
1355
diff --git a/core/launcher/launcher.h b/core/launcher/launcher.h
index c92ef5d..0616734 100644
--- a/core/launcher/launcher.h
+++ b/core/launcher/launcher.h
@@ -1,8 +1,7 @@
1/********************************************************************** 1/**********************************************************************
2** Copyright (C) 2000-2002 Trolltech AS. All rights reserved. 2** Copyright (C) 2000-2002 Trolltech AS. All rights reserved.
3** 3**
4** This file is part of the Qtopia Environment. 4** This file is part of the Qtopia Environment.**
5**
6** This file may be distributed and/or modified under the terms of the 5** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 6** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 7** Foundation and appearing in the file LICENSE.GPL included in the
@@ -21,6 +20,10 @@
21#define LAUNCHER_H 20#define LAUNCHER_H
22 21
23#include <qpe/config.h> 22#include <qpe/config.h>
23#include <qpe/applnk.h>
24
25#include <opie/ofileselector.h>
26
24#include <qmainwindow.h> 27#include <qmainwindow.h>
25#include <qtabbar.h> 28#include <qtabbar.h>
26#include <qstringlist.h> 29#include <qstringlist.h>
@@ -36,6 +39,17 @@ class QWidgetStack;
36class StorageInfo; 39class StorageInfo;
37class SyncDialog; 40class SyncDialog;
38 41
42
43class DocumentTab : public OFileSelector
44{
45 Q_OBJECT
46public:
47 DocumentTab( QWidget *parent, int mode, int selector, const QString &dirName, const QString &fileName);//, 4,0, "/","");
48~DocumentTab();
49private:
50
51};
52
39class CategoryTabBar : public QTabBar 53class CategoryTabBar : public QTabBar
40{ 54{
41 Q_OBJECT 55 Q_OBJECT
@@ -43,12 +57,15 @@ public:
43 CategoryTabBar( QWidget *parent=0, const char *name=0 ); 57 CategoryTabBar( QWidget *parent=0, const char *name=0 );
44 ~CategoryTabBar(); 58 ~CategoryTabBar();
45 59
60signals:
61
46protected slots: 62protected slots:
47 virtual void layoutTabs(); 63 virtual void layoutTabs();
48 64
49protected: 65protected:
50 void paint ( QPainter *p, QTab *t, bool f ) const; 66 void paint ( QPainter *p, QTab *t, bool f ) const;
51 void paintLabel( QPainter* p, const QRect& br, QTab* t, bool has_focus ) const; 67 void paintLabel( QPainter* p, const QRect& br, QTab* t, bool has_focus ) const;
68
52}; 69};
53 70
54class CategoryTabWidget : public QVBox { 71class CategoryTabWidget : public QVBox {
@@ -58,22 +75,24 @@ public:
58 CategoryTabWidget( QWidget* parent ); 75 CategoryTabWidget( QWidget* parent );
59 void initializeCategories(AppLnkSet* rootFolder, AppLnkSet* docFolder, 76 void initializeCategories(AppLnkSet* rootFolder, AppLnkSet* docFolder,
60 const QList<FileSystem> &); 77 const QList<FileSystem> &);
61 void updateDocs(AppLnkSet* docFolder, const QList<FileSystem> &fs); 78// void updateDocs(AppLnkSet* docFolder, const QList<FileSystem> &fs);
62 void updateLink(const QString& linkfile); 79 void updateLink(const QString& linkfile);
63 void setBusy(bool on); 80 void setBusy(bool on);
64 QString getAllDocLinkInfo() const; 81 QString getAllDocLinkInfo() const;
65 LauncherView *view( const QString &id ); 82 LauncherView *view( const QString &id );
66 void setBusyIndicatorType ( const QString &type ); 83 void setBusyIndicatorType ( const QString &type );
84 DocumentTab *fileSel;
67signals: 85signals:
68 void selected(const QString&); 86 void selected(const QString&);
69 void clicked(const AppLnk*); 87 void clicked(const AppLnk*);
70 void rightPressed(AppLnk*); 88 void rightPressed(AppLnk*);
71 89 void ofileSel(const DocLnk &);
72public slots: 90public slots:
73 void nextTab(); 91 void nextTab();
74 void prevTab(); 92 void prevTab();
75 void showTab(const QString&); 93 void showTab(const QString&);
76 94 void clickie(const DocLnk&);
95 void clickie(const QString &);
77protected slots: 96protected slots:
78 void tabProperties(); 97 void tabProperties();
79 98