summaryrefslogtreecommitdiffstats
path: root/doc/src
diff options
context:
space:
mode:
Diffstat (limited to 'doc/src')
-rw-r--r--doc/src/diagrams/designer-manual/designer-adding-dockwidget.txt (renamed from doc/src/diagrams/designer-adding-dockwidget.txt)0
-rw-r--r--doc/src/diagrams/designer-manual/designer-adding-dockwidget1.png (renamed from doc/src/diagrams/designer-adding-dockwidget1.png)bin8897 -> 8897 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-adding-dockwidget1.zip (renamed from doc/src/diagrams/designer-adding-dockwidget1.zip)bin12252 -> 12252 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-adding-menu-action1.png (renamed from doc/src/diagrams/designer-adding-menu-action1.png)bin16173 -> 16173 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-adding-menu-action1.zip (renamed from doc/src/diagrams/designer-adding-menu-action1.zip)bin19245 -> 19245 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-adding-menu-action2.zip (renamed from doc/src/diagrams/designer-adding-menu-action2.zip)bin19587 -> 19587 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-adding-toolbar-action1.png (renamed from doc/src/diagrams/designer-adding-toolbar-action1.png)bin14911 -> 14911 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-adding-toolbar-action1.zip (renamed from doc/src/diagrams/designer-adding-toolbar-action1.zip)bin17515 -> 17515 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-adding-toolbar-action2.zip (renamed from doc/src/diagrams/designer-adding-toolbar-action2.zip)bin15433 -> 15433 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-dynamic-property.png (renamed from doc/src/diagrams/designer-creating-dynamic-property.png)bin7561 -> 7561 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menu-entry1.png (renamed from doc/src/diagrams/designer-creating-menu-entry1.png)bin9618 -> 9618 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menu-entry1.zip (renamed from doc/src/diagrams/designer-creating-menu-entry1.zip)bin11753 -> 11753 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menu-entry2.png (renamed from doc/src/diagrams/designer-creating-menu-entry2.png)bin9090 -> 9090 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menu-entry2.zip (renamed from doc/src/diagrams/designer-creating-menu-entry2.zip)bin11709 -> 11709 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menu-entry3.png (renamed from doc/src/diagrams/designer-creating-menu-entry3.png)bin5435 -> 5435 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menu-entry3.zip (renamed from doc/src/diagrams/designer-creating-menu-entry3.zip)bin11520 -> 11520 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menu-entry4.png (renamed from doc/src/diagrams/designer-creating-menu-entry4.png)bin10141 -> 10141 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menu-entry4.zip (renamed from doc/src/diagrams/designer-creating-menu-entry4.zip)bin12473 -> 12473 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menu.txt (renamed from doc/src/diagrams/designer-creating-menu.txt)0
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menu1.png (renamed from doc/src/diagrams/designer-creating-menu1.png)bin4733 -> 4733 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menu1.zip (renamed from doc/src/diagrams/designer-creating-menu1.zip)bin5279 -> 5279 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menu2.png (renamed from doc/src/diagrams/designer-creating-menu2.png)bin4296 -> 4296 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menu2.zip (renamed from doc/src/diagrams/designer-creating-menu2.zip)bin5295 -> 5295 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menu3.png (renamed from doc/src/diagrams/designer-creating-menu3.png)bin5053 -> 5053 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menu3.zip (renamed from doc/src/diagrams/designer-creating-menu3.zip)bin6197 -> 6197 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menu4.png (renamed from doc/src/diagrams/designer-creating-menu4.png)bin5274 -> 5274 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menubar.png (renamed from doc/src/diagrams/designer-creating-menubar.png)bin7024 -> 7024 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-creating-menubar.zip (renamed from doc/src/diagrams/designer-creating-menubar.zip)bin10485 -> 10485 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-edit-resource.zip (renamed from doc/src/diagrams/designer-edit-resource.zip)bin11195 -> 11195 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-find-icon.zip (renamed from doc/src/diagrams/designer-find-icon.zip)bin47820 -> 47820 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-form-layoutfunction-crop.png (renamed from doc/src/diagrams/designer-form-layoutfunction-crop.png)bin5132 -> 5132 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-form-layoutfunction.png (renamed from doc/src/diagrams/designer-form-layoutfunction.png)bin15912 -> 15912 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-form-layoutfunction.zip (renamed from doc/src/diagrams/designer-form-layoutfunction.zip)bin21179 -> 21179 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-main-window.zip (renamed from doc/src/diagrams/designer-main-window.zip)bin35959 -> 35959 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-mainwindow-actions.ui (renamed from doc/src/diagrams/designer-mainwindow-actions.ui)0
-rw-r--r--doc/src/diagrams/designer-manual/designer-palette-brush-editor.zip (renamed from doc/src/diagrams/designer-palette-brush-editor.zip)bin17703 -> 17703 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-palette-editor.zip (renamed from doc/src/diagrams/designer-palette-editor.zip)bin30588 -> 30588 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-palette-gradient-editor.zip (renamed from doc/src/diagrams/designer-palette-gradient-editor.zip)bin55456 -> 55456 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-palette-pattern-editor.zip (renamed from doc/src/diagrams/designer-palette-pattern-editor.zip)bin15845 -> 15845 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-resource-editor.zip (renamed from doc/src/diagrams/designer-resource-editor.zip)bin12287 -> 12287 bytes
-rw-r--r--doc/src/diagrams/designer-manual/designer-widget-box.zip (renamed from doc/src/diagrams/designer-widget-box.zip)bin30530 -> 30530 bytes
-rw-r--r--doc/src/diagrams/designer-manual/rgbController.ui212
-rw-r--r--doc/src/examples/tablet.qdoc2
-rw-r--r--doc/src/examples/videographicsitem.qdoc52
-rw-r--r--doc/src/examples/videowidget.qdoc187
-rw-r--r--doc/src/getting-started/demos.qdoc2
-rw-r--r--doc/src/getting-started/examples.qdoc7
-rw-r--r--doc/src/images/gestures.pngbin0 -> 178365 bytes
-rw-r--r--doc/src/images/video-videographicsitem.pngbin0 -> 54436 bytes
-rw-r--r--doc/src/images/video-videowidget.pngbin0 -> 54199 bytes
-rw-r--r--doc/src/images/whatsnewanimatedtiles.pngbin0 -> 168909 bytes
-rw-r--r--doc/src/index.qdoc2
-rw-r--r--doc/src/qt4-intro.qdoc179
-rw-r--r--doc/src/snippets/code/src_gui_effects_qgraphicseffect.cpp33
54 files changed, 670 insertions, 6 deletions
diff --git a/doc/src/diagrams/designer-adding-dockwidget.txt b/doc/src/diagrams/designer-manual/designer-adding-dockwidget.txt
index 97b4beb..97b4beb 100644
--- a/doc/src/diagrams/designer-adding-dockwidget.txt
+++ b/doc/src/diagrams/designer-manual/designer-adding-dockwidget.txt
diff --git a/doc/src/diagrams/designer-adding-dockwidget1.png b/doc/src/diagrams/designer-manual/designer-adding-dockwidget1.png
index 960da83..960da83 100644
--- a/doc/src/diagrams/designer-adding-dockwidget1.png
+++ b/doc/src/diagrams/designer-manual/designer-adding-dockwidget1.png
Binary files differ
diff --git a/doc/src/diagrams/designer-adding-dockwidget1.zip b/doc/src/diagrams/designer-manual/designer-adding-dockwidget1.zip
index 0492df6..0492df6 100644
--- a/doc/src/diagrams/designer-adding-dockwidget1.zip
+++ b/doc/src/diagrams/designer-manual/designer-adding-dockwidget1.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-adding-menu-action1.png b/doc/src/diagrams/designer-manual/designer-adding-menu-action1.png
index cde92d9..cde92d9 100644
--- a/doc/src/diagrams/designer-adding-menu-action1.png
+++ b/doc/src/diagrams/designer-manual/designer-adding-menu-action1.png
Binary files differ
diff --git a/doc/src/diagrams/designer-adding-menu-action1.zip b/doc/src/diagrams/designer-manual/designer-adding-menu-action1.zip
index 08395eb..08395eb 100644
--- a/doc/src/diagrams/designer-adding-menu-action1.zip
+++ b/doc/src/diagrams/designer-manual/designer-adding-menu-action1.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-adding-menu-action2.zip b/doc/src/diagrams/designer-manual/designer-adding-menu-action2.zip
index ca1a5b3..ca1a5b3 100644
--- a/doc/src/diagrams/designer-adding-menu-action2.zip
+++ b/doc/src/diagrams/designer-manual/designer-adding-menu-action2.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-adding-toolbar-action1.png b/doc/src/diagrams/designer-manual/designer-adding-toolbar-action1.png
index 6b82373..6b82373 100644
--- a/doc/src/diagrams/designer-adding-toolbar-action1.png
+++ b/doc/src/diagrams/designer-manual/designer-adding-toolbar-action1.png
Binary files differ
diff --git a/doc/src/diagrams/designer-adding-toolbar-action1.zip b/doc/src/diagrams/designer-manual/designer-adding-toolbar-action1.zip
index e673b3c..e673b3c 100644
--- a/doc/src/diagrams/designer-adding-toolbar-action1.zip
+++ b/doc/src/diagrams/designer-manual/designer-adding-toolbar-action1.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-adding-toolbar-action2.zip b/doc/src/diagrams/designer-manual/designer-adding-toolbar-action2.zip
index 96a9d69..96a9d69 100644
--- a/doc/src/diagrams/designer-adding-toolbar-action2.zip
+++ b/doc/src/diagrams/designer-manual/designer-adding-toolbar-action2.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-dynamic-property.png b/doc/src/diagrams/designer-manual/designer-creating-dynamic-property.png
index 1c3d3ca..1c3d3ca 100644
--- a/doc/src/diagrams/designer-creating-dynamic-property.png
+++ b/doc/src/diagrams/designer-manual/designer-creating-dynamic-property.png
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menu-entry1.png b/doc/src/diagrams/designer-manual/designer-creating-menu-entry1.png
index 33aa0d6..33aa0d6 100644
--- a/doc/src/diagrams/designer-creating-menu-entry1.png
+++ b/doc/src/diagrams/designer-manual/designer-creating-menu-entry1.png
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menu-entry1.zip b/doc/src/diagrams/designer-manual/designer-creating-menu-entry1.zip
index f9e64c8..f9e64c8 100644
--- a/doc/src/diagrams/designer-creating-menu-entry1.zip
+++ b/doc/src/diagrams/designer-manual/designer-creating-menu-entry1.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menu-entry2.png b/doc/src/diagrams/designer-manual/designer-creating-menu-entry2.png
index 8338d08..8338d08 100644
--- a/doc/src/diagrams/designer-creating-menu-entry2.png
+++ b/doc/src/diagrams/designer-manual/designer-creating-menu-entry2.png
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menu-entry2.zip b/doc/src/diagrams/designer-manual/designer-creating-menu-entry2.zip
index 67d81e4..67d81e4 100644
--- a/doc/src/diagrams/designer-creating-menu-entry2.zip
+++ b/doc/src/diagrams/designer-manual/designer-creating-menu-entry2.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menu-entry3.png b/doc/src/diagrams/designer-manual/designer-creating-menu-entry3.png
index d242646..d242646 100644
--- a/doc/src/diagrams/designer-creating-menu-entry3.png
+++ b/doc/src/diagrams/designer-manual/designer-creating-menu-entry3.png
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menu-entry3.zip b/doc/src/diagrams/designer-manual/designer-creating-menu-entry3.zip
index d530186..d530186 100644
--- a/doc/src/diagrams/designer-creating-menu-entry3.zip
+++ b/doc/src/diagrams/designer-manual/designer-creating-menu-entry3.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menu-entry4.png b/doc/src/diagrams/designer-manual/designer-creating-menu-entry4.png
index 07a49ba..07a49ba 100644
--- a/doc/src/diagrams/designer-creating-menu-entry4.png
+++ b/doc/src/diagrams/designer-manual/designer-creating-menu-entry4.png
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menu-entry4.zip b/doc/src/diagrams/designer-manual/designer-creating-menu-entry4.zip
index d800c31..d800c31 100644
--- a/doc/src/diagrams/designer-creating-menu-entry4.zip
+++ b/doc/src/diagrams/designer-manual/designer-creating-menu-entry4.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menu.txt b/doc/src/diagrams/designer-manual/designer-creating-menu.txt
index b5b2934..b5b2934 100644
--- a/doc/src/diagrams/designer-creating-menu.txt
+++ b/doc/src/diagrams/designer-manual/designer-creating-menu.txt
diff --git a/doc/src/diagrams/designer-creating-menu1.png b/doc/src/diagrams/designer-manual/designer-creating-menu1.png
index d92a88a..d92a88a 100644
--- a/doc/src/diagrams/designer-creating-menu1.png
+++ b/doc/src/diagrams/designer-manual/designer-creating-menu1.png
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menu1.zip b/doc/src/diagrams/designer-manual/designer-creating-menu1.zip
index 780b1ac..780b1ac 100644
--- a/doc/src/diagrams/designer-creating-menu1.zip
+++ b/doc/src/diagrams/designer-manual/designer-creating-menu1.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menu2.png b/doc/src/diagrams/designer-manual/designer-creating-menu2.png
index 7be4891..7be4891 100644
--- a/doc/src/diagrams/designer-creating-menu2.png
+++ b/doc/src/diagrams/designer-manual/designer-creating-menu2.png
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menu2.zip b/doc/src/diagrams/designer-manual/designer-creating-menu2.zip
index 00664a6..00664a6 100644
--- a/doc/src/diagrams/designer-creating-menu2.zip
+++ b/doc/src/diagrams/designer-manual/designer-creating-menu2.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menu3.png b/doc/src/diagrams/designer-manual/designer-creating-menu3.png
index c2f1beb..c2f1beb 100644
--- a/doc/src/diagrams/designer-creating-menu3.png
+++ b/doc/src/diagrams/designer-manual/designer-creating-menu3.png
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menu3.zip b/doc/src/diagrams/designer-manual/designer-creating-menu3.zip
index 76ecbe0..76ecbe0 100644
--- a/doc/src/diagrams/designer-creating-menu3.zip
+++ b/doc/src/diagrams/designer-manual/designer-creating-menu3.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menu4.png b/doc/src/diagrams/designer-manual/designer-creating-menu4.png
index 3a3ab54..3a3ab54 100644
--- a/doc/src/diagrams/designer-creating-menu4.png
+++ b/doc/src/diagrams/designer-manual/designer-creating-menu4.png
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menubar.png b/doc/src/diagrams/designer-manual/designer-creating-menubar.png
index e8078e0..e8078e0 100644
--- a/doc/src/diagrams/designer-creating-menubar.png
+++ b/doc/src/diagrams/designer-manual/designer-creating-menubar.png
Binary files differ
diff --git a/doc/src/diagrams/designer-creating-menubar.zip b/doc/src/diagrams/designer-manual/designer-creating-menubar.zip
index bddbf0e..bddbf0e 100644
--- a/doc/src/diagrams/designer-creating-menubar.zip
+++ b/doc/src/diagrams/designer-manual/designer-creating-menubar.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-edit-resource.zip b/doc/src/diagrams/designer-manual/designer-edit-resource.zip
index dc43d9e..dc43d9e 100644
--- a/doc/src/diagrams/designer-edit-resource.zip
+++ b/doc/src/diagrams/designer-manual/designer-edit-resource.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-find-icon.zip b/doc/src/diagrams/designer-manual/designer-find-icon.zip
index e94abd9..e94abd9 100644
--- a/doc/src/diagrams/designer-find-icon.zip
+++ b/doc/src/diagrams/designer-manual/designer-find-icon.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-form-layoutfunction-crop.png b/doc/src/diagrams/designer-manual/designer-form-layoutfunction-crop.png
index e8dd39f..e8dd39f 100644
--- a/doc/src/diagrams/designer-form-layoutfunction-crop.png
+++ b/doc/src/diagrams/designer-manual/designer-form-layoutfunction-crop.png
Binary files differ
diff --git a/doc/src/diagrams/designer-form-layoutfunction.png b/doc/src/diagrams/designer-manual/designer-form-layoutfunction.png
index 9101e89..9101e89 100644
--- a/doc/src/diagrams/designer-form-layoutfunction.png
+++ b/doc/src/diagrams/designer-manual/designer-form-layoutfunction.png
Binary files differ
diff --git a/doc/src/diagrams/designer-form-layoutfunction.zip b/doc/src/diagrams/designer-manual/designer-form-layoutfunction.zip
index fcce637..fcce637 100644
--- a/doc/src/diagrams/designer-form-layoutfunction.zip
+++ b/doc/src/diagrams/designer-manual/designer-form-layoutfunction.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-main-window.zip b/doc/src/diagrams/designer-manual/designer-main-window.zip
index 69b7ee6..69b7ee6 100644
--- a/doc/src/diagrams/designer-main-window.zip
+++ b/doc/src/diagrams/designer-manual/designer-main-window.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-mainwindow-actions.ui b/doc/src/diagrams/designer-manual/designer-mainwindow-actions.ui
index 593a2de..593a2de 100644
--- a/doc/src/diagrams/designer-mainwindow-actions.ui
+++ b/doc/src/diagrams/designer-manual/designer-mainwindow-actions.ui
diff --git a/doc/src/diagrams/designer-palette-brush-editor.zip b/doc/src/diagrams/designer-manual/designer-palette-brush-editor.zip
index 698f271..698f271 100644
--- a/doc/src/diagrams/designer-palette-brush-editor.zip
+++ b/doc/src/diagrams/designer-manual/designer-palette-brush-editor.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-palette-editor.zip b/doc/src/diagrams/designer-manual/designer-palette-editor.zip
index 96646ab..96646ab 100644
--- a/doc/src/diagrams/designer-palette-editor.zip
+++ b/doc/src/diagrams/designer-manual/designer-palette-editor.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-palette-gradient-editor.zip b/doc/src/diagrams/designer-manual/designer-palette-gradient-editor.zip
index 4696516..4696516 100644
--- a/doc/src/diagrams/designer-palette-gradient-editor.zip
+++ b/doc/src/diagrams/designer-manual/designer-palette-gradient-editor.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-palette-pattern-editor.zip b/doc/src/diagrams/designer-manual/designer-palette-pattern-editor.zip
index 7382bad..7382bad 100644
--- a/doc/src/diagrams/designer-palette-pattern-editor.zip
+++ b/doc/src/diagrams/designer-manual/designer-palette-pattern-editor.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-resource-editor.zip b/doc/src/diagrams/designer-manual/designer-resource-editor.zip
index 2c11da4..2c11da4 100644
--- a/doc/src/diagrams/designer-resource-editor.zip
+++ b/doc/src/diagrams/designer-manual/designer-resource-editor.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-widget-box.zip b/doc/src/diagrams/designer-manual/designer-widget-box.zip
index 7ba8f77..7ba8f77 100644
--- a/doc/src/diagrams/designer-widget-box.zip
+++ b/doc/src/diagrams/designer-manual/designer-widget-box.zip
Binary files differ
diff --git a/doc/src/diagrams/designer-manual/rgbController.ui b/doc/src/diagrams/designer-manual/rgbController.ui
new file mode 100644
index 0000000..37c839f
--- /dev/null
+++ b/doc/src/diagrams/designer-manual/rgbController.ui
@@ -0,0 +1,212 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>Form</class>
+ <widget class="QWidget" name="Form">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>400</width>
+ <height>300</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>RGB Controller</string>
+ </property>
+ <layout class="QHBoxLayout" name="horizontalLayout">
+ <item>
+ <layout class="QGridLayout" name="gridLayout">
+ <item row="0" column="0">
+ <widget class="QLabel" name="label">
+ <property name="text">
+ <string>RED</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QSpinBox" name="spinBox">
+ <property name="maximum">
+ <number>255</number>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0">
+ <widget class="QSlider" name="verticalSlider">
+ <property name="maximum">
+ <number>255</number>
+ </property>
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item>
+ <layout class="QGridLayout" name="gridLayout_2">
+ <item row="0" column="0">
+ <widget class="QLabel" name="label_2">
+ <property name="text">
+ <string>GREEN</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QSpinBox" name="spinBox_2">
+ <property name="maximum">
+ <number>255</number>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0">
+ <widget class="QSlider" name="verticalSlider_2">
+ <property name="maximum">
+ <number>255</number>
+ </property>
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item>
+ <layout class="QGridLayout" name="gridLayout_3">
+ <item row="0" column="0">
+ <widget class="QLabel" name="label_3">
+ <property name="text">
+ <string>BLUE</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QSpinBox" name="spinBox_3">
+ <property name="maximum">
+ <number>255</number>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0">
+ <widget class="QSlider" name="verticalSlider_3">
+ <property name="maximum">
+ <number>255</number>
+ </property>
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ <zorder>label</zorder>
+ <zorder>label_2</zorder>
+ <zorder>label_3</zorder>
+ <zorder>spinBox</zorder>
+ <zorder>spinBox_2</zorder>
+ <zorder>spinBox_3</zorder>
+ <zorder>verticalSlider</zorder>
+ <zorder>verticalSlider_2</zorder>
+ <zorder>verticalSlider_3</zorder>
+ <zorder>verticalSlider</zorder>
+ </widget>
+ <resources/>
+ <connections>
+ <connection>
+ <sender>spinBox</sender>
+ <signal>valueChanged(int)</signal>
+ <receiver>verticalSlider</receiver>
+ <slot>setValue(int)</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>55</x>
+ <y>51</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>53</x>
+ <y>233</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>spinBox_2</sender>
+ <signal>valueChanged(int)</signal>
+ <receiver>verticalSlider_2</receiver>
+ <slot>setValue(int)</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>193</x>
+ <y>46</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>186</x>
+ <y>105</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>spinBox_3</sender>
+ <signal>valueChanged(int)</signal>
+ <receiver>verticalSlider_3</receiver>
+ <slot>setValue(int)</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>312</x>
+ <y>38</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>312</x>
+ <y>132</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>verticalSlider</sender>
+ <signal>valueChanged(int)</signal>
+ <receiver>spinBox</receiver>
+ <slot>setValue(int)</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>57</x>
+ <y>86</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>73</x>
+ <y>46</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>verticalSlider_2</sender>
+ <signal>valueChanged(int)</signal>
+ <receiver>spinBox_2</receiver>
+ <slot>setValue(int)</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>187</x>
+ <y>135</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>212</x>
+ <y>44</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>verticalSlider_3</sender>
+ <signal>valueChanged(int)</signal>
+ <receiver>spinBox_3</receiver>
+ <slot>setValue(int)</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>315</x>
+ <y>187</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>349</x>
+ <y>50</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>
diff --git a/doc/src/examples/tablet.qdoc b/doc/src/examples/tablet.qdoc
index 3b2caf3..95acc69 100644
--- a/doc/src/examples/tablet.qdoc
+++ b/doc/src/examples/tablet.qdoc
@@ -48,7 +48,7 @@
\image tabletexample.png
When you use a tablet with Qt applications, \l{QTabletEvent}s are
- genarated. You need to reimplement the
+ generated. You need to reimplement the
\l{QWidget::}{tabletEvent()} event handler if you want to handle
tablet events. Events are generated when the device used for
drawing enters and leaves the proximity of the tablet (i.e., when
diff --git a/doc/src/examples/videographicsitem.qdoc b/doc/src/examples/videographicsitem.qdoc
new file mode 100644
index 0000000..861b587
--- /dev/null
+++ b/doc/src/examples/videographicsitem.qdoc
@@ -0,0 +1,52 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: Qt Software Information (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the either Technology Preview License Agreement or the
+** Beta Release License Agreement.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain
+** additional rights. These rights are described in the Nokia Qt LGPL
+** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+** package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at qt-sales@nokia.com.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+/*!
+ \example video/videographicsitem
+ \title Video Graphics Item Example
+
+ The Video Graphics Item example shows how to implement a QGraphicsItem that displays video on a
+ graphics scene using QtMultimedia's QAbstractVideoSurface.
+
+ \image video-videographicsitem.png
+
+ \sa {Video Widget Example}
+*/
diff --git a/doc/src/examples/videowidget.qdoc b/doc/src/examples/videowidget.qdoc
new file mode 100644
index 0000000..27d5711
--- /dev/null
+++ b/doc/src/examples/videowidget.qdoc
@@ -0,0 +1,187 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: Qt Software Information (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the either Technology Preview License Agreement or the
+** Beta Release License Agreement.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain
+** additional rights. These rights are described in the Nokia Qt LGPL
+** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+** package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at qt-sales@nokia.com.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+/*!
+ \example video/videowidget
+ \title Video Widget Example
+
+ The Video Widget example shows how to implement a video widget using
+ QtMultimedia's QAbstractVideoSurface
+
+ \image video-videowidget.png
+
+ \section1 VideoWidgetSurface Class Definition
+
+ \snippet examples/video/videowidget/videowidgetsurface.h 0
+
+ The VideoWidgetSurface class inherits QAbstractVideoSurface and paints
+ video frames on a QWidget. This is a separate class to VideoWidget as both
+ QAbstractVideoSurface and QWidget inherit QObject.
+
+ In addition to the functions from QAbstractVideoSurface, VideoWidgetSurface
+ has functions for determining the video display rectangle, and painting
+ the video.
+
+ \section1 VideoWidgetSurface Class Implementation
+
+ \snippet examples/video/videowidget/videowidgetsurface.cpp 0
+
+ From the supportedPixelFormats() function we return a list of pixel formats
+ the surface can paint. The order of the list hints at which formats are
+ preferred by the surface. Assuming a 32-bit RGB backbuffer, we'd expect
+ that a 32-bit RGB type with no alpha to be fastest to paint so
+ QVideoFrame::Image_RGB32 is first in the list.
+
+ Since we don't support rendering using any special frame handles we don't
+ return any pixel formats if handleType is not
+ QAbstractVideoBuffer::NoHandle.
+
+ \snippet examples/video/videowidget/videowidgetsurface.cpp 1
+
+ In isFormatSupported() we test if the frame type of a surface format maps
+ to a valid QImage format, that the frame size is not empty, and the handle
+ type is QAbstractVideoBuffer::NoHandle. Note that the
+ QAbstractVideoSurface implementation of isFormatSupported() will verify
+ that the list of supported pixel formats returned by
+ \c supportedPixelFormats(format.handleType()) contains the pixel format and
+ that the size is not empty so a reimplementation wasn't strictly necessary
+ in this case.
+
+ \snippet examples/video/videowidget/videowidgetsurface.cpp 2
+
+ To start our surface we'll extract the image format and size from the
+ selected video format and save it for use in the paint() function. If the
+ image format, or size are invalid then we'll set an error and return false.
+ Otherwise we'll save the format and confirm the surface has been started,
+ by calling QAbstractVideoSurface::start(). Finally since the video size may
+ have changed we'll trigger an update of the widget, and video geometry.
+
+ \snippet examples/video/videowidget/videowidgetsurface.cpp 5
+
+ The updateVideoRect() function calculates the region within the widget the
+ video occupies. The \l {QVideoSurfaceFormat::sizeHint()}{size hint} of the
+ video format gives a suggested size for the video calculated from the
+ \l {QVideoSurfaceFormat::viewport()}{viewport} and
+ \l {QVideoSurfaceFormat::pixelAspectRatio()}{pixel aspect ratio}. If the
+ suggested size fits within the widget then we create a new rect of that
+ size in the center of the widget. Otherwise we shrink the size maintaining
+ the aspect ratio so that it does fit.
+
+ \snippet examples/video/videowidget/videowidgetsurface.cpp 4
+
+ We can't paint from outside a paint event, so when a new frame is received
+ in present() we save a reference to it and force an immediate repaint of
+ the video region. We retain the saved reference to the frame after the
+ repaint so that the widget can be repainted between frame changes if
+ necessary.
+
+ If the format of the frame doesn't match the surface format we can't paint
+ it or very likely any future frames. So we set an
+ \l {QAbstractVideoSurface::UnsupportedFormatError}{UnsupportedFormatError}
+ on our surface and stop it immediately.
+
+ \snippet examples/video/videowidget/videowidgetsurface.cpp 6
+
+ The paint() function is called by the video widget to paint the current
+ video frame. Before we draw the frame first we'll check the format for
+ the scan line direction and if the scan lines are arranged from bottom to
+ top we'll flip the painter so the frame isn't drawn upside down. Then
+ using the image format information saved in the start() function we'll
+ construct a new QImage from the current video frame, and draw it to the
+ the widget.
+
+ \snippet examples/video/videowidget/videowidgetsurface.cpp 3
+
+ When the surface is stopped we need to release the current frame and
+ invalidate the video region. Then we confirm the surface has been
+ stopped by calling QAbstractVideoSurface::stop() which sets the started
+ state to false and finally we update so the video widget so paints over
+ the last frame.
+
+ \section1 VideoWidget Class Definition
+
+ The VideoWidget class uses the VideoWidgetSurface class to implement a
+ video widget.
+
+ \snippet examples/video/videowidget/videowidget.h 0
+
+ The VideoWidget QWidget implementation is minimal with just the sizeHint(),
+ paintEvent(), and resizeEvent() functions in addition to the constructor,
+ destructor and an instance of VideoWidgetSurface.
+
+ \section1 VideoWidget Class Implementation
+
+ \snippet examples/video/videowidget/videowidget.cpp 0
+
+ In the VideoWidget constructor we set some flags to speed up re-paints a
+ little. Setting the Qt::WA_NoSystemBackground flag and disabling automatic
+ background fills will stop Qt from a painting a background that'll be
+ completely obscured by the video. The Qt::WA_PaintOnScreen flag will
+ allow us to paint to the screen instead of the back buffer where supported.
+
+ Next we set the background color to black, so that any borders around the
+ video are filled in black rather the default background color.
+
+ Finally we construct an instance of the VideoWidgetSurface class.
+
+ \snippet examples/video/videowidget/videowidget.cpp 1
+
+ In the destructor we simply delete the VideoWidgetSurface instance.
+
+ \snippet examples/video/videowidget/videowidget.cpp 2
+
+ We get the size hint for the widget from the video format of the surface
+ which is calculated from viewport and pixel aspect ratio of the video
+ format.
+
+ \snippet examples/video/videowidget/videowidget.cpp 3
+
+ When the video widget receives a paint event we first check if the surface
+ is started, if not then we simply fill the widget with the background
+ color. If it is then we draw a border around the video region clipped
+ by the paint region, before calling paint on the video surface to draw the
+ current frame.
+
+ \snippet examples/video/videowidget/videowidget.cpp 4
+
+ The resizeEvent() function is reimplemented to trigger an update of the
+ video region when the widget is resized.
+*/
diff --git a/doc/src/getting-started/demos.qdoc b/doc/src/getting-started/demos.qdoc
index 1eac06f..528494b 100644
--- a/doc/src/getting-started/demos.qdoc
+++ b/doc/src/getting-started/demos.qdoc
@@ -46,7 +46,7 @@
\previouspage Qt Examples
\contentspage How to Learn Qt
- \nextpage What's New in Qt 4.5
+ \nextpage What's New in Qt 4.6
This is the list of demonstrations in Qt's \c demos directory.
These are larger and more complicated programs than the
diff --git a/doc/src/getting-started/examples.qdoc b/doc/src/getting-started/examples.qdoc
index 253a4e4..b0d6bf6 100644
--- a/doc/src/getting-started/examples.qdoc
+++ b/doc/src/getting-started/examples.qdoc
@@ -796,6 +796,13 @@
\o \l{multimedia/audio/audioinput}{Audio Input}
\endlist
+ \section1 Video Output
+
+ \list
+ \o \l{video/videowidget}{Video Widget}\raisedaster
+ \o \l{video/videographicsitem}{Video Graphics Item}
+ \endlist
+
\section1 Phonon
The Phonon Multimedia Framework brings multimedia support to Qt applications.
diff --git a/doc/src/images/gestures.png b/doc/src/images/gestures.png
new file mode 100644
index 0000000..6bc5632
--- /dev/null
+++ b/doc/src/images/gestures.png
Binary files differ
diff --git a/doc/src/images/video-videographicsitem.png b/doc/src/images/video-videographicsitem.png
new file mode 100644
index 0000000..e333c54
--- /dev/null
+++ b/doc/src/images/video-videographicsitem.png
Binary files differ
diff --git a/doc/src/images/video-videowidget.png b/doc/src/images/video-videowidget.png
new file mode 100644
index 0000000..a3c7bcb
--- /dev/null
+++ b/doc/src/images/video-videowidget.png
Binary files differ
diff --git a/doc/src/images/whatsnewanimatedtiles.png b/doc/src/images/whatsnewanimatedtiles.png
new file mode 100644
index 0000000..7152ee2
--- /dev/null
+++ b/doc/src/images/whatsnewanimatedtiles.png
Binary files differ
diff --git a/doc/src/index.qdoc b/doc/src/index.qdoc
index 4d92157..746a2de 100644
--- a/doc/src/index.qdoc
+++ b/doc/src/index.qdoc
@@ -76,7 +76,7 @@
<ul>
<li><a href="installation.html">Installation</a> and <a href="how-to-learn-qt.html">First Steps with Qt</a></li>
<li><a href="tutorials.html">Tutorials</a> and <a href="examples.html">Examples</a></li>
- <li><a href="demos.html">Demonstrations</a> and <a href="qt4-5-intro.html"><b>New in Qt 4.5</b></a></li>
+ <li><a href="demos.html">Demonstrations</a> and <a href="qt4-6-intro.html"><b>New in Qt 4.6</b></a></li>
</ul>
</td>
<td valign="top">
diff --git a/doc/src/qt4-intro.qdoc b/doc/src/qt4-intro.qdoc
index 5c2642e..3258586 100644
--- a/doc/src/qt4-intro.qdoc
+++ b/doc/src/qt4-intro.qdoc
@@ -78,6 +78,28 @@
The following features have been added to Qt since the first release of Qt 4:
+ In Qt 4.5:
+ \list
+ \o The WebKit browser engine included with Qt has been
+ upgraded to the latest upstream (trunk) version of WebKit,
+ bringing the latest features and improvements to Qt applications.
+ \o Qt for Mac OS X has been substantially rewritten to use
+ Apple's Cocoa API, enabling Qt applications to be deployed on
+ 64-bit Macintosh hardware.
+ \o The QtXmlPatterns module has been extended to cover XSLT, a
+ transformation language for XML documents.
+ \o Qt Script introduced its debugger,
+ providing error reporting for scripts, and to let users track down
+ bugs in their own scripts.
+ \o Qt 4.5 includes support for writing rich text documents as
+ OpenDocument files via the newly-introduced QTextDocumentWriter
+ class.
+ \o Qt Linguist can load and edit multiple translation
+ files simultaneously.
+ \o Support for ARGB top-level widgets (i.e., translucent
+ windows).
+ \endlist
+
In Qt 4.4:
\list
\o \l{QtWebkit Module}{Qt WebKit integration}, making it possible for developers
@@ -87,8 +109,8 @@
\o \l{QtXmlPatterns Module}{XQuery and XPath} support, providing facilities for
XML processing beyond that supported by the QtXml module.
\o Support for embedded widgets in \l{Graphics View} scenes.
- \o The \l{QtConcurrent} framework for concurrent programming using Qt paradigms and
- threading features.
+ \o The \l{Threading and Concurrent Programming}{QtConcurrent framework} for
+ concurrent programming using Qt paradigms and threading features.
\o An \l{QtHelp Module}{improved help system} that can be used in conjunction
with Qt Assistant or as an independent help resource manager.
\o Printing system improvements, including the QPrinterInfo, QPrintPreviewWidget
@@ -435,6 +457,157 @@
*/
/*!
+ \page qt4-6-intro.html
+ \title What's New in Qt 4.6
+
+ Qt 4.6 provides many improvements and enhancements over the
+ previous releases in the Qt 4 series. This document covers the
+ most important features in this release, separated by category.
+
+ A comprehensive list of changes between Qt 4.5 and Qt 4.6 is
+ included in the \c changes-4.6.0 file
+ \l{http://qt.nokia.com/developer/changes/changes-4.6.0}{available
+ online}. A \l{Known Issues in %VERSION%}{list of known issues}
+ for this release is also available.
+
+ Changes between this release and the previous release are provided
+ in the \c{changes-%VERSION%} file (also
+ \l{http://qt.nokia.com/developer/changes/changes-%VERSION%}{available online}).
+
+ A list of other Qt 4 features can be found on the \bold{\l{What's
+ New in Qt 4}} page.
+
+ \bold{Highlights}
+
+ \tableofcontents
+
+ \section1 Animation Framework
+
+ The animation framework helps build highly animated,
+ high-performance GUIs without the hassle of managing complex
+ structures, timers, and easing curves, not to mention the large
+ state graphs that all animated GUIs tend to be full of.
+
+ The framework makes it easy to animate \l{QObject}s, including
+ QWidgets, by allowing Qt properties to be animated. It also allows
+ creating custom animations and interpolation functions. Graphics
+ views are not left out--one can animate \l{QGraphicsWidget}s,
+ which inherits from QObject (and thereby enables properties).
+
+ Animations are controlled using easing curves and can be grouped
+ together. This enables animations of arbitrary complexity.
+
+ The API is easy to grasp with functions such as start(), stop(),
+ pause(), and currentTime(). Here is an image from one of the
+ examples that come with the framework:
+
+ \image whatsnewanimatedtiles.png
+
+ The animation framework also plugs into the new Qt Statemachine by
+ allowing an animation to be played when transitions are triggered.
+ The state machine framework is introduced in 4.6 and is described
+ below.
+
+ \section1 State Machine Framework
+
+ The state machine framework provides a robust state chart
+ implementation based on Harel statecharts and SCXML. Qt's API lets
+ you construct such state graphs and execute them. The key benefits
+ of a state machine are:
+
+ \list
+ \o Simplify complex application semantics.
+ \o Use of states to reduce code bloat.
+ \o Use states to improve maintainability.
+ \o Makes event-driven programming robust and more
+ reusable.
+ \endlist
+
+ It is especially the last item here that makes using a state
+ machine worthwhile. A key characteristic of event-driven systems
+ (such as Qt applications) is that behavior often depends not only
+ on the last or current event, but also the events that preceded
+ it. With statecharts, this information is easy to express.
+
+ The framework fits neatly into Qt by allowing transitions to
+ trigger on signals and \l{QEvent}s. By inserting animations into
+ the state machine, it is also easier to use the framework for
+ animating GUIs, for instance.
+
+ \section1 Multi-touch & Gestures
+
+ The new multi-touch and gestures support enables user interaction
+ with more than one finger, and combines sequential touch inputs to
+ a 'gesture'.
+
+ \image gestures.png
+
+ The main benefits of this new functionality are:
+
+ \list
+ \o Allow users to interact with applications in better ways.
+ \o Simplify finger-based interaction with UI components.
+ \o Allowing common basic gestures and multi-touch
+ gestures.
+ \o Enable extensibility.
+ \endlist
+
+ \section1 DOM access API
+
+ Web pages and XML both have very complex document object models.
+ The W3C selector API provides a very simple way to access and
+ manipulate such structures. This API makes it intuitive to access
+ DOM, helps reuse CSS selector knowledge, and gives little
+ maintenance or footprint overhead.
+
+ \code
+ QWebElement document = frame->documentElement();
+ QList<QWebElement> allSpans = document.findAll("span");
+ QList<QWebElement> introSpans = document.findAll("p.intro span");
+ \endcode
+
+ \section1 Qt3D enablers
+
+ As more of Qt, and more of the applications built on Qt go 3D,
+ API's should be provided to simplify this. Mainly, the new API
+ aims to make it more easy to create 3D applications with OpenGL.
+ It will also unify the Qt OpenGL codebase, and enable
+ cross-platform 3D codebase.
+
+ The main features of the Qt3D enablers are currently: Math
+ primitives for matrix multiplication, vectors, quaternions
+ (client-side), and API for vertex and fragment shaders, GLSL/ES.
+ Future research will, among other things include stencils,
+scissors, vertex buffers and arrays, texture manipulation, and
+ geometry shaders.
+
+ \section1 Performance Optimizations
+
+ As always, Qt continuously strive to optimize its performance.
+ For this release, we have:
+
+ \list
+ \o Rewritten the QGraphicsView rendering algorithm.
+ \o Made QPixmapCache support efficient Key datastructure.
+ \o Reduced overhead in QNetworkAccessManager.
+ \o Added the QContiguousCache class, which provides efficient caching of
+ contiguous data.
+ \o Removed Win9x support.
+ \endlist
+
+ \section1 Multimedia Audio Services
+
+ Qt 4.6 comes with new classes for handling audio. These classes
+ provide low-level access to the system's audio system. By
+ specifying the audio format (QAudioFormat) and supplying audio
+ data through a QIODevice, you get direct access to the
+ functionality of the sound device. The API also comes with
+ functions to query audio devices for which audio formats they
+ support.
+
+*/
+
+/*
\page qt4-5-intro.html
\title What's New in Qt 4.5
@@ -563,7 +736,7 @@
\section1 Improved Network Proxy Support
Qt's networking classes have been updated with
- \l{Network Programming#Support for Network Proxies}{improved proxy support}.
+ \l{QtNetwork Module#Support for Network Proxies}{improved proxy support}.
This includes improved integration with system proxy settings and the added
ability to handle non-trivial proxy cases.
diff --git a/doc/src/snippets/code/src_gui_effects_qgraphicseffect.cpp b/doc/src/snippets/code/src_gui_effects_qgraphicseffect.cpp
new file mode 100644
index 0000000..6265c80
--- /dev/null
+++ b/doc/src/snippets/code/src_gui_effects_qgraphicseffect.cpp
@@ -0,0 +1,33 @@
+//! [0]
+MyGraphicsOpacityEffect::draw(QPainter *painter, QGraphicsEffectSource *source)
+{
+ // Fully opaque; draw directly without going through a pixmap.
+ if (qFuzzyCompare(m_opacity, 1)) {
+ source->draw(painter);
+ return;
+ }
+ ...
+}
+//! [0]
+
+//! [1]
+MyGraphicsEffect::draw(QPainter *painter, QGraphicsEffectSource *source)
+{
+ ...
+ QPoint offset;
+ if (source->isPixmap()) {
+ // No point in drawing in device coordinates (pixmap will be scaled anyways).
+ const QPixmap pixmap = source->pixmap(Qt::LogicalCoordinates, &offset);
+ ...
+ painter->drawPixmap(offset, pixmap);
+ } else {
+ // Draw pixmap in device coordinates to avoid pixmap scaling;
+ const QPixmap pixmap = source->pixmap(Qt::DeviceCoordinates, &offset);
+ painter->setWorldTransform(QTransform());
+ ...
+ painter->drawPixmap(offset, pixmap);
+ }
+ ...
+}
+//! [1]
+