summaryrefslogtreecommitdiff
path: root/library/applnk.h
Unidiff
Diffstat (limited to 'library/applnk.h') (more/less context) (ignore whitespace changes)
-rw-r--r--library/applnk.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/library/applnk.h b/library/applnk.h
index 71b62ef..b92ddba 100644
--- a/library/applnk.h
+++ b/library/applnk.h
@@ -1,171 +1,172 @@
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** 5**
6** 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
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20#ifndef __APPLNK_H__ 20#ifndef __APPLNK_H__
21#define __APPLNK_H__ 21#define __APPLNK_H__
22 22
23#include <qobject.h> 23#include <qobject.h>
24#include <qiconset.h> 24#include <qiconset.h>
25#include <qlist.h> 25#include <qlist.h>
26#include <qdict.h> 26#include <qdict.h>
27#include <qstringlist.h> 27#include <qstringlist.h>
28 28
29class AppLnkSetPrivate; 29class AppLnkSetPrivate;
30class AppLnkPrivate; 30class AppLnkPrivate;
31 31
32class AppLnk 32class AppLnk
33{ 33{
34public: 34public:
35 AppLnk(); 35 AppLnk();
36 AppLnk( const QString &file ); 36 AppLnk( const QString &file );
37 AppLnk( const AppLnk &copy ); // copy constructor 37 AppLnk( const AppLnk &copy ); // copy constructor
38 virtual ~AppLnk(); 38 virtual ~AppLnk();
39 39
40 bool isValid() const { return !mLinkFile.isNull(); } 40 bool isValid() const { return !mLinkFile.isNull(); }
41 41
42 static void setSmallIconSize(int); 42 static void setSmallIconSize(int);
43 static void setBigIconSize(int); 43 static void setBigIconSize(int);
44 static int smallIconSize(); 44 static int smallIconSize();
45 static int bigIconSize(); 45 static int bigIconSize();
46 46
47 QString name() const { return mName; } 47 QString name() const { return mName; }
48 const QPixmap& pixmap() const; 48 const QPixmap& pixmap() const;
49 const QPixmap& bigPixmap() const; 49 const QPixmap& bigPixmap() const;
50 QString icon() const { return mIconFile; } 50 QString icon() const { return mIconFile; }
51 virtual QString exec() const { return mExec; } 51 virtual QString exec() const { return mExec; }
52 QString type() const; 52 QString type() const;
53 QString rotation() const { return mRotation; } 53 QString rotation() const { return mRotation; }
54 QString comment() const { return mComment; } 54 QString comment() const { return mComment; }
55 QString file() const; 55 QString file() const;
56 QString linkFile() const; 56 QString linkFile() const;
57 QStringList mimeTypes() const { return mMimeTypes; } 57 QStringList mimeTypes() const { return mMimeTypes; }
58 QStringList mimeTypeIcons() const { return mMimeTypeIcons; } 58 QStringList mimeTypeIcons() const { return mMimeTypeIcons; }
59 const QArray<int> &categories() const; 59 const QArray<int> &categories() const;
60 int id() const { return mId; } 60 int id() const { return mId; }
61 61
62 bool fileKnown() const { return !mFile.isNull(); } 62 bool fileKnown() const { return !mFile.isNull(); }
63 bool linkFileKnown() const { return !mLinkFile.isNull(); } 63 bool linkFileKnown() const { return !mLinkFile.isNull(); }
64 64
65 void execute() const; 65 void execute() const;
66 void execute(const QStringList& args) const; 66 void execute(const QStringList& args) const;
67 void removeFiles(); 67 void removeFiles();
68 void removeLinkFile(); 68 void removeLinkFile();
69 69
70 void setName( const QString& docname ); 70 void setName( const QString& docname );
71 void setExec( const QString& exec ); 71 void setExec( const QString& exec );
72 void setFile( const QString& filename ); 72 void setFile( const QString& filename );
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;
79 80
80 void setProperty(const QString& key, const QString& value); 81 void setProperty(const QString& key, const QString& value);
81 QString property(const QString& key) const; 82 QString property(const QString& key) const;
82 83
83#ifdef QTOPIA_INTERNAL_PRELOADACCESS 84#ifdef QTOPIA_INTERNAL_PRELOADACCESS
84 bool isPreloaded() const; 85 bool isPreloaded() const;
85 void setPreloaded(bool yesNo); 86 void setPreloaded(bool yesNo);
86#endif 87#endif
87 88
88#ifdef QTOPIA_INTERNAL_APPLNKASSIGN 89#ifdef QTOPIA_INTERNAL_APPLNKASSIGN
89 AppLnk &operator=(const AppLnk &other); 90 AppLnk &operator=(const AppLnk &other);
90#endif 91#endif
91 92
92protected: 93protected:
93 QString mName; 94 QString mName;
94 95
95 /* remove for Qtopia 3.0 -zecke */ 96 /* remove for Qtopia 3.0 -zecke */
96 QPixmap mPixmap; 97 QPixmap mPixmap;
97 98
98 /* remove for Qtopia 3.0 -zecke */ 99 /* remove for Qtopia 3.0 -zecke */
99 QPixmap mBigPixmap; 100 QPixmap mBigPixmap;
100 101
101 QString mExec; 102 QString mExec;
102 QString mType; 103 QString mType;
103 QString mRotation; 104 QString mRotation;
104 QString mComment; 105 QString mComment;
105 QString mFile; 106 QString mFile;
106 QString mLinkFile; 107 QString mLinkFile;
107 QString mIconFile; 108 QString mIconFile;
108 QStringList mMimeTypes; 109 QStringList mMimeTypes;
109 QStringList mMimeTypeIcons; 110 QStringList mMimeTypeIcons;
110 int mId; 111 int mId;
111 static int lastId; 112 static int lastId;
112 AppLnkPrivate *d; 113 AppLnkPrivate *d;
113 friend class AppLnkSet; 114 friend class AppLnkSet;
114 115
115 virtual void invoke(const QStringList& args) const; 116 virtual void invoke(const QStringList& args) const;
116 bool ensureLinkExists() const; 117 bool ensureLinkExists() const;
117 void storeLink() const; 118 void storeLink() const;
118 119
119private: 120private:
120 const QPixmap& pixmap(int pos, int size) const; 121 const QPixmap& pixmap(int pos, int size) const;
121}; 122};
122 123
123class DocLnk : public AppLnk 124class DocLnk : public AppLnk
124{ 125{
125public: 126public:
126 DocLnk(); 127 DocLnk();
127 DocLnk( const DocLnk &o ) : AppLnk(o) { } 128 DocLnk( const DocLnk &o ) : AppLnk(o) { }
128 DocLnk( const QString &file ); 129 DocLnk( const QString &file );
129 DocLnk( const QString &file, bool may_be_desktopfile ); 130 DocLnk( const QString &file, bool may_be_desktopfile );
130 virtual ~DocLnk(); 131 virtual ~DocLnk();
131 132
132 133
133#ifdef QTOPIA_INTERNAL_APPLNKASSIGN 134#ifdef QTOPIA_INTERNAL_APPLNKASSIGN
134 DocLnk &operator=(const DocLnk &other) { AppLnk::operator=(other); return *this; } 135 DocLnk &operator=(const DocLnk &other) { AppLnk::operator=(other); return *this; }
135#endif 136#endif
136 137
137 QString exec() const; 138 QString exec() const;
138 139
139protected: 140protected:
140 void invoke(const QStringList& args) const; 141 void invoke(const QStringList& args) const;
141 142
142private: 143private:
143 void init(const QString &file); 144 void init(const QString &file);
144}; 145};
145 146
146class AppLnkSet 147class AppLnkSet
147{ 148{
148public: 149public:
149 AppLnkSet(); 150 AppLnkSet();
150 AppLnkSet( const QString &dir ); 151 AppLnkSet( const QString &dir );
151 ~AppLnkSet(); 152 ~AppLnkSet();
152 153
153 const AppLnk *find( int id ) const; 154 const AppLnk *find( int id ) const;
154 const AppLnk *findExec( const QString& execname ) const; 155 const AppLnk *findExec( const QString& execname ) const;
155 156
156 QStringList types() const { return typs; } 157 QStringList types() const { return typs; }
157 QString typeName( const QString& ) const; 158 QString typeName( const QString& ) const;
158 QPixmap typePixmap( const QString& ) const; 159 QPixmap typePixmap( const QString& ) const;
159 QPixmap typeBigPixmap( const QString& ) const; 160 QPixmap typeBigPixmap( const QString& ) const;
160 161
161 void add(AppLnk*); 162 void add(AppLnk*);
162 bool remove(AppLnk*); 163 bool remove(AppLnk*);
163 void clear() { 164 void clear() {
164 QListIterator<AppLnk> it( mApps ); 165 QListIterator<AppLnk> it( mApps );
165 for ( ; it.current(); ) { 166 for ( ; it.current(); ) {
166 AppLnk* a = *it; 167 AppLnk* a = *it;
167 ++it; 168 ++it;
168 a->mId = 0; 169 a->mId = 0;
169 delete a; 170 delete a;
170 } 171 }
171 mApps.clear(); 172 mApps.clear();