Doc: Modularize QtOpenGL documentation.

This change moves the snippets to the modularized directories.

Change-Id: Ifcf22fa3f234681f851d1e7eed5fe44e2e223ffd
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
This commit is contained in:
Casper van Donderen 2012-05-08 10:28:29 +02:00 committed by Marius Storm-Olsen
parent 97b5b80092
commit 03d81b0100
12 changed files with 263 additions and 15 deletions

View File

@ -0,0 +1,92 @@
include(../../../doc/global/qt-cpp-ignore.qdocconf)
project = QtOpenGL
description = Qt OpenGL Reference Documentation
url = http://qt-project.org/doc/qt-5.0/qtopengl
version = 5.0.0
sourceencoding = UTF-8
outputencoding = UTF-8
naturallanguage = en_US
qhp.projects = QtOpenGL
qhp.QtOpenGL.file = qtopengl.qhp
qhp.QtOpenGL.namespace = org.qt-project.qtopengl.500
qhp.QtOpenGL.virtualFolder = qdoc
qhp.QtOpenGL.indexTitle = Qt OpenGL Reference Documentation
qhp.QtOpenGL.indexRoot =
qhp.QtOpenGL.filterAttributes = qtopengl 5.0.0 qtrefdoc
qhp.QtOpenGL.customFilters.Qt.name = QtOpenGL 5.0.0
qhp.QtOpenGL.customFilters.Qt.filterAttributes = qtopengl 5.0.0
qhp.QtOpenGL.subprojects = classes overviews examples
qhp.QtOpenGL.subprojects.classes.title = Classes
qhp.QtOpenGL.subprojects.classes.indexTitle = Qt OpenGL's Classes
qhp.QtOpenGL.subprojects.classes.selectors = class fake:headerfile
qhp.QtOpenGL.subprojects.classes.sortPages = true
qhp.QtOpenGL.subprojects.overviews.title = Overviews
qhp.QtOpenGL.subprojects.overviews.indexTitle = All Overviews and HOWTOs
qhp.QtOpenGL.subprojects.overviews.selectors = fake:page,group,module
qhp.QtOpenGL.subprojects.examples.title = Qt OpenGL Examples
qhp.QtOpenGL.subprojects.examples.indexTitle = Qt OpenGL Examples
qhp.QtOpenGL.subprojects.examples.selectors = fake:example
dita.metadata.default.author = Qt Project
dita.metadata.default.permissions = all
dita.metadata.default.publisher = Qt Project
dita.metadata.default.copyryear = 2012
dita.metadata.default.copyrholder = Nokia
dita.metadata.default.audience = programmer
sources.fileextensions = "*.c++ *.cc *.cpp *.cxx *.mm *.qml *.qdoc"
headers.fileextensions = "*.ch *.h *.h++ *.hh *.hpp *.hxx"
examples.fileextensions = "*.cpp *.h *.js *.xq *.svg *.xml *.ui *.qhp *.qhcp *.qml *.css"
examples.imageextensions = "*.png"
outputdir = ../../../doc/qtopengl
tagfile = ../../../doc/qtopengl/qtopengl.tags
HTML.generatemacrefs = "true"
HTML.nobreadcrumbs = "true"
HTML.templatedir = .
HTML.stylesheets = ../../../doc/global/style/offline.css
HTML.headerstyles = \
" <link rel=\"stylesheet\" type=\"text/css\" href=\"style/offline.css\" />\n"
HTML.endheader = \
"</head>\n" \
defines = Q_QDOC \
QT_.*_SUPPORT \
QT_.*_LIB \
QT_COMPAT \
QT_KEYPAD_NAVIGATION \
QT_NO_EGL \
Q_WS_.* \
Q_OS_.* \
Q_BYTE_ORDER \
QT_DEPRECATED \
QT_DEPRECATED_* \
Q_NO_USING_KEYWORD \
__cplusplus \
Q_COMPILER_INITIALIZER_LISTS
versionsym = QT_VERSION_STR
codeindent = 1
depends += qtcore qtgui qtwidgets
headerdirs += ..
sourcedirs += ..
exampledirs += ../../../examples \
../ \
snippets
imagedirs += images

View File

@ -0,0 +1,43 @@
/****************************************************************************
**
** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/
**
** This file is part of the documentation of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:BSD$
** You may use this file under the terms of the BSD license as follows:
**
** "Redistribution and use in source and binary forms, with or without
** modification, are permitted provided that the following conditions are
** met:
** * Redistributions of source code must retain the above copyright
** notice, this list of conditions and the following disclaimer.
** * Redistributions in binary form must reproduce the above copyright
** notice, this list of conditions and the following disclaimer in
** the documentation and/or other materials provided with the
** distribution.
** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
** the names of its contributors may be used to endorse or promote
** products derived from this software without specific prior written
** permission.
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
**
** $QT_END_LICENSE$
**
****************************************************************************/
//! [0]
#include <QtOpenGL>
//! [0]

View File

@ -0,0 +1,43 @@
/****************************************************************************
**
** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/
**
** This file is part of the documentation of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:BSD$
** You may use this file under the terms of the BSD license as follows:
**
** "Redistribution and use in source and binary forms, with or without
** modification, are permitted provided that the following conditions are
** met:
** * Redistributions of source code must retain the above copyright
** notice, this list of conditions and the following disclaimer.
** * Redistributions in binary form must reproduce the above copyright
** notice, this list of conditions and the following disclaimer in
** the documentation and/or other materials provided with the
** distribution.
** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
** the names of its contributors may be used to endorse or promote
** products derived from this software without specific prior written
** permission.
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
**
** $QT_END_LICENSE$
**
****************************************************************************/
#! [1]
QT += opengl
#! [1]

View File

@ -0,0 +1,70 @@
/****************************************************************************
**
** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/
**
** This file is part of the documentation of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:FDL$
** GNU Free Documentation License
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file.
**
** Other Usage
** Alternatively, this file may be used in accordance with the terms
** and conditions contained in a signed written agreement between you
** and Nokia.
**
**
**
**
**
** $QT_END_LICENSE$
**
****************************************************************************/
/*!
\module QtOpenGL
\title QtOpenGL Module
\ingroup modules
\ingroup technology-apis
\brief The QtOpenGL module offers classes that make it easy to
use OpenGL in Qt applications.
OpenGL is a standard API for rendering 3D graphics. OpenGL only
deals with 3D rendering and provides little or no support for GUI
programming issues. The user interface for an OpenGL application
must be created with another toolkit, such as Motif on the X
platform, Microsoft Foundation Classes (MFC) under Windows, or Qt
on both platforms.
\note OpenGL is a trademark of Silicon Graphics, Inc. in
the United States and other countries.
The Qt OpenGL module makes it easy to use OpenGL in Qt applications.
It provides an OpenGL widget class that can be used just like any
other Qt widget, except that it opens an OpenGL display buffer where
you can use the OpenGL API to render the contents.
To include the definitions of the module's classes, use the
following directive:
\snippet code/doc_src_qtopengl.cpp 0
To link against the module, add this line to your \l qmake \c
.pro file:
\snippet code/doc_src_qtopengl.pro 1
The Qt OpenGL module is implemented as a platform-independent Qt/C++
wrapper around the platform-dependent GLX (version 1.3 or later),
WGL, or AGL C APIs. Although the basic functionality provided is very
similar to Mark Kilgard's GLUT library, applications using the Qt
OpenGL module can take advantage of the whole Qt API for
non-OpenGL-specific GUI functionality.
*/

View File

@ -208,15 +208,15 @@ QGLSignalProxy *QGLSignalProxy::instance()
There are different ways to define the display characteristics of
a rendering context. One is to create a QGLFormat and make it the
default for the entire application:
\snippet doc/src/snippets/code/src_opengl_qgl.cpp 0
\snippet code/src_opengl_qgl.cpp 0
Or you can specify the desired format when creating an object of
your QGLWidget subclass:
\snippet doc/src/snippets/code/src_opengl_qgl.cpp 1
\snippet code/src_opengl_qgl.cpp 1
After the widget has been created, you can find out which of the
requested features the system was able to provide:
\snippet doc/src/snippets/code/src_opengl_qgl.cpp 2
\snippet code/src_opengl_qgl.cpp 2
\legalese
OpenGL is a trademark of Silicon Graphics, Inc. in the
@ -305,7 +305,7 @@ QGLFormat::QGLFormat()
This constructor makes it easy to specify a certain desired format
in classes derived from QGLWidget, for example:
\snippet doc/src/snippets/code/src_opengl_qgl.cpp 3
\snippet code/src_opengl_qgl.cpp 3
Note that there are QGL::FormatOption values to turn format settings
both on and off, e.g. QGL::DepthBuffer and QGL::NoDepthBuffer,
@ -1323,7 +1323,7 @@ QGLFormat QGLFormat::defaultFormat()
Sets a new default QGLFormat for the application to \a f. For
example, to set single buffering as the default instead of double
buffering, your main() might contain code like this:
\snippet doc/src/snippets/code/src_opengl_qgl.cpp 4
\snippet code/src_opengl_qgl.cpp 4
\sa defaultFormat()
*/
@ -1368,13 +1368,13 @@ QGLFormat QGLFormat::defaultOverlayFormat()
For example, to get a double buffered overlay context (if
available), use code like this:
\snippet doc/src/snippets/code/src_opengl_qgl.cpp 5
\snippet code/src_opengl_qgl.cpp 5
As usual, you can find out after widget creation whether the
underlying OpenGL system was able to provide the requested
specification:
\snippet doc/src/snippets/code/src_opengl_qgl.cpp 6
\snippet code/src_opengl_qgl.cpp 6
\sa defaultOverlayFormat()
*/
@ -2808,7 +2808,7 @@ int QGLContext::textureCacheLimit()
Call create() to create a new GL context that tries to match the
new format.
\snippet doc/src/snippets/code/src_opengl_qgl.cpp 7
\snippet code/src_opengl_qgl.cpp 7
\sa format(), reset(), create()
*/
@ -3226,7 +3226,7 @@ void QGLContextPrivate::setCurrentContext(QGLContext *context)
Here is a rough outline of how a QGLWidget subclass might look:
\snippet doc/src/snippets/code/src_opengl_qgl.cpp 8
\snippet code/src_opengl_qgl.cpp 8
If you need to trigger a repaint from places other than paintGL()
(a typical example is when using \link QTimer timers\endlink to

View File

@ -69,7 +69,7 @@
optimization.
Example of use:
\snippet doc/src/snippets/code/src_opengl_qglcolormap.cpp 0
\snippet code/src_opengl_qglcolormap.cpp 0
\sa QGLWidget::setColormap(), QGLWidget::colormap()
*/

View File

@ -257,7 +257,7 @@ bool QGLPixelBuffer::doneCurrent()
Example:
\snippet doc/src/snippets/code/src_opengl_qglpixelbuffer.cpp 0
\snippet code/src_opengl_qglpixelbuffer.cpp 0
\warning This function uses the \c {render_texture} extension,
which is currently not supported under X11. An alternative that
@ -292,7 +292,7 @@ bool QGLPixelBuffer::doneCurrent()
Example:
\snippet doc/src/snippets/code/src_opengl_qglpixelbuffer.cpp 1
\snippet code/src_opengl_qglpixelbuffer.cpp 1
An alternative on Windows and Mac OS X systems that support the
\c render_texture extension is to use bindToDynamicTexture() to

View File

@ -69,7 +69,7 @@ QT_BEGIN_NAMESPACE
program is activated in the current QGLContext by calling
QGLShaderProgram::bind():
\snippet doc/src/snippets/code/src_opengl_qglshaderprogram.cpp 0
\snippet code/src_opengl_qglshaderprogram.cpp 0
\section1 Writing portable shaders
@ -97,12 +97,12 @@ QT_BEGIN_NAMESPACE
\section1 Simple shader example
\snippet doc/src/snippets/code/src_opengl_qglshaderprogram.cpp 1
\snippet code/src_opengl_qglshaderprogram.cpp 1
With the above shader program active, we can draw a green triangle
as follows:
\snippet doc/src/snippets/code/src_opengl_qglshaderprogram.cpp 2
\snippet code/src_opengl_qglshaderprogram.cpp 2
\section1 Binary shaders and programs