Simple library for QML allowing the mixed use of Native Menus and QtQuick ones.
Go to file
Ad5001 5c6e05b1e4
Undefined shortcut was not defined as so.
2021-08-16 00:14:39 +02:00
Action.qml Undefined shortcut was not defined as so. 2021-08-16 00:14:39 +02:00
LICENSE Initial commit 2021-07-11 18:56:36 +02:00
Menu.qml Fixing bug with shortcuts no longer working when using MixedMenu. 2021-07-22 22:44:14 +02:00
MenuBar.qml Now using the proper icon properties! Also removing debug. 2021-07-23 00:37:42 +02:00
MenuItem.qml Now using the proper icon properties! Also removing debug. 2021-07-23 00:37:42 +02:00
MenuSeparator.qml Initial commit 2021-07-11 18:56:36 +02:00
README.md Bumping QML module version to 1.1 because I forgot to do so for v1.1 release. 2021-07-23 12:26:18 +02:00
eu.ad5001.mixedmenu.qdoc Forgot to bump version in QDoc. 2021-07-23 12:30:02 +02:00
qmldir Bumping QML module version to 1.1 because I forgot to do so for v1.1 release. 2021-07-23 12:26:18 +02:00

README.md

MixedMenu

Simple library for QML allowing the mixed use of Native Menus and QtQuick ones.

It provides near drop-in replacements for QtQuick.Controls 2 menus making use of the platform native ones on supported platforms like MacOSX.
It can be used for MenuBars, as well as context menus.

Switching from QtQuick.Controls 2

Add MixedMenu as QML module

The first thing you need to do is to add MixedMenu to your QML Import Path.
To do so, follow these steps:

  1. Go into a QML Import path directory in your project (or Qt's main QML import path).
  2. Create an "eu" directory, within an "ad5001" directory should be created.
  3. Go into the "ad5001" folder
  4. Install MixedMenu there.
    • If you're using Git as version control, you can use git submodule add https://git.ad5001.eu/Ad5001/MixedMenu.
    • Otherwise, simply clone the repository using git clone https://git.ad5001.eu/Ad5001/MixedMenu.
    • Or download the archive from here.

Code changes

When switching from QtQuick.Controls 2 to MixedMenu, the following changes need to be made to your Menu code:

QtQuick.Controls2/Qt.labs > eu.ad5001.MixedMenu
import import QtQuick.Controls 2.12 > import eu.ad5001.MixedMenu 1.1
menuBar: MenuBar {} > MenuBar { id: appMenu }
menuBar: appMenu.trueItem

Requirements

MixedMenu requires Qt version >5.12 with QML support enabled.