summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--core/launcher/launcher.cpp17
-rw-r--r--core/launcher/launcher.h2
-rw-r--r--core/launcher/launcherview.cpp107
-rw-r--r--core/launcher/launcherview.h7
4 files changed, 98 insertions, 35 deletions
diff --git a/core/launcher/launcher.cpp b/core/launcher/launcher.cpp
index 5ec1cf8..ccc2114 100644
--- a/core/launcher/launcher.cpp
+++ b/core/launcher/launcher.cpp
@@ -79,3 +79,3 @@ static bool isVisibleWindow( int );
79LauncherTabWidget::LauncherTabWidget( Launcher* parent ) : 79LauncherTabWidget::LauncherTabWidget( Launcher* parent ) :
80 QVBox( parent ), docview( 0 ) 80 QVBox( parent ), docview( 0 ),docTabEnabled(true),m_DocumentTabId(0)
81{ 81{
@@ -130,3 +130,3 @@ void LauncherTabWidget::createDocLoadingWidget()
130 cfg.setGroup( "DocTab" ); 130 cfg.setGroup( "DocTab" );
131 bool docTabEnabled = cfg.readBoolEntry( "Enable", true ); 131 docTabEnabled = cfg.readBoolEntry( "Enable", true );
132 132
@@ -218,3 +218,5 @@ LauncherView* LauncherTabWidget::newView( const QString& id, const QPixmap& pm,
218 218
219
219 int n = categoryBar->count(); 220 int n = categoryBar->count();
221
220 stack->addWidget( view, n ); 222 stack->addWidget( view, n );
@@ -223,5 +225,6 @@ LauncherView* LauncherTabWidget::newView( const QString& id, const QPixmap& pm,
223 categoryBar->insertTab( tab, n-1 ); 225 categoryBar->insertTab( tab, n-1 );
224 226 if ( id == "Documents" ) {
225 if ( id == "Documents" )
226 docview = view; 227 docview = view;
228 m_DocumentTabId = n;
229 }
227 230
@@ -606,3 +609,2 @@ void Launcher::properties( AppLnk *appLnk )
606 if (QPEApplication::execDialog( &prop )==QDialog::Accepted && tabs->currentView()==tabs->docView()) { 609 if (QPEApplication::execDialog( &prop )==QDialog::Accepted && tabs->currentView()==tabs->docView()) {
607 tabs->docView()->updateTools();
608 } 610 }
@@ -723,4 +725,9 @@ void Launcher::documentChanged( const DocLnk& oldDoc, const DocLnk& newDoc )
723{ 725{
726#if 0
724 documentRemoved( oldDoc ); 727 documentRemoved( oldDoc );
725 documentAdded( newDoc ); 728 documentAdded( newDoc );
729// tabs->docView()->updateTools();
730#else
731 tabs->docView()->changeItem(oldDoc,new DocLnk(newDoc));
732#endif
726} 733}
diff --git a/core/launcher/launcher.h b/core/launcher/launcher.h
index 2eaf77c..db6ac54 100644
--- a/core/launcher/launcher.h
+++ b/core/launcher/launcher.h
@@ -92,2 +92,4 @@ private:
92 bool docLoadingWidgetEnabled; 92 bool docLoadingWidgetEnabled;
93 bool docTabEnabled;
94 int m_DocumentTabId;
93}; 95};
diff --git a/core/launcher/launcherview.cpp b/core/launcher/launcherview.cpp
index ff26133..c9efacb 100644
--- a/core/launcher/launcherview.cpp
+++ b/core/launcher/launcherview.cpp
@@ -46,2 +46,3 @@ using namespace Opie::Core;
46 46
47typedef QMap<QString,QPixmap>::Iterator pixiter;
47 48
@@ -107,3 +108,2 @@ private:
107 int psize; 108 int psize;
108 QPixmap m_iPixmap;
109 bool m_EyeImage; 109 bool m_EyeImage;
@@ -119,3 +119,2 @@ LauncherItem::LauncherItem( QIconView *parent, AppLnk *applnk, bool bigIcon )
119 psize( (bigIcon ? applnk->bigPixmap().width() :applnk->pixmap().width() ) ), 119 psize( (bigIcon ? applnk->bigPixmap().width() :applnk->pixmap().width() ) ),
120 m_iPixmap(),
121 m_EyeImage(false), 120 m_EyeImage(false),
@@ -125,3 +124,7 @@ LauncherItem::LauncherItem( QIconView *parent, AppLnk *applnk, bool bigIcon )
125 m_EyeImage = true; 124 m_EyeImage = true;
126 m_iPixmap = (bigIcon ? applnk->bigPixmap():applnk->pixmap()); 125 QMap<QString,QPixmap>::Iterator it = LauncherIconView::sm_EyeCache->find(applnk->file());
126 if (it != LauncherIconView::sm_EyeCache->end()) {
127 m_EyeImageSet = EYE_ICON;
128 setPixmap(*it);
129 }
127 } 130 }
@@ -215,3 +218,9 @@ void LauncherItem::animateIcon()
215 if ( iteration == 0 ) { 218 if ( iteration == 0 ) {
216 QPixmap src = (isEyeImage()?m_iPixmap:(isBigIcon ? app->bigPixmap() : app->pixmap())); 219 QPixmap src;
220 pixiter it;
221 if (isEyeImage() && (it=LauncherIconView::sm_EyeCache->find(appLnk()->file()))!=LauncherIconView::sm_EyeCache->end()) {
222 src = (*it);
223 } else {
224 src = ((isBigIcon ? app->bigPixmap() : app->pixmap()));
225 }
217 QImage img = src.convertToImage(); 226 QImage img = src.convertToImage();
@@ -251,3 +260,10 @@ void LauncherItem::resetIcon()
251 iteration = 0; 260 iteration = 0;
252 setPixmap((isEyeImage()?m_iPixmap:(isBigIcon ? app->bigPixmap() : app->pixmap()))); 261 if (isEyeImage()) {
262 QMap<QString,QPixmap>::Iterator it = LauncherIconView::sm_EyeCache->find(appLnk()->file());
263 if (it != LauncherIconView::sm_EyeCache->end()) {
264 setPixmap(*it);
265 return;
266 }
267 }
268 setPixmap(isBigIcon ? app->bigPixmap() : app->pixmap());
253} 269}
@@ -257,3 +273,2 @@ void LauncherItem::setEyePixmap(const QPixmap&aIcon)
257 if (!isEyeImage()) return; 273 if (!isEyeImage()) return;
258 m_iPixmap = aIcon;
259 setPixmap(aIcon); 274 setPixmap(aIcon);
@@ -265,2 +280,5 @@ void LauncherItem::setEyePixmap(const QPixmap&aIcon)
265//=========================================================================== 280//===========================================================================
281
282QMap<QString,QPixmap>* LauncherIconView::sm_EyeCache=0;
283
266LauncherIconView::LauncherIconView( QWidget* parent, const char* name ) 284LauncherIconView::LauncherIconView( QWidget* parent, const char* name )
@@ -269,2 +287,3 @@ LauncherIconView::LauncherIconView( QWidget* parent, const char* name )
269 m_EyeCallBack = 0; 287 m_EyeCallBack = 0;
288 if (!sm_EyeCache) sm_EyeCache = new QMap<QString,QPixmap>();
270 sortmeth = Name; 289 sortmeth = Name;
@@ -434,2 +453,3 @@ void LauncherIconView::setEyePixmap(const QPixmap&aPixmap,const QString&aFile,in
434 if (!item||!item->isEyeImage()) return; 453 if (!item||!item->isEyeImage()) return;
454 (*sm_EyeCache)[aFile]=aPixmap;
435 item->setEyePixmap(aPixmap); 455 item->setEyePixmap(aPixmap);
@@ -443,4 +463,4 @@ void LauncherIconView::checkCallback()
443 this,SLOT(setEyePixmap(const QPixmap&,const QString&,int))); 463 this,SLOT(setEyePixmap(const QPixmap&,const QString&,int)));
444 m_eyeTimer.changeInterval(600000);
445 } 464 }
465 m_eyeTimer.changeInterval(600000);
446} 466}
@@ -468,2 +488,4 @@ void LauncherIconView::stopEyeTimer()
468 if (m_EyeCallBack) { 488 if (m_EyeCallBack) {
489 disconnect(m_EyeCallBack,SIGNAL(sig_Thumbnail(const QPixmap&,const QString&,int)),
490 this,SLOT(setEyePixmap(const QPixmap&,const QString&,int)));
469 delete m_EyeCallBack; 491 delete m_EyeCallBack;
@@ -474,17 +496,2 @@ void LauncherIconView::stopEyeTimer()
474 496
475void LauncherIconView::addItem(AppLnk* app, bool resort)
476{
477 addCatsAndMimes(app);
478 if ( (tf.isEmpty() || tf.match(app->type()) >= 0)
479 && (cf == 0 || app->categories().contains(cf)
480 || cf == -1 && app->categories().count() == 0 ) ) {
481 addCheckItem(app);
482 } else {
483 hidden.append(app);
484 }
485 if ( resort ){
486 sort();
487 }
488}
489
490void LauncherIconView::updateCategoriesAndMimeTypes() 497void LauncherIconView::updateCategoriesAndMimeTypes()
@@ -530,3 +537,3 @@ void LauncherIconView::hideOrShowItems(bool resort)
530 537
531bool LauncherIconView::removeLink(const QString& linkfile) 538bool LauncherIconView::removeLink(const QString& linkfile,bool removeCache)
532{ 539{
@@ -541,2 +548,3 @@ bool LauncherIconView::removeLink(const QString& linkfile)
541 ( l->file() == linkfile || dl.isValid() && dl.file() == l->file() ) ) { 548 ( l->file() == linkfile || dl.isValid() && dl.file() == l->file() ) ) {
549 if (removeCache) sm_EyeCache->remove(l->file());
542 delete item; 550 delete item;
@@ -559,2 +567,34 @@ bool LauncherIconView::removeLink(const QString& linkfile)
559 567
568void LauncherIconView::addItem(AppLnk* app, bool resort)
569{
570 addCatsAndMimes(app);
571 if ( (tf.isEmpty() || tf.match(app->type()) >= 0)
572 && (cf == 0 || app->categories().contains(cf)
573 || cf == -1 && app->categories().count() == 0 ) ) {
574 addCheckItem(app);
575 } else {
576 hidden.append(app);
577 }
578 if ( resort ){
579 sort();
580 }
581}
582
583void LauncherIconView::changeItem(const AppLnk&old,AppLnk*nlink)
584{
585 QString oldfile = old.file();
586 QString newfile = nlink->file();
587
588 if (newfile != oldfile) {
589 QMap<QString,QPixmap>::Iterator it = sm_EyeCache->find(oldfile);
590 if (it != sm_EyeCache->end()) {
591 (*sm_EyeCache)[newfile]=(*it);
592 }
593 removeLink(old.linkFile());
594 } else {
595 removeLink(old.linkFile(),false);
596 }
597 addItem(nlink,false);
598}
599
560void LauncherIconView::timerEvent( QTimerEvent *te ) 600void LauncherIconView::timerEvent( QTimerEvent *te )
@@ -571,2 +611,3 @@ void LauncherIconView::setBigIcons( bool bi )
571{ 611{
612 sm_EyeCache->clear();
572 bigIcns = bi; 613 bigIcns = bi;
@@ -758,4 +799,7 @@ void LauncherView::updateTools()
758 int pcat = catmb ? catmb->currentCategory() : -2; 799 int pcat = catmb ? catmb->currentCategory() : -2;
759 if ( !catmb ) 800 if ( !catmb ) {
760 catmb = new CategorySelect(tools); 801 catmb = new CategorySelect(tools);
802 } else if (pcat!=-2) {
803
804 }
761 Categories cats( 0 ); 805 Categories cats( 0 );
@@ -1049,2 +1093,12 @@ bool LauncherView::removeLink(const QString& linkfile)
1049 1093
1094void LauncherView::addItem(AppLnk* app, bool resort)
1095{
1096 icons->addItem(app,resort);
1097}
1098
1099void LauncherView::changeItem(const AppLnk&old,AppLnk*nlink)
1100{
1101 icons->changeItem(old,nlink);
1102}
1103
1050void LauncherView::setSortEnabled( bool v ) 1104void LauncherView::setSortEnabled( bool v )
@@ -1066,7 +1120,2 @@ void LauncherView::sort()
1066 1120
1067void LauncherView::addItem(AppLnk* app, bool resort)
1068{
1069 icons->addItem(app,resort);
1070}
1071
1072void LauncherView::paletteChange( const QPalette &p ) 1121void LauncherView::paletteChange( const QPalette &p )
diff --git a/core/launcher/launcherview.h b/core/launcher/launcherview.h
index 6d94539..05073ab 100644
--- a/core/launcher/launcherview.h
+++ b/core/launcher/launcherview.h
@@ -58,2 +58,4 @@ public:
58 void addItem(AppLnk* app, bool resort=TRUE); 58 void addItem(AppLnk* app, bool resort=TRUE);
59 void changeItem(const AppLnk&old,AppLnk*nlink);
60
59 void removeAllItems(); 61 void removeAllItems();
@@ -178,3 +180,4 @@ public:
178 void addItem(AppLnk* app, bool resort=TRUE); 180 void addItem(AppLnk* app, bool resort=TRUE);
179 bool removeLink(const QString& linkfile); 181 bool removeLink(const QString& linkfile,bool removeCache = true);
182 void changeItem(const AppLnk&old,AppLnk*nlink);
180 183
@@ -208,2 +211,4 @@ public:
208 211
212 static QMap<QString,QPixmap>* sm_EyeCache;
213
209protected: 214protected: