diff options
author | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-03-01 19:17:32 +0000 |
---|---|---|
committer | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-03-01 19:17:32 +0000 |
commit | e38d2351b83fa65c66ccde443777647ef5cb6cff (patch) | |
tree | 1897fc20e9f73a81c520a5b9f76f8ed042124883 /src/gui/tabcontrol.cpp | |
download | tellico-e38d2351b83fa65c66ccde443777647ef5cb6cff.tar.gz tellico-e38d2351b83fa65c66ccde443777647ef5cb6cff.zip |
Added KDE3 version of Tellico
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/tellico@1097620 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'src/gui/tabcontrol.cpp')
-rw-r--r-- | src/gui/tabcontrol.cpp | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/src/gui/tabcontrol.cpp b/src/gui/tabcontrol.cpp new file mode 100644 index 0000000..145f632 --- /dev/null +++ b/src/gui/tabcontrol.cpp @@ -0,0 +1,77 @@ +/*************************************************************************** + copyright : (C) 2002-2006 by Robby Stephenson + email : robby@periapsis.org + ***************************************************************************/ + +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of version 2 of the GNU General Public License as * + * published by the Free Software Foundation; * + * * + ***************************************************************************/ + +#include "tabcontrol.h" + +#include <qtabbar.h> +#include <qobjectlist.h> + +using Tellico::GUI::TabControl; + +TabControl::TabControl(QWidget* parent_, const char* name_/*=0*/) + : QTabWidget(parent_, name_) { +} + +QTabBar* TabControl::tabBar() const { + return QTabWidget::tabBar(); +} + +void TabControl::setFocusToFirstChild() { + QWidget* page = currentPage(); + Q_ASSERT(page); + QObjectList* list = page->queryList("QWidget"); + for(QObjectListIt it(*list); it.current(); ++it) { + QWidget* w = static_cast<QWidget*>(it.current()); + if(w->isFocusEnabled()) { + w->setFocus(); + break; + } + } + delete list; +} + +// have to loop backwards since count() gets decremented on delete +void TabControl::clear() { + for(int i = count(); i > 0; --i) { + QWidget* w = page(i-1); + if(w) { + removePage(w); + delete w; + } + } +} + +void TabControl::setTabBarHidden(bool hide_) { + QWidget* rightcorner = cornerWidget(TopRight); + QWidget* leftcorner = cornerWidget(TopLeft); + + if(hide_) { + if(leftcorner) { + leftcorner->hide(); + } + if(rightcorner) { + rightcorner->hide(); + } + tabBar()->hide(); + } else { + tabBar()->show(); + if(leftcorner) { + leftcorner->show(); + } + if(rightcorner) { + rightcorner->show(); + } + } +} + +#include "tabcontrol.moc" |