include(compat.qdocconf)
include(macros.qdocconf)
include(qt-cpp-ignore.qdocconf)
include(qt-html-templates.qdocconf)
include(qt-defines.qdocconf)

project                 = Qt Designer
description             = Qt Designer Manual
url                     = http://doc.qt.nokia.com/4.7/

indexes                 = $QT_BUILD_TREE/doc-build/html-qt/qt.index

qhp.projects            = Designer

qhp.Designer.file                = designer.qhp
qhp.Designer.namespace           = com.trolltech.designer.474
qhp.Designer.virtualFolder       = qdoc
qhp.Designer.indexTitle          = Qt Designer Manual
qhp.Designer.extraFiles          = images/bg_l.png \
                             	    images/bg_l_blank.png \
									images/bg_ll_blank.png \
									images/bg_ul_blank.png \
									images/header_bg.png \
                             	    images/bg_r.png \
									images/box_bg.png \
									images/breadcrumb.png \
									images/bullet_gt.png \
                             	    images/bullet_dn.png \
									images/bullet_sq.png \
                             	    images/bullet_up.png \
									images/arrow_down.png \
                             	    images/feedbackground.png \
                             	    images/horBar.png \
									images/page.png \
									images/page_bg.png \
									images/sprites-combined.png \
									images/spinner.gif \
                             	    images/stylesheet-coffee-plastique.png \
                             	    images/taskmenuextension-example.png \
                             	   images/coloreditorfactoryimage.png \
                             	   images/dynamiclayouts-example.png \
									scripts/functions.js \
									scripts/jquery.js \
									scripts/narrow.js \
									scripts/superfish.js \
									style/narrow.css \
									style/superfish.css \
									style/style_ie6.css \
									style/style_ie7.css \
									style/style_ie8.css \
                             	    style/style.css

qhp.Designer.filterAttributes    = qt 4.7.4 tools designer
qhp.Designer.customFilters.Designer.name = Qt Designer Manual
qhp.Designer.customFilters.Designer.filterAttributes = qt tools designer
qhp.Designer.subprojects         = manual examples
qhp.Designer.subprojects.manual.title = Manual
qhp.Designer.subprojects.manual.indexTitle = Qt Designer Manual
qhp.Designer.subprojects.manual.selectors = fake:page
qhp.Designer.subprojects.examples.title = Examples
qhp.Designer.subprojects.examples.indexTitle = Qt Examples
qhp.Designer.subprojects.examples.selectors = fake:example
qhp.Designer.subprojects.examples.sortPages = true

language                = Cpp

sources                 = $QT_SOURCE_TREE/doc/src/development/designer-manual.qdoc \
                          $QT_SOURCE_TREE/doc/src/examples/calculatorbuilder.qdoc \
                          $QT_SOURCE_TREE/doc/src/examples/calculatorform.qdoc \
                          $QT_SOURCE_TREE/doc/src/examples/customwidgetplugin.qdoc \
                          $QT_SOURCE_TREE/doc/src/examples/taskmenuextension.qdoc \
                          $QT_SOURCE_TREE/doc/src/examples/containerextension.qdoc \
                          $QT_SOURCE_TREE/doc/src/examples/worldtimeclockbuilder.qdoc \
                          $QT_SOURCE_TREE/doc/src/examples/worldtimeclockplugin.qdoc

sources.fileextensions  = "*.cpp *.qdoc"

exampledirs             = $QT_SOURCE_TREE \
                          $QT_SOURCE_TREE/examples \
                          $QT_SOURCE_TREE/doc/src

imagedirs               = $QT_SOURCE_TREE/doc/src/images \
			  $QT_SOURCE_TREE/doc/src/template/images
outputdir               = $QT_BUILD_TREE/doc-build/html-designer
base                    = file:$QT_BUILD_TREE/doc-build/html-designer
