summaryrefslogtreecommitdiff
path: root/libopie
Unidiff
Diffstat (limited to 'libopie') (more/less context) (ignore whitespace changes)
-rw-r--r--libopie/otabwidget.cpp15
1 files changed, 10 insertions, 5 deletions
diff --git a/libopie/otabwidget.cpp b/libopie/otabwidget.cpp
index bed7ef1..5fc3e8e 100644
--- a/libopie/otabwidget.cpp
+++ b/libopie/otabwidget.cpp
@@ -103,13 +103,13 @@ OTabWidget::~OTabWidget()
103} 103}
104 104
105void OTabWidget::addTab( QWidget *child, const QString &icon, const QString &label ) 105void OTabWidget::addTab( QWidget *child, const QString &icon, const QString &label )
106{ 106{
107 QPixmap iconset = loadSmooth( icon ); 107 QPixmap iconset = loadSmooth( icon );
108 108
109 QTab * tab = new QTab(); 109 QTab *tab = new QTab();
110 if ( tabBarStyle == IconTab ) 110 if ( tabBarStyle == IconTab )
111 { 111 {
112 tab->label = QString::null; 112 tab->label = QString::null;
113 } 113 }
114 else 114 else
115 { 115 {
@@ -271,21 +271,26 @@ void OTabWidget::selectTab( OTabInfo *tab )
271 if ( currentTab ) 271 if ( currentTab )
272 { 272 {
273 tabBar->tab( currentTab->id() )->setText( "" ); 273 tabBar->tab( currentTab->id() )->setText( "" );
274 setUpLayout(); 274 setUpLayout();
275 } 275 }
276 tabBar->tab( tab->id() )->setText( tab->label() ); 276 tabBar->tab( tab->id() )->setText( tab->label() );
277 currentTab = tab; 277 tabBar->setCurrentTab( tab->id() );
278 setUpLayout();
279 tabBar->update();
280 }
281 else
282 {
283 tabBar->setCurrentTab( tab->id() );
278 } 284 }
279 tabBar->setCurrentTab( tab->id() );
280 setUpLayout();
281 tabBar->update();
282 285
283 widgetStack->raiseWidget( tab->control() ); 286 widgetStack->raiseWidget( tab->control() );
284 287
285 emit currentChanged( tab->control() ); 288 emit currentChanged( tab->control() );
289
290 currentTab = tab;
286} 291}
287 292
288void OTabWidget::setUpLayout() 293void OTabWidget::setUpLayout()
289{ 294{
290 tabBar->layoutTabs(); 295 tabBar->layoutTabs();
291 QSize t( tabBarStack->sizeHint() ); 296 QSize t( tabBarStack->sizeHint() );