Commit 88e29feb authored by Leena Miettinen's avatar Leena Miettinen
Browse files

Doc: restructure doc according to developer workflow



Add and remove illustrations.
Add landing pages.

Change-Id: I927d62aee9dc43814ef7f4d7424a83eee2af156b
Reviewed-by: default avatarErik Verbruggen <erik.verbruggen@nokia.com>
parent aeebb26e
......@@ -27,9 +27,9 @@
/*!
\contentspage index.html
\previouspage creator-known-issues.html
\previouspage creator-glossary.html
\page technical-support.html
\nextpage creator-glossary.html
\nextpage creator-acknowledgements.html
\title Technical Support
......
/****************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
**
** 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.
**
** If you have questions regarding the use of this file, please contact
** Nokia at qt-info@nokia.com.
**
****************************************************************************/
// **********************************************************************
// NOTE: the sections are not ordered by their logical order to avoid
// reshuffling the file each time the index order changes (i.e., often).
// Run the fixnavi.pl script to adjust the links to the index order.
// **********************************************************************
/*!
\contentspage index.html
\previouspage creator-remote-compiler.html
\page creator-testing.html
\nextpage creator-debugging.html
\title Debugging and Analyzing
\image creator_testing.png
\list
\o \l{Debugging}
If you install \QC as part of \QSDK, the GNU Symbolic Debugger
is installed automatically and you should be ready to start
debugging after you create a new project. However, you can
change the setup to use debugging tools for Windows, for
example. You can connect mobile devices to your development PC
and debug processes running on the devices.
\o \l{Analyzing Code}
\QC integrates Valgrind code analysis tools for detecting memory
leaks and profiling function execution. You must download and
install them separately to use them from \QC. The QML Profiler is
installed as part of \QC. It enables you to profile your Qt Quick
applications.
\endlist
*/
......@@ -33,30 +33,25 @@
\title Tutorials
\image creator-gs-04.png
You can use \QC to create applications for several platforms by using
several technologies. The tutorials in this manual explain how to create
some basic applications.
\table
\row
\i
\i
\i
\row
\o \l{Creating a Qt Quick Application}
\list
\o \l{Creating a Qt Quick Application}
Learn about the basic Qt Quick concepts and QML elements.
\o \l{Creating a Qt Quick Application Using Qt Quick Components}
To learn about the basic Qt Quick concepts and QML elements, go
to \l{Creating a Qt Quick Application}.
\o \l{Creating a Qt Quick Application Using Qt Quick Components}
Learn how to develop a Qt Quick application for mobile devices.
To learn how to develop a Qt Quick application for mobile
devices, go to
\l{Creating a Qt Quick Application Using Qt Quick Components}.
\o \l{Creating a Qt Widget Based Application}
\o \l{Creating a Qt Widget Based Application}
Learn how to create a Qt widget based application for the desktop.
To learn how to create a Qt widget based application for
the desktop, go to \l{Creating a Qt Widget Based Application}.
\endtable
\endlist
*/
......@@ -27,18 +27,16 @@
/*!
\contentspage index.html
\previouspage creator-using-qt-designer.html
\previouspage adding-plugins.html
\page creator-usability.html
\nextpage creator-building-running.html
\nextpage creator-coding.html
\title Optimizing Applications for Mobile Devices
Before starting application development, analyze and define the
requirements, scope, and functionality of the application to ensure
efficient functionality and a smooth user experience. Design the application
for a single purpose and analyze how it can best serve its users. Mobile
devices have been designed for use when mobile. Keep the characteristics
of mobile devices in mind when you create applications for them.
for a single purpose and analyze how it can best serve its users.
The following guidelines help you design and develop usable applications for
mobile devices with varying characteristics, such as screen size and support
......
......@@ -27,44 +27,92 @@
/*!
\contentspage index.html
\previouspage creator-usability.html
\previouspage creator-mime-types.html
\page creator-building-running.html
\nextpage creator-building-targets.html
\title Building and Running Applications
\title Building and Running
\image creator_buildingrunning.png
\QC provides support for building, running, and deploying Qt applications
for different \l{glossary-development-target}{targets}.
You can set up the following configurations:
\list
\o \l{Building for Multiple Targets}
\e {Build configurations} contain everything you need to compile
the sources into binaries.
\o \l{Running on Multiple Targets}
\o \e {Build configuration}, which contains everything you need to
compile the sources into binaries.
\e {Run configurations} start the application in the location
where it was copied by the \e{deploy configuration}. By default,
when you select the \gui Run function, \QC builds the project,
deploys it to the selected target, and runs it there. However,
if you have not made any changes to the project since you last
built and deployed it, \QC simply runs it again.
\o \e {Deploy configuration}, which handles the packaging and copying
of the necessary files to a location you want to run the executable
at. The files can be copied to a location in the file system of the
development PC or a mobile device.
\o \l{Deploying to Mobile Devices}
\o \e {Run configuration}, which starts the application in the location
where it was stored by the deploy configuration.
\e {Deploy configurations} handle the packaging and copying of
the necessary files to a location you want to run the executable
at. The files can be copied to a location in the file system of
the development PC or a mobile device.
\o \l{Connecting Mobile Targets}
When you install tool chains for build targets as part of the \QSDK,
the build and run settings for mobile device targets are set up
automatically. However, you might need to install and configure some
additional software on the devices to be able to connect to them
from the development PC.
\endlist
By default, when you select the \gui Run function, \QC builds the project,
deploys it to the selected target, and runs it there. However, if you have
not made any changes to the project since you last built and deployed it,
\QC simply runs it again.
\section1 Related Topics
\list
\o \l{Customizing the Build Process}
By default, running an application also builds it and deploys it to
a location from where it can be run on the target. You can change
the relationship between the build, run, and deploy configurations.
\o \l{http://doc.qt.nokia.com/qtsimulator/index.html}
{Using Qt Simulator}
You can use the Qt Simulator to test Qt applications that are
intended for mobile devices in an environment similar to that of
the device. You can change the information that the device has
about its configuration and environment.
Qt Simulator does not support any device specific APIs by design.
Therefore, applications that run well on Qt Simulator also run on
any device that hosts the Qt and Qt Mobility libraries.
The Qt Simulator is installed as part of the \QSDK. After it is
installed, you can select it as a build target in \QC.
To specify the relationship between the release, build,
and deploy configurations, select \gui {Tools > Options > Project}. By
default, the \gui {Always build project before deploying it} and the
\gui {Always deploy project before running it} options are enabled.
Therefore, when you select the \gui Run function, \QC checks for changes in
the project files and also builds and deploys the project if necessary.
\o \l{Using Maemo or MeeGo Harmattan Emulator}
\image qtcreator-project-options-deploy.png "Project General Options"
You cannot use Qt Simulator to test applications that use device
specific libraries, such as native device APIs. To test such
applications, use the device emulators or real devices. With the
emulators, you can test how your application reacts to hardware
controls, such as the power button, and to the touch screen.
Usually, it is faster to test on a real device connected to the
development PC than to use the emulators. The emulator is installed
as part of the \QSDK.
\o \l{Building with Remote Compiler}
You can use a compilation service at Nokia Developer to build Qt
applications and create installation packages for mobile device
targets when you do not have the necessary tool chains and SDKs
installed or they are not supported on the development PC. You can
choose from a set of supported devices. You can install the Remote
Compiler target as part of the \QSDK.
\endlist
*/
......@@ -31,7 +31,7 @@
\page creator-building-targets.html
\nextpage creator-running-targets.html
\title Building Applications for Multiple Targets
\title Building for Multiple Targets
You can build applications for multiple \l{glossary-development-target}
{targets}. By default, when you run the application on a target, you
......
/****************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
**
** 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.
**
** If you have questions regarding the use of this file, please contact
** Nokia at qt-info@nokia.com.
**
****************************************************************************/
// **********************************************************************
// NOTE: the sections are not ordered by their logical order to avoid
// reshuffling the file each time the index order changes (i.e., often).
// Run the fixnavi.pl script to adjust the links to the index order.
// **********************************************************************
/*!
\contentspage index.html
\previouspage creator-developing-symbian.html
\page creator-build-process-customizing.html
\nextpage creator-maemo-emulator.html
\title Customizing the Build Process
To specify the relationship between the release, build,
and deploy configurations, select \gui {Tools > Options > Project}. By
default, the \gui {Always build project before deploying it} and the
\gui {Always deploy project before running it} options are enabled.
Therefore, when you select the \gui Run function, \QC checks for changes in
the project files and also builds and deploys the project if necessary.
\image qtcreator-project-options-deploy.png "Project General Options"
*/
......@@ -27,7 +27,7 @@
/*!
\contentspage index.html
\previouspage creator-project-wizards.html
\previouspage creator-project-other.html
\page creator-project-cmake.html
\nextpage creator-projects-autotools.html
......
......@@ -33,7 +33,73 @@
\title Creating Projects
\image qtcreator-new-project.png
Creating a project enables you to:
\list
\o Group files together
\o Add custom build steps
\o Include forms and resource files
\o Specify settings for running applications
\endlist
Setting up a new project in \QC is aided by a wizard that guides you
step-by-step through the project creation process. The wizards prompt you
to enter the settings needed for that particular type of project and create
the necessary files for you. You can add your own custom wizards to
standardize the way subprojects and classes are added to a project.
The wizards create projects that use the Qt build tool, qmake. It is a
cross-platform system for build automation that helps simplify the build
process for development projects across different platforms. qmake
automates the generation of build configurations so that only a few lines
of information are needed to create each configuration. For more
information about qmake, see the
\l{http://qt.nokia.com/doc/4.7/qmake-manual.html}{qmake Manual}.
You can modify the build and run settings for qmake projects in the
\gui Projects mode.
Alternatively, you can use the CMake build automation system and set up the
projects manually. In addition, you can import projects as
\e {generic projects} that do not use qmake or CMake. This enables you to
use \QC as a code editor and to fully control the steps and commands used to
build the project.
\if defined(qcmanual)
To develop applications for Symbian devices, you use qmake and the local
Symbian compiler (on Windows) or qmake and a compilation service at
Nokia Developer (on Linux and Mac OS) to build the applications for the
Symbian devices target. The interface to the compilation service,
Remote Compiler, is installed as a part of the \QSDK. For more information,
see \l{Building with Remote Compiler}.
\endif
You can install mobile device \l{glossary-development-target}{targets}
as part of the \QSDK. The build and run settings for the
installed targets are set up automatically. However, you might need to
install and configure some additional software on the devices to be able to
connect to them from the development PC.
\section1 Using Project Wizards
In the first step, you
select the type of the project. Next, you select a location for the project
and specify settings for it.
\image qtcreator-new-qt-quick-project-wizard.png
When you have completed the steps, \QC automatically generates the project
with required headers, source files, user interface descriptions and project
files, as defined by the wizard.
For example, if you choose to create a Qt Quick application, \QC generates a
QML file that you can modify with the integrated \QMLD.
\section1 Selecting Project Type
You can use wizards to create following types of projects:
......@@ -95,7 +161,7 @@
\gui {Target Setup} dialog. Follow the instructions of the wizard.
For examples of creating different types of projects, see
\l{Getting Started}.
\l{Tutorials}.
For more information about creating Qt Quick projects, see
\l {Creating Qt Quick Projects}.
......@@ -197,6 +263,14 @@
\section1 Adding Subprojects to Projects
In addition to Qt libraries, you can link your application to other
libraries, such as system libraries or your own libraries. Further, your
own libraries might link to other libraries. To be able to compile your
project, you must add the libraries to your project. This also enables
code completion and syntax highlighting for the libraries.
The procedure of adding a library to a project depends on the build
system that you use.
When you create a new project, you can add it to another project as a
subproject in the \gui{Project Management} dialog. However, the root project
must specify that qmake uses the \c subdirs template to build the project.
......@@ -220,4 +294,15 @@
To specify dependencies, use the \gui{Add Library} wizard. For more
information, see \l{Adding Libraries to Projects}.
\section1 Related Topics
\list
\o \l{Opening Projects}
\o \l{Adding Libraries to Projects}
\o \l{Adding New Custom Wizards}
\o \l{Setting Up a CMake Project}
\o \l{Setting Up a Generic Project}
\endlist
*/
......@@ -27,9 +27,9 @@
/*!
\contentspage index.html
\previouspage creator-os-supported-platforms.html
\previouspage creator-project-qmake-libraries.html
\page creator-project-wizards.html
\nextpage creator-project-cmake.html
\nextpage creator-version-control.html
\title Adding New Custom Wizards
......
......@@ -29,13 +29,10 @@
\contentspage index.html
\previouspage creator-projects-autotools.html
\page creator-project-generic.html
\nextpage creator-version-control.html
\nextpage creator-cli.html
\title Setting Up a Generic Project
\QC supports generic projects, so you can import existing projects
that do not use qmake or CMake and \QC ignores your build system.
Generic project support allows you to use \QC as a code editor. You
can change the way your project is built by modifying the \c make command
in the \gui{Projects} mode under \gui{Build Settings}.
......
......@@ -29,7 +29,7 @@
\contentspage index.html
\previouspage creator-project-opening.html
\page creator-project-qmake-libraries.html
\nextpage creator-configuring-projects.html
\nextpage creator-project-wizards.html
\title Adding Libraries to Projects
......
/****************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
**
** 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.
**
** If you have questions regarding the use of this file, please contact
** Nokia at qt-info@nokia.com.
**
****************************************************************************/
// **********************************************************************
// NOTE: the sections are not ordered by their logical order to avoid
// reshuffling the file each time the index order changes (i.e., often).
// Run the fixnavi.pl script to adjust the links to the index order.
// **********************************************************************
/*!
\contentspage index.html
\previouspage creator-os-supported-platforms.html
\page creator-project-other.html
\nextpage creator-project-cmake.html
\title Using Other Build Systems
\QC project wizards create projects that are configured to use qmake. Most
of the instructions in this manual apply to using qmake.
\list
\o \l{Setting Up a CMake Project}
CMake is an alternative to qmake for automating the generation of
build configurations.
\o \l{Setting Up an Autotools Project}
\QC can open projects that use the Autotools build system. You can
build and run the projects directly from \QC.
\o \l{Setting Up a Generic Project}
\QC supports generic projects, so you can import existing projects
that do not use qmake or CMake. This enables you to use \QC as a
code editor and to fully control the steps and commands used to
build the project.
\endlist
*/
......@@ -33,102 +33,52 @@
\title Managing Projects
To set up a project, you first have to decide what kind of an application
you want to develop. Do you want a user interface based on:
\image creator_managingprojects.png
\list
\o Qt Quick
\o HTML5
\if defined(qcmanual)
\o Qt widgets
\endif
\endlist
For a Qt Quick or HTML5 project, you also have a choice of the language to
implement the application logic: C++ or JavaScript.
You can also create other kinds of projects, such as Qt console
applications, shared or static C++ libraries, or subprojects.
One of the major advantages of \QC is that it allows a team of developers
to share a project across different development platforms with a common tool
for development and debugging.
You can use wizards to create and import projects. The wizards prompt you
to enter the settings needed for that particular type of project and create
the necessary files for you. You can add your own custom wizards to
standardize the way subprojects and classes are added to a project.
\list
The wizards set up projects to use the Qt build tool, qmake. It is a
cross-platform system for build automation that helps simplify the build
process for development projects across different platforms. qmake
automates the generation of build configurations so that only a few lines
of information are needed to create each configuration. For more
information about qmake, see the
\l{http://qt.nokia.com/doc/4.7/qmake-manual.html}{qmake Manual}.
\o \l{Creating Projects}
You can modify the build and run settings for qmake projects in the
\gui Projects mode.
To set up a project, you first have to decide what kind of an
application you want to develop: do you want a user interface based
on Qt Quick or HTML5 or Qt widgets. Second, you have to choose the
language to implement the application logic: C++ or JavaScript.
Alternatively, you can use the CMake build automation system and set up the
projects manually. In addition, you can import generic projects that do not
use qmake or CMake. This allows you to use \QC as a code editor. For
generic projects, \QC ignores your build system.
\o \l{Using Version Control Systems}
\if defined(qcmanual)
To develop applications for Symbian devices, you use qmake and the local
Symbian compiler (on Windows) or qmake and a compilation service at
Nokia Developer (on Linux and Mac OS) to build the applications for the
Symbian devices target. The interface to the compilation service,
Remote Compiler, is installed as a part of the \QSDK. For more information,
see \l{Building with Remote Compiler}.
\endif
The recommended way to set up a project is to use a version control
system. Store and edit only project source files and build system
configuration files (for example, .pro and .pri files for qmake).
Do not store files generated by the build system or \QC, such as
makefiles, .pro.user, and object files.
\o \l{Configuring Projects}
You can install mobile device \l{glossary-development-target}{targets}
as part of the \QSDK. The build and run settings for the
installed targets are set up automatically. However, you might need to
install and configure some additional software on the devices to be able to
connect to them from the development PC.
\QC allows you to specify separate build settings for each
development platform. By default, \l{glossary-shadow-build}
{shadow builds} are used to keep the build specific files separate
from the source. You can create separate versions of project files
to keep platform-dependent code separate. You can use qmake
\l{http://qt.nokia.com/doc/4.7/qmake-tutorial.html#adding-platform-specific-source-files}
{scopes} to select the file to process depending on which platform
qmake is run on.