ktabbar.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
#ifndef KTABBAR_H
00022
#define KTABBAR_H
00023
00024
#include <qtabbar.h>
00025
00026
class QTimer;
00027
class QPushButton;
00028
class KTabBarPrivate;
00029
00033 class KTabBar:
public QTabBar
00034 {
00035 Q_OBJECT
00036
00037
public:
00038
KTabBar(
QWidget* parent=0,
const char* name=0 );
00039
virtual ~
KTabBar();
00040
00041
virtual void setTabEnabled(
int,
bool );
00042
00043
const QColor &tabColor(
int )
const;
00044
void setTabColor(
int,
const QColor& );
00045
virtual void removeTab(
QTab * );
00046
00047
void setTabReorderingEnabled(
bool enable );
00048
bool isTabReorderingEnabled()
const;
00049
00050
void setHoverCloseButton(
bool );
00051
bool hoverCloseButton()
const;
00052
00053
void setHoverCloseButtonDelayed(
bool );
00054
bool hoverCloseButtonDelayed()
const;
00055
00056 signals:
00057
void contextMenu(
int,
const QPoint & );
00058
void mouseDoubleClick(
int );
00059
void mouseMiddleClick(
int );
00060
void initiateDrag(
int );
00061
void testCanDecode(
const QDragMoveEvent *e,
bool &accept );
00062
void receivedDropEvent(
int,
QDropEvent * );
00063
void moveTab(
int,
int );
00064
void closeRequest(
int );
00065
00066
protected:
00067
virtual void mouseDoubleClickEvent(
QMouseEvent *e );
00068
virtual void mousePressEvent(
QMouseEvent *e );
00069
virtual void mouseMoveEvent(
QMouseEvent *e );
00070
virtual void mouseReleaseEvent(
QMouseEvent *e );
00071
00072
virtual void dragMoveEvent(
QDragMoveEvent *e );
00073
virtual void dropEvent(
QDropEvent *e );
00074
00075
virtual void paintLabel(
QPainter*,
const QRect&,
QTab*,
bool )
const;
00076
00077
protected slots:
00078
virtual void closeButtonClicked();
00079
virtual void onLayoutChange();
00080
virtual void enableCloseButton();
00081
virtual void activateDragSwitchTab();
00082
00083
private:
00084
QPoint mDragStart;
00085
int mReorderStartTab;
00086
int mReorderPreviousTab;
00087
QMap<int, QColor> mTabColors;
00088
QTab *mHoverCloseButtonTab, *mDragSwitchTab;
00089
QPushButton *mHoverCloseButton;
00090
QTimer *mEnableCloseButtonTimer, *mActivateDragSwitchTabTimer;
00091
00092
bool mHoverCloseButtonEnabled;
00093
bool mHoverCloseButtonDelayed;
00094
bool mTabReorderingEnabled;
00095
00096 KTabBarPrivate * d;
00097 };
00098
00099
#endif
This file is part of the documentation for kdeui Library Version 3.2.3.