summaryrefslogtreecommitdiffstats
path: root/sip/tqtgl/tqgl.sip
diff options
context:
space:
mode:
Diffstat (limited to 'sip/tqtgl/tqgl.sip')
-rw-r--r--sip/tqtgl/tqgl.sip276
1 files changed, 276 insertions, 0 deletions
diff --git a/sip/tqtgl/tqgl.sip b/sip/tqtgl/tqgl.sip
new file mode 100644
index 0000000..1d1b080
--- /dev/null
+++ b/sip/tqtgl/tqgl.sip
@@ -0,0 +1,276 @@
+// This is the SIP interface definition for TQGL, TQGLContext, TQGLFormat and
+// TQGLWidget.
+//
+// Copyright (c) 2007
+// Riverbank Computing Limited <info@riverbankcomputing.co.uk>
+//
+// This file is part of PyTQt.
+//
+// This copy of PyTQt is free software; you can redistribute it and/or modify it
+// under the terms of the GNU General Public License as published by the Free
+// Software Foundation; either version 2, or (at your option) any later
+// version.
+//
+// PyTQt is supplied in the hope that it will be useful, but WITHOUT ANY
+// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+// details.
+//
+// You should have received a copy of the GNU General Public License along with
+// PyTQt; see the file LICENSE. If not, write to the Free Software Foundation,
+// Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+%ExportedDoc
+<Sect2><Title>TQGL</Title>
+<Para>
+<Literal>TQGL</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>TQGLContext</Title>
+<Para>
+<Literal>TQGLContext</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>TQGLFormat</Title>
+<Para>
+<Literal>TQGLFormat</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>TQGLWidget</Title>
+<Para>
+<Literal>TQGLWidget</Literal> is fully implemented.
+</Para>
+</Sect2>
+%End
+
+
+const int TQGL_VERSION;
+const char *TQGL_VERSION_STR;
+
+const char *qGLVersion();
+
+
+class TQGL
+{
+%TypeHeaderCode
+#include <tqgl.h>
+%End
+
+public:
+ enum FormatOption {
+ DoubleBuffer,
+ DepthBuffer,
+ Rgba,
+ AlphaChannel,
+ AccumBuffer,
+ StencilBuffer,
+ StereoBuffers,
+ DirectRendering,
+ HasOverlay,
+ SingleBuffer,
+ NoDepthBuffer,
+ ColorIndex,
+ NoAlphaChannel,
+ NoAccumBuffer,
+ NoStencilBuffer,
+ NoStereoBuffers,
+ IndirectRendering,
+ NoOverlay
+ };
+};
+
+
+class TQGLFormat : TQGL
+{
+%TypeHeaderCode
+#include <tqgl.h>
+%End
+
+public:
+ TQGLFormat();
+ TQGLFormat(int,int = 0);
+
+ bool doubleBuffer() const;
+ void setDoubleBuffer(bool);
+ bool depth() const;
+ void setDepth(bool);
+ bool rgba() const;
+ void setRgba(bool);
+ bool alpha() const;
+ void setAlpha(bool);
+ bool accum() const;
+ void setAccum(bool);
+ bool stencil() const;
+ void setStencil(bool);
+ bool stereo() const;
+ void setStereo(bool);
+ bool directRendering() const;
+ void setDirectRendering(bool);
+ bool hasOverlay() const;
+ void setOverlay(bool);
+
+ int plane() const;
+ void setPlane(int);
+
+ void setOption(FormatOption);
+ bool testOption(FormatOption) const;
+
+ static TQGLFormat defaultFormat();
+ static void setDefaultFormat(const TQGLFormat &);
+
+ static TQGLFormat defaultOverlayFormat();
+ static void setDefaultOverlayFormat(const TQGLFormat &);
+
+ static bool hasOpenGL();
+ static bool hasOpenGLOverlays();
+};
+
+
+class TQGLContext : TQGL
+{
+%TypeHeaderCode
+#include <tqgl.h>
+%End
+
+public:
+ TQGLContext(const TQGLFormat &,TQPaintDevice *);
+ TQGLContext(const TQGLFormat &);
+
+ virtual bool create(const TQGLContext * = 0);
+ bool isValid() const;
+ bool isSharing() const;
+ virtual void reset();
+
+ TQGLFormat format() const;
+ TQGLFormat requestedFormat() const;
+ virtual void setFormat(const TQGLFormat &);
+
+ virtual void makeCurrent();
+ virtual void swapBuffers() const;
+
+ TQPaintDevice *device() const;
+
+ TQColor overlayTransparentColor() const;
+
+ static const TQGLContext *currentContext();
+
+protected:
+ virtual bool chooseContext(const TQGLContext * = 0);
+ virtual void doneCurrent();
+
+%If (WS_X11)
+ virtual void *tryVisual(const TQGLFormat &,int = 1);
+ virtual void *chooseVisual();
+%End
+
+ bool deviceIsPixmap() const;
+ bool windowCreated() const;
+ void setWindowCreated(bool);
+ bool initialized() const;
+ void setInitialized(bool);
+ void generateFontDisplayLists(const TQFont &,int);
+
+ uint colorIndex(const TQColor &) const;
+ void setValid(bool);
+ void setDevice(TQPaintDevice *);
+
+private:
+ TQGLContext();
+ TQGLContext(const TQGLContext &);
+};
+
+
+class TQGLWidget : TQWidget, TQGL
+{
+%TypeHeaderCode
+#include <tqgl.h>
+%End
+
+public:
+ TQGLWidget(TQWidget * /TransferThis/ = 0,const char * = 0,
+ const TQGLWidget * = 0,WFlags = 0);
+ TQGLWidget(TQGLContext * /Transfer/,TQWidget * /TransferThis/ = 0,const char * = 0,
+ const TQGLWidget * = 0,WFlags = 0);
+ TQGLWidget(const TQGLFormat &,TQWidget * /TransferThis/ = 0,
+ const char * = 0,const TQGLWidget * = 0,WFlags = 0);
+
+%ConvertToSubClassCode
+ sipClass = (sipCpp->inherits(sipName_TQGLWidget) ? sipClass_TQGLWidget : NULL);
+%End
+
+ void qglColor(const TQColor &) const;
+ void qglClearColor(const TQColor &) const;
+
+ bool isValid() const;
+ bool isSharing() const;
+ virtual void makeCurrent();
+ void doneCurrent();
+
+ bool doubleBuffer() const;
+ virtual void swapBuffers();
+
+ TQGLFormat format() const;
+
+ const TQGLContext *context() const;
+
+ virtual TQPixmap renderPixmap(int = 0,int = 0,bool = 0);
+ virtual TQImage grabFrameBuffer(bool = 0);
+
+ virtual void makeOverlayCurrent();
+ const TQGLContext *overlayContext() const;
+
+ static TQImage convertToGLFormat(const TQImage &);
+
+ void setMouseTracking(bool);
+
+ virtual void reparent(TQWidget * /GetWrapper/,WFlags,const TQPoint &,
+ bool = 0);
+%MethodCode
+ if (sipCpp -> parent() != a0)
+ if (a0)
+ sipTransferTo(sipSelf,a0Wrapper);
+ else
+ sipTransferBack(sipSelf);
+
+ Py_BEGIN_ALLOW_THREADS
+ sipSelfWasArg ? sipCpp->TQGLWidget::reparent(a0, a1, *a2, a3) : sipCpp->reparent(a0, a1, *a2, a3);
+ Py_END_ALLOW_THREADS
+%End
+
+ const TQGLColormap &colormap() const;
+ void setColormap(const TQGLColormap &);
+
+ void renderText(int,int,const TQString &,const TQFont & = TQFont(),
+ int = 2000);
+ void renderText(double,double,double,const TQString &,
+ const TQFont & = TQFont(),int = 2000);
+
+public slots:
+ virtual void updateGL();
+ virtual void updateOverlayGL();
+
+protected:
+ virtual void initializeGL();
+ virtual void resizeGL(int,int);
+ virtual void paintGL();
+
+ virtual void initializeOverlayGL();
+ virtual void resizeOverlayGL(int,int);
+ virtual void paintOverlayGL();
+
+ void setAutoBufferSwap(bool);
+ bool autoBufferSwap() const;
+
+ void paintEvent(TQPaintEvent *);
+ void resizeEvent(TQResizeEvent *);
+
+ virtual void glInit();
+ virtual void glDraw();
+
+private:
+ TQGLWidget(const TQGLWidget &);
+};