author | harlekin <harlekin> | 2003-03-23 13:14:25 (UTC) |
---|---|---|
committer | harlekin <harlekin> | 2003-03-23 13:14:25 (UTC) |
commit | 56192a3d601e5364e9b8f4c331d892befb19cbc1 (patch) (unidiff) | |
tree | 97966e16e29316a6dc28e2f0c9619192a3757b8f | |
parent | c3b01d2abd00b82b821604827987f2becccf5233 (diff) | |
download | opie-56192a3d601e5364e9b8f4c331d892befb19cbc1.zip opie-56192a3d601e5364e9b8f4c331d892befb19cbc1.tar.gz opie-56192a3d601e5364e9b8f4c331d892befb19cbc1.tar.bz2 |
after refresh show the same tab again as before ( for example after a medium is inserted or linkcChanged(QString) has been called
-rw-r--r-- | core/launcher/launcher.cpp | 34 | ||||
-rw-r--r-- | core/launcher/launcher.h | 2 |
2 files changed, 32 insertions, 4 deletions
diff --git a/core/launcher/launcher.cpp b/core/launcher/launcher.cpp index fc944e1..e74301c 100644 --- a/core/launcher/launcher.cpp +++ b/core/launcher/launcher.cpp | |||
@@ -148,8 +148,17 @@ void CategoryTabWidget::nextTab() | |||
148 | categoryBar->setCurrentTab( (tab + 1)%n ); | 148 | categoryBar->setCurrentTab( (tab + 1)%n ); |
149 | } | 149 | } |
150 | } | 150 | } |
151 | 151 | ||
152 | |||
153 | void CategoryTabWidget::showTab(const QString& id) | ||
154 | { | ||
155 | if ( categoryBar ) { | ||
156 | int idx = ids.findIndex( id ); | ||
157 | categoryBar->setCurrentTab( idx ); | ||
158 | } | ||
159 | } | ||
160 | |||
152 | void CategoryTabWidget::addItem( const QString& linkfile ) | 161 | void CategoryTabWidget::addItem( const QString& linkfile ) |
153 | { | 162 | { |
154 | int i=0; | 163 | int i=0; |
155 | AppLnk *app = new AppLnk(linkfile); | 164 | AppLnk *app = new AppLnk(linkfile); |
@@ -186,8 +195,14 @@ void CategoryTabWidget::addItem( const QString& linkfile ) | |||
186 | 195 | ||
187 | void CategoryTabWidget::initializeCategories(AppLnkSet* rootFolder, | 196 | void CategoryTabWidget::initializeCategories(AppLnkSet* rootFolder, |
188 | AppLnkSet* docFolder, const QList<FileSystem> &fs) | 197 | AppLnkSet* docFolder, const QList<FileSystem> &fs) |
189 | { | 198 | { |
199 | QString current; | ||
200 | if ( categoryBar ) { | ||
201 | int c = categoryBar->currentTab(); | ||
202 | if ( c >= 0 ) current = ids[c]; | ||
203 | } | ||
204 | |||
190 | delete categoryBar; | 205 | delete categoryBar; |
191 | categoryBar = new CategoryTabBar( this ); | 206 | categoryBar = new CategoryTabBar( this ); |
192 | QPalette pal = categoryBar->palette(); | 207 | QPalette pal = categoryBar->palette(); |
193 | pal.setColor( QColorGroup::Light, pal.color(QPalette::Active,QColorGroup::Shadow) ); | 208 | pal.setColor( QColorGroup::Light, pal.color(QPalette::Active,QColorGroup::Shadow) ); |
@@ -247,10 +262,16 @@ void CategoryTabWidget::initializeCategories(AppLnkSet* rootFolder, | |||
247 | 262 | ||
248 | cfg. setGroup ( "GUI" ); | 263 | cfg. setGroup ( "GUI" ); |
249 | setBusyIndicatorType ( cfg. readEntry ( "BusyType", QString::null )); | 264 | setBusyIndicatorType ( cfg. readEntry ( "BusyType", QString::null )); |
250 | 265 | ||
266 | if ( !current.isNull() ) { | ||
267 | showTab(current); | ||
268 | } | ||
269 | |||
251 | categoryBar->show(); | 270 | categoryBar->show(); |
252 | stack->show(); | 271 | stack->show(); |
272 | |||
273 | QCopEnvelope e("QPE/TaskBar","reloadApps()"); | ||
253 | } | 274 | } |
254 | 275 | ||
255 | void CategoryTabWidget::setTabAppearance( const QString &id, Config &cfg ) | 276 | void CategoryTabWidget::setTabAppearance( const QString &id, Config &cfg ) |
256 | { | 277 | { |
@@ -613,9 +634,8 @@ Launcher::Launcher( QWidget* parent, const char* name, WFlags fl ) | |||
613 | //uidgen.store( stamp ); | 634 | //uidgen.store( stamp ); |
614 | m_timeStamp = QString::number( stamp ); | 635 | m_timeStamp = QString::number( stamp ); |
615 | 636 | ||
616 | tabs = new CategoryTabWidget( this ); | 637 | tabs = new CategoryTabWidget( this ); |
617 | tabs->setMaximumWidth( qApp->desktop()->width() ); | ||
618 | setCentralWidget( tabs ); | 638 | setCentralWidget( tabs ); |
619 | 639 | ||
620 | connect( tabs, SIGNAL(selected(const QString&)), | 640 | connect( tabs, SIGNAL(selected(const QString&)), |
621 | this, SLOT(viewSelected(const QString&)) ); | 641 | this, SLOT(viewSelected(const QString&)) ); |
@@ -673,8 +693,9 @@ void Launcher::showMaximized() | |||
673 | 693 | ||
674 | void Launcher::doMaximize() | 694 | void Launcher::doMaximize() |
675 | { | 695 | { |
676 | QMainWindow::showMaximized(); | 696 | QMainWindow::showMaximized(); |
697 | tabs->setMaximumWidth( qApp->desktop()->width() ); | ||
677 | } | 698 | } |
678 | 699 | ||
679 | void Launcher::updateMimeTypes() | 700 | void Launcher::updateMimeTypes() |
680 | { | 701 | { |
@@ -831,8 +852,13 @@ void Launcher::nextView() | |||
831 | { | 852 | { |
832 | tabs->nextTab(); | 853 | tabs->nextTab(); |
833 | } | 854 | } |
834 | 855 | ||
856 | void Launcher::showTab(const QString& id) | ||
857 | { | ||
858 | tabs->showTab(id); | ||
859 | raise(); | ||
860 | } | ||
835 | 861 | ||
836 | void Launcher::select( const AppLnk *appLnk ) | 862 | void Launcher::select( const AppLnk *appLnk ) |
837 | { | 863 | { |
838 | if ( appLnk->type() == "Folder" ) { // No tr | 864 | if ( appLnk->type() == "Folder" ) { // No tr |
@@ -888,9 +914,9 @@ void Launcher::updateLink(const QString& link) | |||
888 | else { | 914 | else { |
889 | tabs->updateLink(link); | 915 | tabs->updateLink(link); |
890 | notify_sm = true; | 916 | notify_sm = true; |
891 | } | 917 | } |
892 | 918 | ||
893 | if ( notify_sm ) | 919 | if ( notify_sm ) |
894 | QCopEnvelope e ( "QPE/TaskBar", "reloadApps()" ); | 920 | QCopEnvelope e ( "QPE/TaskBar", "reloadApps()" ); |
895 | } | 921 | } |
896 | 922 | ||
@@ -1188,17 +1214,17 @@ void Launcher::launcherMessage( const QCString &msg, const QByteArray &data) | |||
1188 | qDebug( "setFont: %s, %d, %d, %d", fam.latin1(), size, weight, italic ); | 1214 | qDebug( "setFont: %s, %d, %d, %d", fam.latin1(), size, weight, italic ); |
1189 | } | 1215 | } |
1190 | else if ( msg == "setBusyIndicatorType(QString)" ) { | 1216 | else if ( msg == "setBusyIndicatorType(QString)" ) { |
1191 | QString type; | 1217 | QString type; |
1192 | stream >> type; | 1218 | stream >> type; |
1193 | tabs->setBusyIndicatorType(type); | 1219 | tabs->setBusyIndicatorType(type); |
1194 | } | 1220 | } |
1195 | else if ( msg == "home()" ) { | 1221 | else if ( msg == "home()" ) { |
1196 | if ( isVisibleWindow( winId ( ))) | 1222 | if ( isVisibleWindow( winId ( ))) |
1197 | nextView ( ); | 1223 | nextView ( ); |
1198 | else | 1224 | else |
1199 | raise ( ); | 1225 | raise ( ); |
1200 | 1226 | ||
1201 | } | 1227 | } |
1202 | } | 1228 | } |
1203 | 1229 | ||
1204 | void Launcher::storageChanged() | 1230 | void Launcher::storageChanged() |
diff --git a/core/launcher/launcher.h b/core/launcher/launcher.h index 89bf6f3..c92ef5d 100644 --- a/core/launcher/launcher.h +++ b/core/launcher/launcher.h | |||
@@ -71,8 +71,9 @@ signals: | |||
71 | 71 | ||
72 | public slots: | 72 | public slots: |
73 | void nextTab(); | 73 | void nextTab(); |
74 | void prevTab(); | 74 | void prevTab(); |
75 | void showTab(const QString&); | ||
75 | 76 | ||
76 | protected slots: | 77 | protected slots: |
77 | void tabProperties(); | 78 | void tabProperties(); |
78 | 79 | ||
@@ -104,8 +105,9 @@ public: | |||
104 | static bool mkdir(const QString &path); | 105 | static bool mkdir(const QString &path); |
105 | 106 | ||
106 | public slots: | 107 | public slots: |
107 | void viewSelected(const QString&); | 108 | void viewSelected(const QString&); |
109 | void showTab(const QString&); | ||
108 | void select( const AppLnk * ); | 110 | void select( const AppLnk * ); |
109 | void externalSelected( const AppLnk *); | 111 | void externalSelected( const AppLnk *); |
110 | void properties( AppLnk * ); | 112 | void properties( AppLnk * ); |
111 | void nextView(); | 113 | void nextView(); |