summaryrefslogtreecommitdiff
path: root/core
Unidiff
Diffstat (limited to 'core') (more/less context) (show whitespace changes)
-rw-r--r--core/launcher/launcher.h171
1 files changed, 78 insertions, 93 deletions
diff --git a/core/launcher/launcher.h b/core/launcher/launcher.h
index 0616734..2917027 100644
--- a/core/launcher/launcher.h
+++ b/core/launcher/launcher.h
@@ -3,3 +3,4 @@
3** 3**
4** This file is part of the Qtopia Environment.** 4** This file is part of the Qtopia Environment.
5**
5** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
@@ -21,65 +22,45 @@
21 22
22#include <qpe/config.h> 23#include <qtopia/config.h>
23#include <qpe/applnk.h> 24#include <qtopia/storage.h>
24 25#include <qtopia/applnk.h>
25#include <opie/ofileselector.h>
26
27#include <qmainwindow.h> 26#include <qmainwindow.h>
28#include <qtabbar.h>
29#include <qstringlist.h> 27#include <qstringlist.h>
28#include <qprogressbar.h>
30#include <qvbox.h> 29#include <qvbox.h>
31#include <qlist.h> 30#include <qlist.h>
32#include <qpe/palmtopuidgen.h> 31#include <qdict.h>
33#include "launcherview.h" 32#include "launcherview.h"
33#include "launchertab.h"
34#include "serverinterface.h"
34 35
35class AppLnk;
36class AppLnkSet;
37class DocLnkSet;
38class QWidgetStack; 36class QWidgetStack;
39class StorageInfo; 37class TaskBar;
40class SyncDialog; 38class Launcher;
41 39
42 40class LauncherTabWidget : public QVBox {
43class DocumentTab : public OFileSelector 41 // can't use a QTabWidget, since it won't let us set the frame style.
44{
45 Q_OBJECT 42 Q_OBJECT
46public: 43public:
47 DocumentTab( QWidget *parent, int mode, int selector, const QString &dirName, const QString &fileName);//, 4,0, "/",""); 44 LauncherTabWidget( Launcher* parent );
48~DocumentTab();
49private:
50
51};
52 45
53class CategoryTabBar : public QTabBar 46 void updateDocs(AppLnkSet* docFolder);
54{ 47 void setBusy(bool on);
55 Q_OBJECT 48 LauncherView *currentView(void);
56public:
57 CategoryTabBar( QWidget *parent=0, const char *name=0 );
58 ~CategoryTabBar();
59 49
60signals: 50 LauncherView* newView( const QString&, const QPixmap& pm, const QString& label );
51 void deleteView( const QString& );
52 void setTabViewAppearance( LauncherView *v, Config &cfg );
53 void setTabAppearance( LauncherTab *, Config &cfg );
61 54
62protected slots: 55 LauncherView *view( const QString & );
63 virtual void layoutTabs(); 56 LauncherView *docView();
64 57
65protected: 58 void createDocLoadingWidget();
66 void paint ( QPainter *p, QTab *t, bool f ) const; 59 void setLoadingWidgetEnabled( bool v );
67 void paintLabel( QPainter* p, const QRect& br, QTab* t, bool has_focus ) const; 60 void setLoadingProgress( int percent );
68 61
69}; 62 LauncherTabBar* categoryBar;
70 63
71class CategoryTabWidget : public QVBox {
72 // can't use a QTabWidget, since it won't let us set the frame style.
73 Q_OBJECT
74public:
75 CategoryTabWidget( QWidget* parent );
76 void initializeCategories(AppLnkSet* rootFolder, AppLnkSet* docFolder,
77 const QList<FileSystem> &);
78// void updateDocs(AppLnkSet* docFolder, const QList<FileSystem> &fs);
79 void updateLink(const QString& linkfile);
80 void setBusy(bool on);
81 QString getAllDocLinkInfo() const;
82 LauncherView *view( const QString &id );
83 void setBusyIndicatorType ( const QString &type ); 64 void setBusyIndicatorType ( const QString &type );
84 DocumentTab *fileSel; 65
85signals: 66signals:
@@ -88,38 +69,56 @@ signals:
88 void rightPressed(AppLnk*); 69 void rightPressed(AppLnk*);
89 void ofileSel(const DocLnk &); 70
90public slots:
91 void nextTab();
92 void prevTab();
93 void showTab(const QString&);
94 void clickie(const DocLnk&);
95 void clickie(const QString &);
96protected slots: 71protected slots:
72 void raiseTabWidget();
97 void tabProperties(); 73 void tabProperties();
74 void initLayout();
75
76private slots:
77 void launcherMessage( const QCString &, const QByteArray &);
78 void appMessage( const QCString &, const QByteArray &);
79 void setProgressStyle();
98 80
99protected: 81protected:
100 void setTabAppearance( const QString &id, Config &cfg );
101 void paletteChange( const QPalette &p ); 82 void paletteChange( const QPalette &p );
83 void styleChange( QStyle & );
102 84
103private: 85private:
104 CategoryTabBar* categoryBar; 86 Launcher *launcher;
105 QWidgetStack* stack;
106 LauncherView* docview; 87 LauncherView* docview;
107 QStringList ids; 88
108 int tabs; 89 QWidgetStack *stack;
109 LauncherView* newView( const QString&, const QPixmap& pm, const QString& label ); 90 LauncherView *docLoadingWidget;
110 void addItem( const QString& ); 91 QProgressBar *docLoadingWidgetProgress;
92 bool docLoadingWidgetEnabled;
111}; 93};
112 94
113class Launcher : public QMainWindow 95class Launcher : public QMainWindow, public ServerInterface
114{ 96{
115 Q_OBJECT 97 Q_OBJECT
116 friend class LauncherPrivate;
117public: 98public:
118 Launcher( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); 99 Launcher();
119 ~Launcher(); 100 ~Launcher();
120 101
121 static QString appsFolderName(); 102 // implementing ServerInterface
122 103 void createGUI();
123 virtual void showMaximized(); 104 void destroyGUI();
124 static bool mkdir(const QString &path); 105 void typeAdded( const QString& type, const QString& name, const QPixmap& pixmap, const QPixmap& bgPixmap );
106 void typeRemoved( const QString& type );
107 void applicationAdded( const QString& type, const AppLnk& doc );
108 void applicationRemoved( const QString& type, const AppLnk& doc );
109 void allApplicationsRemoved();
110 void applicationStateChanged( const QString& name, ApplicationState state );
111 void documentAdded( const DocLnk& doc );
112 void documentRemoved( const DocLnk& doc );
113 void allDocumentsRemoved();
114 void documentChanged( const DocLnk& oldDoc, const DocLnk& newDoc );
115 void storageChanged( const QList<FileSystem> & );
116 void applicationScanningProgress( int percent );
117 void documentScanningProgress( int percent );
118 bool requiresApplications() const { return TRUE; }
119 bool requiresDocuments() const { return TRUE; }
120 void showLoadingDocs();
121 void showDocTab();
122
123 QStringList idList() const { return ids; }
125 124
@@ -129,5 +128,4 @@ public slots:
129 void select( const AppLnk * ); 128 void select( const AppLnk * );
130 void externalSelected( const AppLnk *);
131 void properties( AppLnk * ); 129 void properties( AppLnk * );
132 void nextView(); 130 void makeVisible();
133 131
@@ -135,11 +133,11 @@ signals:
135 void executing( const AppLnk * ); 133 void executing( const AppLnk * );
136 void busy();
137 void notBusy(const QString&);
138 134
139private slots: 135private slots:
140 void doMaximize();
141 void systemMessage( const QCString &, const QByteArray &); 136 void systemMessage( const QCString &, const QByteArray &);
142 void launcherMessage( const QCString &, const QByteArray &); 137 void toggleSymbolInput();
143 void storageChanged(); 138 void toggleNumLockState();
144 void cancelSync(); 139 void toggleCapsLockState();
140
141protected:
142 bool eventFilter( QObject *o, QEvent *ev );
145 143
@@ -150,18 +148,6 @@ private:
150 void updateTabs(); 148 void updateTabs();
151 void updateMimeTypes(); 149
152 void updateMimeTypes(AppLnkSet*); 150 LauncherTabWidget *tabs;
153 void preloadApps(); 151 QStringList ids;
154 AppLnkSet *rootFolder; 152 TaskBar *tb;
155 DocLnkSet *docsFolder;
156 CategoryTabWidget *tabs;
157 StorageInfo *storage;
158 SyncDialog *syncDialog;
159
160 void updateLink(const QString& link);
161 bool in_lnk_props;
162 bool got_lnk_change;
163 QString lnk_change;
164
165 QString m_timeStamp;
166 Qtopia::UidGen uidgen;
167}; 153};
@@ -169,2 +155 @@ private:
169#endif // LAUNCHERVIEW_H #endif // LAUNCHERVIEW_H
170