summaryrefslogtreecommitdiffstats
path: root/tqtinterface/qt4/src/widgets/tqsplitter.h
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-08-06 01:36:40 -0500
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-08-06 01:36:40 -0500
commit1bd4b1d55d15b8b5f6ee2517d45d1ded47786cd3 (patch)
tree319de6acd8169e8852fc3e04ecad419b14c46781 /tqtinterface/qt4/src/widgets/tqsplitter.h
parent3d0ccc665e549aabfd375b5a45e3b63b0fc547bc (diff)
downloadexperimental-1bd4b1d55d15b8b5f6ee2517d45d1ded47786cd3.tar.gz
experimental-1bd4b1d55d15b8b5f6ee2517d45d1ded47786cd3.zip
Expose some QSplitter private classes for added functionality in Trinity
This is not a security risk
Diffstat (limited to 'tqtinterface/qt4/src/widgets/tqsplitter.h')
-rw-r--r--tqtinterface/qt4/src/widgets/tqsplitter.h71
1 files changed, 71 insertions, 0 deletions
diff --git a/tqtinterface/qt4/src/widgets/tqsplitter.h b/tqtinterface/qt4/src/widgets/tqsplitter.h
index b9d536d..6c7409e 100644
--- a/tqtinterface/qt4/src/widgets/tqsplitter.h
+++ b/tqtinterface/qt4/src/widgets/tqsplitter.h
@@ -48,11 +48,52 @@
#ifndef TQT_NO_SPLITTER
+#define TQT_TQSPLITTER_DEFAULT 2
+
class TQSplitterHandle;
class TQSplitterPrivate;
class TQSplitterLayoutStruct;
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
{
Q_OBJECT
@@ -165,6 +206,36 @@ TQ_EXPORT TQTextStream& operator<<( TQTextStream&, const TQSplitter& );
TQ_EXPORT TQTextStream& operator>>( TQTextStream&, TQSplitter& );
#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 // TQSPLITTER_H