Show
Ignore:
Timestamp:
03/03/08 04:41:37 (9 months ago)
Author:
flynd
Message:

Make use of KTabWidget.

Location:
trunk/qt4-gui/src/widgets
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • trunk/qt4-gui/src/widgets/tabwidget.cpp

    r5892 r6082  
    1818 */ 
    1919 
     20#include "config.h" 
     21 
    2022#include "tabwidget.h" 
    2123 
    22 #include <QWheelEvent> 
     24#ifdef USE_KDE 
     25# include <QTabBar> 
     26#else 
     27# include <QWheelEvent> 
     28#endif 
    2329 
    2430using namespace LicqQtGui; 
    2531 
     32#ifndef USE_KDE 
    2633TabBar::TabBar(QWidget* parent) 
    2734  : QTabBar(parent) 
     
    7885    int t = tabAt(e->pos()); 
    7986    if (t > -1 && t == myClickedTab) 
    80       emit middleClick(t); 
     87      emit mouseMiddleClick(t); 
    8188  } 
    8289 
     
    8491  QTabBar::mouseReleaseEvent(e); 
    8592} 
     93#endif 
    8694 
    8795 
    8896TabWidget::TabWidget(QWidget* parent) 
    89   : QTabWidget(parent) 
     97  : TABWIDGET_BASE(parent) 
    9098{ 
     99#ifndef USE_KDE 
    91100  TabBar* tb = new TabBar(this); 
    92101  setTabBar(tb); 
    93   connect(tb, SIGNAL(middleClick(int)), SLOT(slot_middleClick(int))); 
     102  connect(tb, SIGNAL(mouseMiddleClick(int)), SLOT(slot_middleClick(int))); 
     103#endif 
    94104} 
    95105 
     
    98108  int index = indexOf(tab); 
    99109  if (index != -1) 
     110#ifdef USE_KDE 
     111    setTabTextColor(index, color); 
     112#else 
    100113    tabBar()->setTabTextColor(index, color); 
     114#endif 
    101115} 
    102116 
    103117void TabWidget::setPreviousPage() 
    104118{ 
    105   dynamic_cast<TabBar*>(tabBar())->setPreviousTab(); 
     119  int index = tabBar()->currentIndex() - 1; 
     120  if (index < 0) 
     121    index = tabBar()->count() - 1; 
     122 
     123  tabBar()->setCurrentIndex(index); 
    106124} 
    107125 
    108126void TabWidget::setNextPage() 
    109127{ 
    110   dynamic_cast<TabBar*>(tabBar())->setNextTab(); 
     128  int index = tabBar()->currentIndex() + 1; 
     129  if (index >= tabBar()->count()) 
     130    index = 0; 
     131 
     132  tabBar()->setCurrentIndex(index); 
    111133} 
    112134 
     135#ifndef USE_KDE 
    113136void TabWidget::wheelEvent(QWheelEvent* e) 
    114137{ 
     
    140163  QWidget* p = widget(t); 
    141164  if (p) 
    142     emit middleClick(p); 
     165    emit mouseMiddleClick(p); 
    143166} 
     167#endif 
  • trunk/qt4-gui/src/widgets/tabwidget.h

    r5837 r6082  
    2121#define TABWIDGET_H 
    2222 
    23 #include <QTabBar> 
    24 #include <QTabWidget> 
     23#include "config.h" 
     24 
     25#ifdef USE_KDE 
     26# include <KDE/KTabWidget> 
     27# define TABWIDGET_BASE KTabWidget 
     28#else 
     29# include <QTabBar> 
     30# include <QTabWidget> 
     31# define TABWIDGET_BASE QTabWidget 
     32#endif 
    2533 
    2634namespace LicqQtGui 
    2735{ 
    2836 
     37#ifndef USE_KDE 
    2938class TabBar : public QTabBar 
    3039{ 
     
    3847 
    3948signals: 
    40   void middleClick(int t); 
     49  void mouseMiddleClick(int t); 
    4150 
    4251private: 
     
    4756  int myClickedTab; 
    4857}; 
     58#endif 
    4959 
    5060 
    51 class TabWidget : public QTabWidget 
     61class TabWidget : public TABWIDGET_BASE 
    5262{ 
    5363  Q_OBJECT 
     
    6070  void setNextPage(); 
    6171 
     72#ifndef USE_KDE 
    6273signals: 
    63   void middleClick(QWidget* p); 
     74  void mouseMiddleClick(QWidget* p); 
    6475 
    6576private slots: 
     
    6879private: 
    6980  virtual void wheelEvent(QWheelEvent* e); 
     81#endif 
    7082}; 
    7183