Expose some QSplitter private classes for added functionality in Trinity

This is not a security risk
v3.5.13-sru
Timothy Pearson 13 years ago
parent a4b5d4c845
commit 816f448426

@ -52,39 +52,9 @@
#include "tqptrlist.h" #include "tqptrlist.h"
#include "tqstyle.h" #include "tqstyle.h"
class TQSplitterHandle : public TQWidget
{
TQ_OBJECT
public:
TQSplitterHandle( Qt::Orientation o,
TQSplitter *tqparent, const char* name=0 );
void setOrientation( Qt::Orientation o );
Qt::Orientation orientation() const { return orient; }
bool opaque() const { return s->opaqueResize(); }
TQSize tqsizeHint() const;
int id() const { return myId; } // d->list.at(id())->wid == this
void setId( int i ) { myId = i; }
protected:
void paintEvent( TQPaintEvent * );
void mouseMoveEvent( TQMouseEvent * );
void mousePressEvent( TQMouseEvent * );
void mouseReleaseEvent( TQMouseEvent * );
private:
Qt::Orientation orient;
bool opaq;
int myId;
TQSplitter *s;
};
#include "tqsplitter.tqmoc" #include "tqsplitter.tqmoc"
const uint Default = 2; const uint Default = TQT_TQSPLITTER_DEFAULT;
static int mouseOffset; static int mouseOffset;
static int opaqueOldPos = -1; // this assumes that there's only one mouse static int opaqueOldPos = -1; // this assumes that there's only one mouse
@ -180,45 +150,6 @@ void TQSplitterHandle::paintEvent( TQPaintEvent * )
TQStyle::Style_Horizontal : 0) ); TQStyle::Style_Horizontal : 0) );
} }
class TQSplitterLayoutStruct : public TQt
{
public:
TQCOORD sizer;
uint isHandle : 1;
uint collapsible : 2;
uint resizeMode : 2;
TQWidget *wid;
TQSplitterLayoutStruct()
: sizer( -1 ), collapsible( Default ) { }
TQCOORD getSizer( Qt::Orientation orient );
};
TQCOORD TQSplitterLayoutStruct::getSizer( Qt::Orientation orient )
{
if ( sizer == -1 ) {
TQSize s = wid->tqsizeHint();
if ( !s.isValid() || wid->testWState(WState_Resized) )
s = wid->size();
sizer = ( orient == Qt::Horizontal ) ? s.width() : s.height();
}
return sizer;
}
class TQSplitterPrivate
{
public:
TQSplitterPrivate()
: opaque( FALSE ), firstShow( TRUE ), tqchildrenCollapsible( TRUE ),
handleWidth( 0 ) { }
TQPtrList<TQSplitterLayoutStruct> list;
bool opaque : 8;
bool firstShow : 8;
bool tqchildrenCollapsible : 8;
int handleWidth;
};
/*! /*!
\class TQSplitter \class TQSplitter

@ -48,11 +48,52 @@
#ifndef TQT_NO_SPLITTER #ifndef TQT_NO_SPLITTER
#define TQT_TQSPLITTER_DEFAULT 2
class TQSplitterHandle; class TQSplitterHandle;
class TQSplitterPrivate; class TQSplitterPrivate;
class TQSplitterLayoutStruct; class TQSplitterLayoutStruct;
class TQTextStream; class TQTextStream;
class TQSplitterPrivate
{
public:
TQSplitterPrivate()
: opaque( FALSE ), firstShow( TRUE ), tqchildrenCollapsible( TRUE ),
handleWidth( 0 ) { }
TQPtrList<TQSplitterLayoutStruct> list;
bool opaque : 8;
bool firstShow : 8;
bool tqchildrenCollapsible : 8;
int handleWidth;
};
class TQSplitterLayoutStruct : public TQt
{
public:
TQCOORD sizer;
uint isHandle : 1;
uint collapsible : 2;
uint resizeMode : 2;
TQWidget *wid;
TQSplitterLayoutStruct()
: sizer( -1 ), collapsible( Default ) { }
TQCOORD getSizer( Qt::Orientation orient );
};
TQCOORD TQSplitterLayoutStruct::getSizer( Qt::Orientation orient )
{
if ( sizer == -1 ) {
TQSize s = wid->tqsizeHint();
if ( !s.isValid() || wid->testWState(WState_Resized) )
s = wid->size();
sizer = ( orient == Qt::Horizontal ) ? s.width() : s.height();
}
return sizer;
}
class TQ_EXPORT TQSplitter : public TQFrame class TQ_EXPORT TQSplitter : public TQFrame
{ {
Q_OBJECT Q_OBJECT
@ -165,6 +206,36 @@ TQ_EXPORT TQTextStream& operator<<( TQTextStream&, const TQSplitter& );
TQ_EXPORT TQTextStream& operator>>( TQTextStream&, TQSplitter& ); TQ_EXPORT TQTextStream& operator>>( TQTextStream&, TQSplitter& );
#endif #endif
class TQSplitterHandle : public TQWidget
{
TQ_OBJECT
public:
TQSplitterHandle( Qt::Orientation o,
TQSplitter *tqparent, const char* name=0 );
void setOrientation( Qt::Orientation o );
Qt::Orientation orientation() const { return orient; }
bool opaque() const { return s->opaqueResize(); }
TQSize tqsizeHint() const;
int id() const { return myId; } // d->list.at(id())->wid == this
void setId( int i ) { myId = i; }
protected:
void paintEvent( TQPaintEvent * );
void mouseMoveEvent( TQMouseEvent * );
void mousePressEvent( TQMouseEvent * );
void mouseReleaseEvent( TQMouseEvent * );
private:
Qt::Orientation orient;
bool opaq;
int myId;
TQSplitter *s;
};
#endif // TQT_NO_SPLITTER #endif // TQT_NO_SPLITTER
#endif // TQSPLITTER_H #endif // TQSPLITTER_H

@ -52,39 +52,9 @@
#include "qptrlist.h" #include "qptrlist.h"
#include "qstyle.h" #include "qstyle.h"
class QSplitterHandle : public QWidget
{
Q_OBJECT
public:
QSplitterHandle( Orientation o,
QSplitter *parent, const char* name=0 );
void setOrientation( Orientation o );
Orientation orientation() const { return orient; }
bool opaque() const { return s->opaqueResize(); }
QSize sizeHint() const;
int id() const { return myId; } // d->list.at(id())->wid == this
void setId( int i ) { myId = i; }
protected:
void paintEvent( QPaintEvent * );
void mouseMoveEvent( QMouseEvent * );
void mousePressEvent( QMouseEvent * );
void mouseReleaseEvent( QMouseEvent * );
private:
Orientation orient;
bool opaq;
int myId;
QSplitter *s;
};
#include "qsplitter.moc" #include "qsplitter.moc"
const uint Default = 2; const uint Default = QT_QSPLITTER_DEFAULT;
static int mouseOffset; static int mouseOffset;
static int opaqueOldPos = -1; // this assumes that there's only one mouse static int opaqueOldPos = -1; // this assumes that there's only one mouse
@ -180,45 +150,6 @@ void QSplitterHandle::paintEvent( QPaintEvent * )
QStyle::Style_Horizontal : 0) ); QStyle::Style_Horizontal : 0) );
} }
class QSplitterLayoutStruct : public Qt
{
public:
QCOORD sizer;
uint isHandle : 1;
uint collapsible : 2;
uint resizeMode : 2;
QWidget *wid;
QSplitterLayoutStruct()
: sizer( -1 ), collapsible( Default ) { }
QCOORD getSizer( Orientation orient );
};
QCOORD QSplitterLayoutStruct::getSizer( Orientation orient )
{
if ( sizer == -1 ) {
QSize s = wid->sizeHint();
if ( !s.isValid() || wid->testWState(WState_Resized) )
s = wid->size();
sizer = ( orient == Horizontal ) ? s.width() : s.height();
}
return sizer;
}
class QSplitterPrivate
{
public:
QSplitterPrivate()
: opaque( FALSE ), firstShow( TRUE ), childrenCollapsible( TRUE ),
handleWidth( 0 ) { }
QPtrList<QSplitterLayoutStruct> list;
bool opaque : 8;
bool firstShow : 8;
bool childrenCollapsible : 8;
int handleWidth;
};
/*! /*!
\class QSplitter \class QSplitter

@ -48,11 +48,52 @@
#ifndef QT_NO_SPLITTER #ifndef QT_NO_SPLITTER
#define QT_QSPLITTER_DEFAULT 2
class QSplitterHandle; class QSplitterHandle;
class QSplitterPrivate; class QSplitterPrivate;
class QSplitterLayoutStruct; class QSplitterLayoutStruct;
class QTextStream; class QTextStream;
class QSplitterPrivate
{
public:
QSplitterPrivate()
: opaque( FALSE ), firstShow( TRUE ), childrenCollapsible( TRUE ),
handleWidth( 0 ) { }
QPtrList<QSplitterLayoutStruct> list;
bool opaque : 8;
bool firstShow : 8;
bool childrenCollapsible : 8;
int handleWidth;
};
class QSplitterLayoutStruct : public Qt
{
public:
QCOORD sizer;
uint isHandle : 1;
uint collapsible : 2;
uint resizeMode : 2;
QWidget *wid;
QSplitterLayoutStruct()
: sizer( -1 ), collapsible( QT_QSPLITTER_DEFAULT ) { }
QCOORD getSizer( Orientation orient );
};
QCOORD QSplitterLayoutStruct::getSizer( Orientation orient )
{
if ( sizer == -1 ) {
QSize s = wid->sizeHint();
if ( !s.isValid() || wid->testWState(WState_Resized) )
s = wid->size();
sizer = ( orient == Horizontal ) ? s.width() : s.height();
}
return sizer;
}
class Q_EXPORT QSplitter : public QFrame class Q_EXPORT QSplitter : public QFrame
{ {
Q_OBJECT Q_OBJECT
@ -111,7 +152,7 @@ protected:
virtual void setRubberband( int ); virtual void setRubberband( int );
void getRange( int id, int *, int * ); void getRange( int id, int *, int * );
private: public: //private:
enum { DefaultResizeMode = 3 }; enum { DefaultResizeMode = 3 };
void init(); void init();
@ -164,6 +205,36 @@ Q_EXPORT QTextStream& operator<<( QTextStream&, const QSplitter& );
Q_EXPORT QTextStream& operator>>( QTextStream&, QSplitter& ); Q_EXPORT QTextStream& operator>>( QTextStream&, QSplitter& );
#endif #endif
class QSplitterHandle : public QWidget
{
Q_OBJECT
public:
QSplitterHandle( Orientation o,
QSplitter *parent, const char* name=0 );
void setOrientation( Orientation o );
Orientation orientation() const { return orient; }
bool opaque() const { return s->opaqueResize(); }
QSize sizeHint() const;
int id() const { return myId; } // d->list.at(id())->wid == this
void setId( int i ) { myId = i; }
protected:
void paintEvent( QPaintEvent * );
void mouseMoveEvent( QMouseEvent * );
void mousePressEvent( QMouseEvent * );
void mouseReleaseEvent( QMouseEvent * );
public: // private:
Orientation orient;
bool opaq;
int myId;
QSplitter *s;
};
#endif // QT_NO_SPLITTER #endif // QT_NO_SPLITTER
#endif // QSPLITTER_H #endif // QSPLITTER_H

Loading…
Cancel
Save