From 884c0f6bf0246c128e3b6786f00fe5de3f3f9f6e Mon Sep 17 00:00:00 2001 From: Jerome Pasion Date: Fri, 30 Sep 2011 16:08:08 +0200 Subject: [PATCH] Doc: Adding qtdeclarative documentation configuration files. We need a modularized Qt Quick documentation package that only contains Qt Quick 2. Add a make target for the documentation. Copied Qt 5's offline style as a starting CSS template. Change-Id: I2298f23c7695ebbe38f43b89626431a2e8059a9a Reviewed-on: http://codereview.qt-project.org/5891 Reviewed-by: Qt Sanity Bot Reviewed-by: Alan Alpert --- doc/config/qtdeclarative_doc.pri | 13 + doc/config/qtquick-dita.qdocconf | 24 ++ doc/config/qtquick.qdocconf | 84 ++++ doc/config/style/qtquick.css | 681 +++++++++++++++++++++++++++++++ qtdeclarative.pro | 2 + 5 files changed, 804 insertions(+) create mode 100644 doc/config/qtdeclarative_doc.pri create mode 100644 doc/config/qtquick-dita.qdocconf create mode 100644 doc/config/qtquick.qdocconf create mode 100755 doc/config/style/qtquick.css diff --git a/doc/config/qtdeclarative_doc.pri b/doc/config/qtdeclarative_doc.pri new file mode 100644 index 0000000000..51f2fceb7a --- /dev/null +++ b/doc/config/qtdeclarative_doc.pri @@ -0,0 +1,13 @@ +OTHER_FILES += \ + $$PWD/qtquick.qdocconf \ + $$PWD/qtquick-dita.qdocconf + +online_docs.commands = qdoc3 $$PWD/qtquick.qdocconf + +dita_docs.commands = qdoc3 $$PWD/qtquick-dita.qdocconf + +docs.depends = dita_docs online_docs +QMAKE_EXTRA_TARGETS = docs dita_docs online_docs +QMAKE_CLEAN += \ + "-r $$PWD/html" \ + "-r $$PWD/ditaxml" \ No newline at end of file diff --git a/doc/config/qtquick-dita.qdocconf b/doc/config/qtquick-dita.qdocconf new file mode 100644 index 0000000000..e259a2fa74 --- /dev/null +++ b/doc/config/qtquick-dita.qdocconf @@ -0,0 +1,24 @@ +# Name of the project. +project = Qt Quick + +# Directories in which to search for files to document and images. +# By default set to the root directory of the project for sources +# and headers and qdoc will therefore generate output for each file. +# Images should be placed in /dic/images and examples in +# /examples. +# Paths are relative to the location of this file. +exampledirs += ../src/examples +headerdirs += ../src +sourcedirs += ../src + + + +#Do not change the variables after this line unless you know what you are doing. + +outputdir = ../ditaxml +outputformats = DITAXML + +examples.fileextensions = "*.cpp *.h *.js *.svg *.xml *.ui *.qml" +examples.imageextensions = "*.png *.jpeg *.jpg *.gif *.mng" +headers.fileextensions = "*.h *.ch *.h++ *.hh *.hpp *.hxx" +sources.fileextensions = "*.cpp *.qdoc *.mm *.qml" diff --git a/doc/config/qtquick.qdocconf b/doc/config/qtquick.qdocconf new file mode 100644 index 0000000000..3f8988e549 --- /dev/null +++ b/doc/config/qtquick.qdocconf @@ -0,0 +1,84 @@ +# Name of the project. +project = Qt Quick +description = Qt Quick Documentation + +# Directories in which to search for files to document and images. +# By default set to the root directory of the project for sources +# and headers and qdoc will therefore generate output for each file. +# Images should be placed in /dic/images and examples in +# /examples. +# Paths are relative to the location of this file. + +exampledirs += ../src/examples \ + ../.. \ + ../../examples + +headerdirs += ../src \ + ../../src + +imagedirs += ../src/images \ + +sourcedirs += ../src \ + ../../src + +excludedirs += ../src/qtquick1 \ + ../../src/qtquick1 + +#indexes = $QT5DOC/doc/html/qt.index + +# The following parameters are for creating a qhp file, the qhelpgenerator +# program can convert the qhp file into a qch file which can be opened in +# Qt Assistant and/or Qt Creator. + +# Defines the name of the project. You cannot use operators (+, =, -) in +# the name. Properties for this project are set using a qhp..property +# format. +qhp.projects = qtquick + +# Sets the name of the output qhp file. +qhp.qtquick.file = qtquick.qhp + +# Namespace for the output file. This namespace is used to distinguish between +# different documentation files in Creator/Assistant. Normal format for MP +# projects should be: com.nokia.mp..version with version being +# a number containing a major, minor and revision element. E.g. version 1.0 +# becomes 100. +qhp.qtquick.namespace = qtquick.200 + +# Title for the package, will be the main title for the package in +# Assistant/Creator. +qhp.qtquick.indexTitle = Qt Quick Documentation + +# Extra files to add to the output which are not linked to from anywhere +# using a qdoc \l command. +qhp.qtquick.extraFiles = style/qtquick.css \ + index.html + +# Only update the name of the project for the next variables. +qhp.qtquick.virtualFolder = qdoc +qhp.qtquick.subprojects = classes +qhp.qtquick.subprojects.classes.title = Classes +qhp.qtquick.subprojects.classes.selectors = class fake:headerfile +qhp.qtquick.subprojects.classes.sortPages = true + + + +# Do NOT change the variables after this line unless you know what you are doing. + +outputdir = ../html +outputformats = HTML + +examples.fileextensions = "*.cpp *.h *.js *.svg *.xml *.ui *.qml" +examples.imageextensions = "*.png *.jpeg *.jpg *.gif *.mng" +headers.fileextensions = "*.h *.ch *.h++ *.hh *.hpp *.hxx" +sources.fileextensions = "*.cpp *.qdoc *.mm *.qml" + +HTML.nobreadcrumbs = "true" + +HTML.templatedir = . +HTML.stylesheets = style/qtquick.css + +HTML.headerstyles = " \n" +HTML.endheader = "\n\n" + +HTML.footer = "
Copyright (c) 2011 Nokia Corporation and/or its subsidiaries. All rights reserved.
\n" diff --git a/doc/config/style/qtquick.css b/doc/config/style/qtquick.css new file mode 100755 index 0000000000..bdd0ea3d29 --- /dev/null +++ b/doc/config/style/qtquick.css @@ -0,0 +1,681 @@ +@media screen +{ + +/* basic elements */ + html + { + color: #000000; + background: #FFFFFF; + } + table + { + border-collapse: collapse; + border-spacing: 0; + } + fieldset, img + { + border: 0; + max-width:100%; + } + address, caption, cite, code, dfn, em, strong, th, var, optgroup + { + font-style: inherit; + font-weight: inherit; + } + del, ins + { + text-decoration: none; + } + ol li + { + list-style: decimal; + } + ul li + { + list-style: none; + } + caption, th + { + text-align: left; + } + h1, h2, h3, h4, h5, h6 + { + font-size: 100%; + } + q:before, q:after + { + content: ''; + } + abbr, acronym + { + border: 0; + font-variant: normal; + } + sup, sub + { + vertical-align: baseline; + } + tt, .qmlreadonly span, .qmldefault span + { + word-spacing:0.5em; + } + legend + { + color: #000000; + } + strong + { + font-weight: bold; + } + em + { + font-style: italic; + } + + body + { + margin: 0px; + font-family: sans-serif; + line-height: normal + } + a + { + color: #00732F; + text-decoration: none; + } + hr + { + background-color: #E6E6E6; + border: 1px solid #E6E6E6; + height: 1px; + width: 100%; + text-align: left; + margin: 1.5em 0 1.5em 0; + } + + pre + { + border: 1px solid #DDDDDD; + -moz-border-radius: 0.7em 0.7em 0.7em 0.7em; + -webkit-border-radius: 0.7em 0.7em 0.7em 0.7em; + border-radius: 0.7em 0.7em 0.7em 0.7em; + margin: 0 1.5em 1em 1em; + padding: 1em 1em 1em 1em; + overflow-x: auto; + } + table, pre + { + -moz-border-radius: 0.7em 0.7em 0.7em 0.7em; + -webkit-border-radius: 0.7em 0.7em 0.7em 0.7em; + border-radius: 0.7em 0.7em 0.7em 0.7em; + background-color: #F6F6F6; + border: 1px solid #E6E6E6; + border-collapse: separate; + margin-bottom: 2.5em; + } + pre { + font-size: 90%; + display: block; + overflow:hidden; + } + thead + { + margin-top: 0.5em; + font-weight: bold + } + th + { + padding: 0.5em 1.5em 0.5em 1em; + background-color: #E1E1E1; + border-left: 1px solid #E6E6E6; + } + td + { + padding: 0.25em 1.5em 0.25em 1em; + } + + td.rightAlign + { + padding: 0.25em 0.5em 0.25em 1em; + } + table tr.odd + { + border-left: 1px solid #E6E6E6; + background-color: #F6F6F6; + color: black; + } + table tr.even + { + border-left: 1px solid #E6E6E6; + background-color: #ffffff; + color: #202020; + } + + div.float-left + { + float: left; margin-right: 2em + } + div.float-right + { + float: right; margin-left: 2em + } + + span.comment + { + color: #008B00; + } + span.string, span.char + { + color: #000084; + } + span.number + { + color: #a46200; + } + span.operator + { + color: #202020; + } + span.keyword + { + color: #840000; + } + span.name + { + color: black + } + span.type + { + font-weight: bold + } + span.type a:visited + { + color: #0F5300; + } + span.preprocessor + { + color: #404040 + } +/* end basic elements */ + +/* font style elements */ + .heading + { + font-weight: bold; + font-size: 125%; + } + .subtitle + { + font-size: 110% + } + .small-subtitle + { + font-size: 100% + } + .red + { + color:red; + } +/* end font style elements */ + +/* global settings*/ + .header, .footer + { + display: block; + clear: both; + overflow: hidden; + } +/* end global settings*/ + +/* header elements */ + .header .qtref + { + color: #00732F; + font-weight: bold; + font-size: 130%; + } + + .header .content + { + margin-left: 5px; + margin-top: 5px; + margin-bottom: 0.5em; + } + + .header .breadcrumb + { + font-size: 90%; + padding: 0.5em 0 0.5em 1em; + margin: 0; + background-color: #fafafa; + height: 1.35em; + border-bottom: 1px solid #d1d1d1; + } + + .header .breadcrumb ul + { + margin: 0; + padding: 0; + } + + .header .content + { + word-wrap: break-word; + } + + .header .breadcrumb ul li + { + float: left; + background: url(../images/breadcrumb.png) no-repeat 0 3px; + padding-left: 1.5em; + margin-left: 1.5em; + } + + .header .breadcrumb ul li.last + { + font-weight: normal; + } + + .header .breadcrumb ul li a + { + color: #00732F; + } + + .header .breadcrumb ul li.first + { + background-image: none; + padding-left: 0; + margin-left: 0; + } + + .header .content ol li { + background: none; + margin-bottom: 1.0em; + margin-left: 1.2em; + padding-left: 0 + } + + .header .content li + { + background: url(../images/bullet_sq.png) no-repeat 0 5px; + margin-bottom: 1em; + padding-left: 1.2em; + } + +/* end header elements */ + +/* content elements */ + .content h1 + { + font-weight: bold; + font-size: 130% + } + + .content h2 + { + font-weight: bold; + font-size: 120%; + width: 100%; + } + .content h3 + { + font-weight: bold; + font-size: 110%; + width: 100%; + } + .content table p + { + margin: 0 + } + .content ul + { + padding-left: 2.5em; + } + .content li + { + padding-top: 0.25em; + padding-bottom: 0.25em; + } + .content ul img { + vertical-align: middle; + } + + .content a:visited + { + color: #4c0033; + text-decoration: none; + } + + .content a:visited:hover + { + color: #4c0033; + text-decoration: underline; + } + + a:hover + { + color: #4c0033; + text-decoration: underline; + } + descr p a + { + text-decoration: underline; + } + + .descr p a:visited + { + text-decoration: underline; + } + + .alphaChar{ + width:95%; + background-color:#F6F6F6; + border:1px solid #E6E6E6; + -moz-border-radius: 7px 7px 7px 7px; + border-radius: 7px 7px 7px 7px; + -webkit-border-radius: 7px 7px 7px 7px; + font-size:12pt; + padding-left:10px; + margin-top:10px; + margin-bottom:10px; + } + .flowList{ + /*vertical-align:top;*/ + /*margin:20px auto;*/ + + column-count:3; + -webkit-column-count:3; + -moz-column-count:3; +/* + column-width:100%; + -webkit-column-width:200px; + -col-column-width:200px; +*/ + column-gap:41px; + -webkit-column-gap:41px; + -moz-column-gap:41px; + + column-rule: 1px dashed #ccc; + -webkit-column-rule: 1px dashed #ccc; + -moz-column-rule: 1px dashed #ccc; + } + + .flowList dl{ + } + .flowList dd{ + /*display:inline-block;*/ + margin-left:10px; + min-width:250px; + line-height: 1.5; + min-width:100%; + min-height:15px; + } + + .flowList dd a{ + } + + .mainContent + { + padding-left:5px; + } + + .content .flowList p{ + padding:0px; + } + + .content .alignedsummary + { + margin: 15px; + } + + + .qmltype + { + text-align: center; + font-size: 120%; + } + .qmlreadonly + { + padding-left: 5px; + float: right; + color: #254117; + } + + .qmldefault + { + padding-left: 5px; + float: right; + color: red; + } + + .qmldoc + { + } + + .generic .alphaChar{ + margin-top:5px; + } + + .generic .odd .alphaChar{ + background-color: #F6F6F6; + } + + .generic .even .alphaChar{ + background-color: #FFFFFF; + } + + .memItemRight{ + padding: 0.25em 1.5em 0.25em 0; + } + .highlightedCode + { + margin: 1.0em; + } + .annotated td { + padding: 0.25em 0.5em 0.25em 0.5em; + } + + .toc + { + font-size: 80% + } + + .header .content .toc ul + { + padding-left: 0px; + } + + .content .toc h3 { + border-bottom: 0px; + margin-top: 0px; + } + + .content .toc h3 a:hover { + color: #00732F; + text-decoration: none; + } + + .content .toc .level2 + { + margin-left: 1.5em; + } + + .content .toc .level3 + { + margin-left: 3.0em; + } + + .content ul li + { + background: url(../images/bullet_sq.png) no-repeat 0 0.7em; + padding-left: 1em + } + + .content .toc li + { + background: url(../images/bullet_dn.png) no-repeat 0 5px; + padding-left: 1em + } + + .relpage + { + -moz-border-radius: 7px 7px 7px 7px; + -webkit-border-radius: 7px 7px 7px 7px; + border-radius: 7px 7px 7px 7px; + border: 1px solid #DDDDDD; + padding: 25px 25px; + clear: both; + } + .relpage ul + { + float: none; + padding: 1.5em; + } + + h3.fn, span.fn + { + -moz-border-radius:7px 7px 7px 7px; + -webkit-border-radius:7px 7px 7px 7px; + border-radius:7px 7px 7px 7px; + background-color: #F6F6F6; + border-width: 1px; + border-style: solid; + border-color: #E6E6E6; + font-weight: bold; + word-spacing:3px; + padding:3px 5px; + } + + .functionIndex { + font-size:12pt; + word-spacing:10px; + margin-bottom:10px; + background-color: #F6F6F6; + border-width: 1px; + border-style: solid; + border-color: #E6E6E6; + -moz-border-radius: 7px 7px 7px 7px; + -webkit-border-radius: 7px 7px 7px 7px; + border-radius: 7px 7px 7px 7px; + width:100%; + } + + .centerAlign + { + text-align:center; + } + + .rightAlign + { + text-align:right; + } + + .leftAlign + { + text-align:left; + } + + .topAlign{ + vertical-align:top + } + + .functionIndex a{ + display:inline-block; + } + +/* end content elements */ +/* footer elements */ + + .footer + { + color: #393735; + font-size: 0.75em; + text-align: center; + padding-top: 1.5em; + padding-bottom: 1em; + background-color: #E6E7E8; + margin: 0; + } + .footer p + { + margin: 0.25em + } + .small + { + font-size: 0.5em; + } +/* end footer elements */ + + .item { + float: left; + position: relative; + width: 100%; + overflow: hidden; + } + + + .item .primary { + margin-right: 220px; + position: relative; + } + + .item hr { + margin-left: -220px; + } + + .item .secondary { + float: right; + width: 200px; + position: relative; + } + + .item .cols { + clear: both; + display: block; + } + + .item .cols .col { + float: left; + margin-left: 1.5%; + } + + .item .cols .col.first { + margin-left: 0; + } + + .item .cols.two .col { + width: 45%; + } + + .item .box { + margin: 0 0 10px 0; + } + + .item .box h3 { + margin: 0 0 10px 0; + } + + .cols.unclear { + clear:none; + } +} + +/* end of screen media */ + +/* start of print media */ + +@media print +{ + input, textarea, .header, .footer, .toolbar, .feedback, .wrapper .hd, .wrapper .bd .sidebar, .wrapper .ft, #feedbackBox, #blurpage, .toc, .breadcrumb, .toolbar, .floatingResult + { + display: none; + background: none; + } + .content + { + background: none; + display: block; + width: 100%; margin: 0; float: none; + } +} +/* end of print media */ diff --git a/qtdeclarative.pro b/qtdeclarative.pro index 084a7200c5..306b7a2002 100644 --- a/qtdeclarative.pro +++ b/qtdeclarative.pro @@ -24,3 +24,5 @@ SUBDIRS += module_qtdeclarative_src \ module_qtdeclarative_tools \ module_qtdeclarative_examples \ module_qtdeclarative_tests \ + +include(doc/config/qtdeclarative_doc.pri) \ No newline at end of file