Jump to content

Qt5/Documentation/OverviewStructure: Difference between revisions

From KDE Community Wiki
Capisce (talk | contribs)
No edit summary
Line 19: Line 19:
* Data Structure and Storage
* Data Structure and Storage
* Scripting
* Scripting
* Contacts
* Add-ons (Contacts, Sensors, Location etc)
* Sensors
* Location
* Core fundamentals (IPC, containers, signals/slots, properties, meta-object, and so on.)
* Core fundamentals (IPC, containers, signals/slots, properties, meta-object, and so on.)
* Web applications
* Web applications

Revision as of 11:58, 2 October 2012

Qt 5 Topics and Overviews

This page maps and outlines the topics covered in Qt 5 documentation.


Qt Topics and Aspects

Topics in this context are the aspects of applications that developers are concerned with. These topics involve several Qt modules and should reside in qt5/qtdoc repository. These overviews tie in the relevant features provided by the relevant modules. The emphasis is on functionality, not the module. This means that we should assume that the developer is not heavily concerned about the difference between the modules or the Essential/Add-On distinction. They simply import which classes or QML types they wish.

For example, the SQL Programming article is linked _both_ from the Qt SQL landing page _and_ the SQL section of the "Data Structure and Storage" topic page. Readers who know which module to read will go to the Qt SQL landing page and find the article, but people who are concerned about the data storage options will find the page from the topic page.

Possible list of topics:

  • Application Development (tools and Qt Creator)
  • Testing (UI testing, debugging)
  • User Interfaces
  • Graphics
  • Multimedia
  • Networking and Connectivity
  • Data Structure and Storage
  • Scripting
  • Add-ons (Contacts, Sensors, Location etc)
  • Core fundamentals (IPC, containers, signals/slots, properties, meta-object, and so on.)
  • Web applications
  • Porting guide from Qt 4?

Feature Overviews

A feature is what Qt 5 offers. For examples, QML is an offering and requires an overview or some sort of documentation that connects all the relevant material together. Different topics have various feature overviews. These feature overviews may be specific to a Qt module and may reside in the module's repository.

"User Interface" Topic Page

A page describing the UI options in Qt 5. This page includes links to the overviews from various repositories and modules.

A list of sections in this topic page (with links to the feature overviews):

  • QML- talks about "declarative" and the use of JavaScript to provide "highly dynamic interfaces".
  • Widgets -what can be done with widgets such as layouts, themes, platform implementation.
  • 3D Interfaces - mentions which modules provide 3D related APIs. (Should we have this? Probably not since Qt3D is not an essential)
  • Web Interfaces - about CSS, HTML, WebView, and so on.
  • Graphics Stack - about Qt's graphic stack and the processes involved (2D graphics, enablers, painting, math classes, raster, rendering, and OpenGL)
    • Should this be under "core fundamentals" instead? Edit: or both
  • Model/View programming
  • Links to guides on using Qt Creator for designing widget- and QML-based UIs?
  • Animation framework?
  • Accessibility
  • Drag and drop (is this under Widgets or do we support it in QML?)
  • Rich text engines?
    • QTextDocument in QML and Widgets
    • WebKit
  • I18N

"Data Structure and Storage" Topic Page

A page describing the data storage options in Qt 5. This page includes links to the overviews from various repositories and modules.

A list of sections in this topic page (with links to the feature overviews):

  • Containers
  • Saving and Loading Data (maybe about QIODevice, QTextStream, QDataStream and QFile)
  • XML
  • SQL and related database APIs
  • JavaScript Storage (available from Qt WebKit and Qt Quick)
  • JSON DB
  • QSettings
  • Qt resources?

"Multimedia" Topic Page

A page describing the multimedia story in Qt 5. This page includes links to the overviews from various repositories and modules.

A list of sections in this topic page (with links to the feature overviews):

  • Backend/engine
  • Supported platforms, media, codecs, and so on.
  • Audio API
  • Video API
  • Camera API
  • Radio API
  • Printing API?

Candidate: Qt Multimedia Overview (Maybe renamed to "Multimedia in Qt"?)

"Connectivity and Networking" Topic Page

A page describing the connectivity and networking offering in Qt 5. This can mean communication between the same application, inside the application, to the operating system, or through the internet or bluetooth.

A list of sections in this topic page (with links to the feature overviews):

  • TCP/IP
  • Bluetooth
  • Bearer Management
  • QNetworkAccessManager
  • Network transparency in QML
  • WebKit?

"Core fundamentals" Topic Page

A list of topics in this topic page:

  • IPC
  • Threading
  • QProcess
  • Containers
  • Events
  • State Machine Framework?
  • Object ownership model
  • QString / Unicode
  • Text codecs
  • Meta-object
    • Signals and slots
    • Property system
    • Meta-object and the moc
    • The meta-object in QML
  • QPA
    • Wayland
    • Platform specific development
  • Plugins

"Scripting" Topic Page

A list of topics in this topic page:

  • QtScript
  • QJSEngine / QJSValue etc
  • QQmlEngine, link to a guide on using QML for non-graphical purposes if such a thing makes sense?
  • Something about web / JavaScript ?