user avatar
Introducing QPA, QML-only MenuBar, Menu, MenuItem
Gabriel de Dietrich authored
This removes one dependency from QtWidgets.

QPA is only implemented for Mac so far, and depends on qt/qtbase's
I5f83f260602f55b9409ad69abf670afb59b2d33a change. This means, it will
only work with Qt 5.1 and older. Other QPA implementations will
follow, like Android.

The QML-only implementation has been tested mostly on Linux. On Mac,
we need I4716b4c0b6187d14adb34c46b848ca0a16370b5a to be integrated in
qt/qtbase dev branch if we want to enforce non-QPA menus.

Updated ComboBox, ContextMenu to new QPA menu behavior

Includes preliminary documentation for Action, ExclusiveGroup,
MenuBar, MenuItem, MenuSeparator, and Menu.

Change-Id: I6f38849a03a51386465156f8be3034df0d29e40d
Reviewed-by: default avatarJens Bache-Wiig <jens.bache-wiig@digia.com>
898f4b1c
ABOUT

This project aims to deliver widgets/components for Desktop usage on Qt Quick.

Some more information can be found on the following blog entries:

https://blog.qt.digia.com/blog/2011/03/10/qml-components-for-desktop/
https://blog.qt.digia.com/blog/2011/05/26/table-view-with-qt-quick/
https://blog.qt.digia.com/blog/2011/08/26/toplevel-windows-and-menus-with-qt-quick/


HELP

If you have problems or questions, feel free to ask on the QML mailing list at qt-qml@qt.nokia.com
or alternatively the Qt Developer Network: http://qt-project.org/forums/viewforum/12/
You can also contact the maintainer at: jens.bache-wiig (at) digia (dot) com


INSTALLATION

Note the MINIMUM REQUIREMENT for this project is that you have Qt 5.0. (Qt Quick 2)

The components rely on several C++ plugins in order to integrate with the desktop. To install the
components into your Qt directory, simply enter the root directory and do:

'qmake && make install'

This will compile and copy the plugins and components into your QTDIR/qml folder.
If you are compiling against a system Qt on linux, you might have to do a 'sudo make install'
in order to install the project.


USAGE

The examples should show how you can use the components. If you use code that makes use of
Window or MenuBar, you will have to start your application with the desktopviewer launcher
application. This is because it will ensure that the QMLViewer application itself does not
show and make up the main window in your application.

Again, please refer to :
https://blog.qt.digia.com/blog/2011/08/26/toplevel-windows-and-menus-with-qt-quick/

For more information on this.