From a2964f5364d3322c5f285476fd6bf2875ec7ffc9 Mon Sep 17 00:00:00 2001 From: xavier Date: Thu, 30 Jul 2009 20:20:17 +0000 Subject: [PATCH] Correction du bug #24 : Qt 4.5 apportant la fonctionnalite "onglets deplacables", il est necessaire de differencier les methodes appelees entre Qt 4.4 et Qt 4.5. git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@723 bfdf4180-ca20-0410-9c96-a3a8aa849046 --- sources/projectview.cpp | 2 +- sources/qettabbar.cpp | 13 +++++++++++-- sources/qettabbar.h | 9 +++++---- sources/qettabwidget.cpp | 12 ++++++++++-- sources/qettabwidget.h | 4 ++-- 5 files changed, 29 insertions(+), 11 deletions(-) diff --git a/sources/projectview.cpp b/sources/projectview.cpp index c3ca4505c..a187e398d 100644 --- a/sources/projectview.cpp +++ b/sources/projectview.cpp @@ -50,7 +50,7 @@ ProjectView::ProjectView(QETProject *project, QWidget *parent) : fallback_widget_layout_ -> addWidget(label_widget); tabs_ = new QETTabWidget(); - tabs_ -> setTabsMovable(true); + tabs_ -> setMovable(true); connect(tabs_, SIGNAL(currentChanged(int)), this, SLOT(tabChanged(int))); connect(tabs_, SIGNAL(tabDoubleClicked(int)), this, SLOT(tabDoubleClicked(int))); connect(tabs_, SIGNAL(firstTabInserted()), this, SLOT(firstTabInserted())); diff --git a/sources/qettabbar.cpp b/sources/qettabbar.cpp index de109d172..940ef9b18 100644 --- a/sources/qettabbar.cpp +++ b/sources/qettabbar.cpp @@ -25,6 +25,7 @@ QETTabBar::QETTabBar(QWidget *parent) : QTabBar(parent), no_more_tabs_(true), + movable_tabs_(false), moved_tab_(-1) { } @@ -68,15 +69,23 @@ void QETTabBar::activatePreviousTab() { /** @param movable true pour que les onglets soient deplacables, false sinon */ -void QETTabBar::setTabsMovable(bool movable) { +void QETTabBar::setMovable(bool movable) { +#if QT_VERSION < 0x040500 movable_tabs_ = movable; +#else + QTabBar::setMovable(movable); +#endif } /** @return true si les onglets sont deplacables, false sinon */ -bool QETTabBar::tabsMovable() const { +bool QETTabBar::isMovable() const { +#if QT_VERSION < 0x040500 return(movable_tabs_); +#else + return(QTabBar::isMovable()); +#endif } /** diff --git a/sources/qettabbar.h b/sources/qettabbar.h index b1eba92d2..8ebc95376 100644 --- a/sources/qettabbar.h +++ b/sources/qettabbar.h @@ -1,5 +1,4 @@ -/* - Copyright 2006-2009 Xavier Guerrin +/* Copyright 2006-2009 Xavier Guerrin This file is part of QElectroTech. QElectroTech is free software: you can redistribute it and/or modify @@ -41,8 +40,8 @@ class QETTabBar : public QTabBar { public: void activateNextTab(); void activatePreviousTab(); - void setTabsMovable(bool); - bool tabsMovable() const; + void setMovable(bool); + bool isMovable() const; bool isVertical() const; bool isHorizontal() const; @@ -58,7 +57,9 @@ class QETTabBar : public QTabBar { signals: void lastTabRemoved(); void firstTabInserted(); +#if QT_VERSION < 0x040500 void tabMoved(int, int); +#endif void tabDoubleClicked(int); private: diff --git a/sources/qettabwidget.cpp b/sources/qettabwidget.cpp index 6736e9082..83d5f7b04 100644 --- a/sources/qettabwidget.cpp +++ b/sources/qettabwidget.cpp @@ -47,15 +47,23 @@ QETTabWidget::~QETTabWidget() { /** @param movable true pour que les onglets soient deplacables, false sinon */ -void QETTabWidget::setTabsMovable(bool movable) { +void QETTabWidget::setMovable(bool movable) { +#if QT_VERSION < 0x040500 tab_bar_ -> setTabsMovable(movable); +#else + QTabWidget::setMovable(movable); +#endif } /** @return true si les onglets sont deplacables, false sinon */ -bool QETTabWidget::tabsMovable() { +bool QETTabWidget::isMovable() const { +#if QT_VERSION < 0x040500 return(tab_bar_ -> tabsMovable()); +#else + return(QTabWidget::isMovable()); +#endif } /** diff --git a/sources/qettabwidget.h b/sources/qettabwidget.h index dbd08107d..6a39cc4c7 100644 --- a/sources/qettabwidget.h +++ b/sources/qettabwidget.h @@ -38,8 +38,8 @@ class QETTabWidget : public QTabWidget { // methodes public: - void setTabsMovable(bool); - bool tabsMovable(); + void setMovable(bool); + bool isMovable() const; protected: void wheelEvent(QWheelEvent *);