summaryrefslogtreecommitdiff
authorllornkcor <llornkcor>2003-07-14 18:49:16 (UTC)
committer llornkcor <llornkcor>2003-07-14 18:49:16 (UTC)
commitab28f35bc3c9c184862ac19462322eed2be0f541 (patch) (unidiff)
tree99bff20a6ca5c4b19d972d72ca2ec9abbaaa0e9d
parenta62dda249a0b823e1aa006bbc502f72e9af7da95 (diff)
downloadopie-ab28f35bc3c9c184862ac19462322eed2be0f541.zip
opie-ab28f35bc3c9c184862ac19462322eed2be0f541.tar.gz
opie-ab28f35bc3c9c184862ac19462322eed2be0f541.tar.bz2
try to fix crash when insert drive. please test.
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/launcher/launcher.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/core/launcher/launcher.cpp b/core/launcher/launcher.cpp
index d9fc8e4..5f050aa 100644
--- a/core/launcher/launcher.cpp
+++ b/core/launcher/launcher.cpp
@@ -128,104 +128,104 @@ public:
128 128
129//=========================================================================== 129//===========================================================================
130 130
131CategoryTabWidget::CategoryTabWidget( QWidget* parent ) : 131CategoryTabWidget::CategoryTabWidget( QWidget* parent ) :
132 QVBox( parent ) 132 QVBox( parent )
133{ 133{
134 categoryBar = 0; 134 categoryBar = 0;
135 stack = 0; 135 stack = 0;
136} 136}
137 137
138void CategoryTabWidget::prevTab() 138void CategoryTabWidget::prevTab()
139{ 139{
140 if ( categoryBar ) { 140 if ( categoryBar ) {
141 int n = categoryBar->count(); 141 int n = categoryBar->count();
142 int tab = categoryBar->currentTab(); 142 int tab = categoryBar->currentTab();
143 if ( tab >= 0 ) 143 if ( tab >= 0 )
144 categoryBar->setCurrentTab( (tab - 1 + n)%n ); 144 categoryBar->setCurrentTab( (tab - 1 + n)%n );
145 } 145 }
146} 146}
147 147
148void CategoryTabWidget::nextTab() 148void CategoryTabWidget::nextTab()
149{ 149{
150 if ( categoryBar ) { 150 if ( categoryBar ) {
151 int n = categoryBar->count(); 151 int n = categoryBar->count();
152 int tab = categoryBar->currentTab(); 152 int tab = categoryBar->currentTab();
153 categoryBar->setCurrentTab( (tab + 1)%n ); 153 categoryBar->setCurrentTab( (tab + 1)%n );
154 } 154 }
155} 155}
156 156
157 157
158void CategoryTabWidget::showTab(const QString& id) 158void CategoryTabWidget::showTab(const QString& id)
159{ 159{
160 if ( categoryBar ) { 160 if ( categoryBar ) {
161 int idx = ids.findIndex( id ); 161 int idx = ids.findIndex( id );
162 categoryBar->setCurrentTab( idx ); 162 categoryBar->setCurrentTab( idx );
163 } 163 }
164} 164}
165 165
166void CategoryTabWidget::addItem( const QString& linkfile ) 166void CategoryTabWidget::addItem( const QString& linkfile )
167{ 167{
168 int i=0; 168 int i=0;
169 AppLnk *app = new AppLnk(linkfile); 169 AppLnk *app = new AppLnk(linkfile);
170 if ( !app->isValid() ) { 170 if ( !app->isValid() ) {
171 delete app; 171 delete app;
172 app=0; 172 app=0;
173 } 173 }
174 if ( !app || !app->file().isEmpty() ) { 174 if ( !app || !app->file().isEmpty() ) {
175 // A document 175 // A document
176 delete app; 176// delete app;
177 app = new DocLnk(linkfile); 177// app = new DocLnk(linkfile);
178 if ( app->fileKnown() ) { 178// if ( app->fileKnown() ) {
179 ((LauncherView*)(stack->widget(ids.count()-1)))->addItem(app); 179// ((LauncherView*)(stack->widget(ids.count()-1)))->addItem(app);
180 } else { 180// } else {
181 ((LauncherView*)(stack->widget(ids.count()-1)))->sort(); 181// ((LauncherView*)(stack->widget(ids.count()-1)))->sort();
182 delete app; 182// delete app;
183 } 183// }
184 return; 184 return;
185 } 185 }
186 // An application 186 // An application
187 for ( QStringList::Iterator it=ids.begin(); it!=ids.end(); ++it) { 187 for ( QStringList::Iterator it=ids.begin(); it!=ids.end(); ++it) {
188 if ( !(*it).isEmpty() ) { 188 if ( !(*it).isEmpty() ) {
189 QRegExp tf(*it,FALSE,TRUE); 189 QRegExp tf(*it,FALSE,TRUE);
190 if ( tf.match(app->type()) >= 0 ) { 190 if ( tf.match(app->type()) >= 0 ) {
191 ((LauncherView*)stack->widget(i))->addItem(app); 191 ((LauncherView*)stack->widget(i))->addItem(app);
192 return; 192 return;
193 } 193 }
194 i++; 194 i++;
195 } 195 }
196 } 196 }
197 197
198 QCopEnvelope e("QPE/TaskBar","reloadApps()"); 198 QCopEnvelope e("QPE/TaskBar","reloadApps()");
199} 199}
200 200
201void CategoryTabWidget::initializeCategories(AppLnkSet* rootFolder, 201void CategoryTabWidget::initializeCategories(AppLnkSet* rootFolder,
202 AppLnkSet* /*docFolder*/, const QList<FileSystem> & /*fs*/) 202 AppLnkSet* /*docFolder*/, const QList<FileSystem> & /*fs*/)
203{ 203{
204 QString current; 204 QString current;
205 if ( categoryBar ) { 205 if ( categoryBar ) {
206 int c = categoryBar->currentTab(); 206 int c = categoryBar->currentTab();
207 if ( c >= 0 ) current = ids[c]; 207 if ( c >= 0 ) current = ids[c];
208 } 208 }
209 209
210 delete categoryBar; 210 delete categoryBar;
211 categoryBar = new CategoryTabBar( this ); 211 categoryBar = new CategoryTabBar( this );
212 QPalette pal = categoryBar->palette(); 212 QPalette pal = categoryBar->palette();
213 pal.setColor( QColorGroup::Light, pal.color(QPalette::Active,QColorGroup::Shadow) ); 213 pal.setColor( QColorGroup::Light, pal.color(QPalette::Active,QColorGroup::Shadow) );
214 pal.setColor( QColorGroup::Background, pal.active().background().light(110) ); 214 pal.setColor( QColorGroup::Background, pal.active().background().light(110) );
215 categoryBar->setPalette( pal ); 215 categoryBar->setPalette( pal );
216 216
217 delete stack; 217 delete stack;
218 stack = new QWidgetStack(this); 218 stack = new QWidgetStack(this);
219 tabs=0; 219 tabs=0;
220 220
221 ids.clear(); 221 ids.clear();
222 222
223 Config cfg("Launcher"); 223 Config cfg("Launcher");
224 224
225 QStringList types = rootFolder->types(); 225 QStringList types = rootFolder->types();
226 for ( QStringList::Iterator it=types.begin(); it!=types.end(); ++it) { 226 for ( QStringList::Iterator it=types.begin(); it!=types.end(); ++it) {
227 if ( !(*it).isEmpty() ) { 227 if ( !(*it).isEmpty() ) {
228 (void)newView(*it,rootFolder->typePixmap(*it),rootFolder->typeName(*it)); 228 (void)newView(*it,rootFolder->typePixmap(*it),rootFolder->typeName(*it));
229 setTabAppearance( *it, cfg ); 229 setTabAppearance( *it, cfg );
230 } 230 }
231 } 231 }