TabBar::TabBar(QWidget *parent) : QTabBar(parent) , m_viewTabBarAction(0) , m_showTabBarWhenOneTab(true) { setContextMenuPolicy(Qt::CustomContextMenu); setAcceptDrops(true); setElideMode(Qt::ElideRight); setUsesScrollButtons(true); connect(this, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(contextMenuRequested(const QPoint &))); QString alt = QLatin1String("Ctrl+%1"); for (int i = 0; i < 10; ++i) { int key = i == 9 ? 0 : i + 1; TabShortcut *tabShortCut = new TabShortcut(i, alt.arg(key), this); connect(tabShortCut, SIGNAL(activated()), this, SLOT(selectTabAction())); } m_viewTabBarAction = new QAction(this); updateViewToolBarAction(); connect(m_viewTabBarAction, SIGNAL(triggered()), this, SLOT(viewTabBar())); #if QT_VERSION >= 0x040500 setMovable(true); #endif }
void TabBar::updateVisibility() { setVisible((count()) > 1 || m_showTabBarWhenOneTab); bool enabled = (count() == 1); if (m_viewTabBarAction->isEnabled() != enabled) m_viewTabBarAction->setEnabled(enabled); updateViewToolBarAction(); }
void TabBar::updateVisibility() { setVisible((count()) > 1 || m_showTabBarWhenOneTab); m_viewTabBarAction->setEnabled(count() == 1); updateViewToolBarAction(); }
void TabBar::viewTabBar() { setShowTabBarWhenOneTab(!showTabBarWhenOneTab()); updateViewToolBarAction(); }