MenuDefinition
Since: BlackBerry 10.0.0
#include <bb/cascades/Menu>
A menu that contains important application-wide actions.
A Menu is positioned at the top of the screen and can be accessed by swiping downwards from the top of the screen. It is typically used to display seldom-used actions such as Help or Settings that are global (that is, apply from anywhere in the application).
Menu *menu = Menu::create() .addAction(ActionItem::create().title("Menu Item 1")) .addAction(ActionItem::create().title("Menu Item 2")) .help(HelpActionItem::create()); Application::instance()->setMenu(menu);
Page { Menu.definition: MenuDefinition { settingsAction: SettingsActionItem { onTriggered : {} } actions: [ ActionItem {} ] } }
Overview
Inheritance
bb::cascades::BaseObject | |||
bb::cascades::UIObject | |||
bb::cascades::Menu |
QML properties
actions | : QDeclarativeListProperty [read-only] |
helpAction | : bb::cascades::HelpActionItem |
settingsAction | : bb::cascades::SettingsActionItem |
attachedObjects | : QDeclarativeListProperty< QObject > [read-only]![]() |
objectName | : QString![]() |
parent | : QObject [read-only]![]() |
ui | : bb::cascades::UIConfig [read-only]![]() |
QML signals
Properties Index
QDeclarativeListProperty | actions [read-only] |
bb::cascades::HelpActionItem | helpAction |
bb::cascades::SettingsActionItem | settingsAction |
QDeclarativeListProperty< QObject > | attachedObjects [read-only]![]() |
QString | objectName![]() |
QObject | parent [read-only]![]() |
bb::cascades::UIConfig | ui [read-only]![]() |
Public Functions Index
Menu (QObject *parent=0) | |
virtual | ~Menu () |
Q_INVOKABLE bb::cascades::ActionItem * | actionAt (int index) const |
Q_INVOKABLE int | actionCount () const |
Q_INVOKABLE void | addAction (bb::cascades::ActionItem *actionItem) |
bb::cascades::HelpActionItem * | helpAction () const |
Q_INVOKABLE bool | removeAction (bb::cascades::ActionItem *actionItem) |
Q_SLOT void | resetHelpAction () |
Q_SLOT void | resetSettingsAction () |
Q_SLOT void | setHelpAction (bb::cascades::HelpActionItem *helpAction) |
Q_SLOT void | setSettingsAction (bb::cascades::SettingsActionItem *settingsAction) |
bb::cascades::SettingsActionItem * | settingsAction () const |
virtual bool | event (QEvent *event)![]() |
void | setObjectName (const QString &name)![]() |
virtual Q_INVOKABLE QString | toDebugString () const ![]() |
Q_INVOKABLE bb::cascades::UIConfig * | ui () const ![]() |
Static Public Functions Index
Builder | create () |
Protected Functions Index
Only has inherited protected functions
BaseObject (QObject *parent=0)![]() | |
virtual void | connectNotify (const char *signal)![]() |
virtual void | disconnectNotify (const char *signal)![]() |
Signals Index
void | actionAdded (bb::cascades::ActionItem *action) |
void | actionRemoved (bb::cascades::ActionItem *action) |
void | enabledChanged (bool enabled) |
void | helpActionChanged (bb::cascades::HelpActionItem *helpAction) |
void | settingsActionChanged (bb::cascades::SettingsActionItem *settingsAction) |
void | creationCompleted ()![]() |
void | objectNameChanged (const QString &objectName)![]() |
Properties
QDeclarativeListProperty
Specifies the actions that will be shown on the application menu.
BlackBerry 10.0.0
bb::cascades::HelpActionItem
Specifies the Help action item.
The Help action is placed in a specific location, and if an image isn't specified on the action, a default icon is shown.
BlackBerry 10.0.0
bb::cascades::SettingsActionItem
Specifies the Settings action item.
The Settings action is placed in a specific location, and if an image isn't specified on the action, a default icon is shown.
BlackBerry 10.0.0
QDeclarativeListProperty< QObject >
A hierarchical list of the UIObject's attached objects.
BlackBerry 10.0.0
QString
This property is overridden from QObject.
QObject::objectName().
BlackBerry 10.0.0
QObject
A read-only property that represents this object's parent.
The parent of an object is specified using QObject::setParent(QObject*). The purpose of the property is to expose the object's parent to QML.
This property is read-only to prevent modifications from QML, where typically the parent is declaratively set. In C++ code, the parent can be explicitly set using QObject::setParent(QObject*), or implicitly set by adding it to a visual container.
The default value of this property is 0.
BlackBerry 10.0.0
bb::cascades::UIConfig
An object that gives access to unit conversion routines.
// Size using design units Container { preferredWidth: ui.du(12) preferredHeight: ui.du(5) } // Size using design units, snap to whole pixels Container { preferredWidth: ui.sdu(13.5) preferredHeight: ui.sdu(7.5) } // Size using absolute pixel values Container { preferredWidth: ui.px(150) preferredHeight: ui.px(50) }C++ use:
Container *container1 = Container::create().background(Color::Red); UIConfig *ui = container1->ui(); container1->setPreferredWidth(ui->du(12)); container1->setPreferredHeight(ui->du(5)); Container *container2 = Container::create().background(Color::Green); container2->setPreferredWidth(ui->sdu(13.5)); container2->setPreferredHeight(ui->sdu(7.5)); Container *container3 = Container::create().background(Color::Blue); container3->setPreferredWidth(ui->px(150)); container3->setPreferredHeight(ui->sdu(50));
Blackberry 10.3.0
Public Functions
Q_INVOKABLE bb::cascades::ActionItem *
Returns the action at the specified index in this Menu.
Ownership of the action remains with this Menu.
Parameters | |
---|---|
index |
The index of the action. |
The requested action if the index was valid, 0 otherwise.
BlackBerry 10.0.0
Q_INVOKABLE int
Returns the number of actions in this Menu.
The number of actions.
BlackBerry 10.0.0
Q_INVOKABLE void
Adds an action to this Menu.
This Menu will always take ownership of the specified action, because actions should not be shared. If the specified action already belongs to this Menu, or is 0, then nothing will happen. The actionAdded() signal is emitted, when the operation is successful. The order in which actions are added determines how they appear on the Menu. If there are no help or settings actions new actions will be placed those locations first. The rest of the actions will be placed together from left to right in the order they were added.
Parameters | |
---|---|
actionItem |
The action to add to the Menu. |
BlackBerry 10.0.0
bb::cascades::HelpActionItem *
Gets the Help action for this Menu.
The Menu keeps the ownership of the Help action.
The Help action, or 0 if no Help action is specified.
BlackBerry 10.0.0
Q_INVOKABLE bool
Removes an action from this Menu.
Once the action is removed, the Menu no longer references it, but it is still owned by the Menu. It is up to the application to either delete the removed action, transfer its ownership (by setting its parent) to another object, or leave it as a child of the Menu, in which case it will be deleted with the Menu.
If the operation was successful, the actionRemoved() signal is emitted.
Parameters | |
---|---|
actionItem |
The action to remove. |
true if the action was owned by this Menu, false otherwise.
BlackBerry 10.0.0
Q_SLOT void
Resets the Help action for this Menu.
This function removes the Help action for this Menu. When this function completes, the helpActionChanged() signal is emitted.
BlackBerry 10.0.0
Q_SLOT void
Resets the Settings action for this Menu.
This function removes the Settings action for this Menu. When this function completes, the settingsActionChanged() signal is emitted.
BlackBerry 10.0.0
Q_SLOT void
Sets the Help action for this Menu.
The Menu takes the ownership of the Help action. When this function completes, the helpActionChanged() signal is emitted.
Parameters | |
---|---|
helpAction |
The Help action. |
BlackBerry 10.0.0
Q_SLOT void
Sets the Settings action for this Menu.
The Menu takes the ownership of the Settings action. When this function completes, the settingsActionChanged() signal is emitted.
Parameters | |
---|---|
settingsAction |
The Settings action. |
BlackBerry 10.0.0
bb::cascades::SettingsActionItem *
Gets the Settings action for this Menu.
The Menu keeps the ownership of the Settings action.
The Settings action, or 0 if no Settings action has been specified.
BlackBerry 10.0.0
virtual bool 
Overloaded to implement the event mechanism in Cascades.
If this function is overridden, it must be called by the derived class for events to work properly in Cascades.
Parameters | |
---|---|
event |
The received event. |
True if the received event was recognized and processed, false otherwise.
BlackBerry 10.0.0
void 
Sets the objectName property.
Parameters | |
---|---|
name |
The new name for the object. |
BlackBerry 10.0.0
virtual Q_INVOKABLE QString 
Returns a debug string representing this object.
A debug string for the object.
BlackBerry 10.0.0
Q_INVOKABLE bb::cascades::UIConfig * 
Returns the UIConfig for this ui object.
The UIConfig can be used to perform unit conversions from design units (du) and snapped design units (sdu) to pixels.
Ownership remains with Cascades.
Container *container1 = Container::create().background(Color::Red); UIConfig *ui = container1->ui(); container1->setPreferredWidth(ui->du(12)); container1->setPreferredHeight(ui->du(5)); Container *container2 = Container::create().background(Color::Green); container2->setPreferredWidth(ui->sdu(13.5)); container2->setPreferredHeight(ui->sdu(7.5)); Container *container3 = Container::create().background(Color::Blue); container3->setPreferredWidth(ui->px(150)); container3->setPreferredHeight(ui->sdu(50));
The UIConfig for this ui object.
BlackBerry 10.3.0
Static Public Functions
Builder
Creates and returns a builder for constructing a Menu.
Menu* menu = Menu::create();
A builder used for constructing a Menu.
BlackBerry 10.0.0
Protected Functions
(Only has inherited protected functions)
Constructs an instance of BaseObject's subclass.
Parameters | |
---|---|
parent |
An optional parent, defaults to 0. |
BlackBerry 10.0.0
virtual void 
Overloaded to implement the event mechanism in Cascades.
If this function is overridden, it must be called by the derived class for events to work properly in Cascades.
Parameters | |
---|---|
signal |
The connected signal. |
BlackBerry 10.0.0
virtual void 
Overloaded to implement the event mechanism in Cascades.
If this function is overridden, it must be called by the derived class for events to work properly in Cascades.
Parameters | |
---|---|
signal |
The disconnected signal. |
BlackBerry 10.0.0
Signals
void
Emitted when an action has been added to the Menu.
Parameters | |
---|---|
action |
The action that has been added. |
BlackBerry 10.0.0
void
Emitted when an action has been removed from the Menu.
Parameters | |
---|---|
action |
The action that has been removed. |
BlackBerry 10.0.0
void
Emitted when the enabled property has changed.
Parameters | |
---|---|
enabled |
If true the Menu is enabled, if false the Menu is not enabled. |
BlackBerry 10.0.0
void
Emitted when the Help action has changed.
Parameters | |
---|---|
helpAction |
The new Help action. |
BlackBerry 10.0.0
void
Emitted when the Settings action has changed.
Parameters | |
---|---|
settingsAction |
The new Settings action. |
BlackBerry 10.0.0
void 
Emitted when this object is instantiated as a result of loading a QML document and creating the root node (only after the root component that caused this instantiation has completed construction), or when the object is being constructed from its builder class.
This signal indicates that the construction and initialization of the object has been completed, the properties are initialized, and any QML binding values have been assigned to the object.
This signal is not emitted when the object is constructed from C++ using the constructor. If the object is constructed using its builder class, the signal is emitted when the the builder class returns the fully constructed object.
This signal can be used when there is an activity that needs to be performed, such as a property state integrity verification after the object is instantiated from a QML document or a builder, but before control is returned to the application.
BlackBerry 10.0.0
void 
This signal is emitted when the objectName property is changed.
BlackBerry 10.0.0