summaryrefslogtreecommitdiffstats
path: root/src/qmlandroid/view/qqmlandroidmenuitem_p.h
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@theqtcompany.com>2014-12-19 19:36:46 +0100
committerJ-P Nurmi <jpnurmi@theqtcompany.com>2014-12-19 19:36:46 +0100
commit5c6ba7e2e76005b10b95022d531efed99c7f06b3 (patch)
tree0e51f55601764d961f903eecd7be6f934f53e134 /src/qmlandroid/view/qqmlandroidmenuitem_p.h
parent801b93ddd5f55d40643e08204bb522bcebe5d7e4 (diff)
Proper Qt module - part V
Diffstat (limited to 'src/qmlandroid/view/qqmlandroidmenuitem_p.h')
-rw-r--r--src/qmlandroid/view/qqmlandroidmenuitem_p.h90
1 files changed, 90 insertions, 0 deletions
diff --git a/src/qmlandroid/view/qqmlandroidmenuitem_p.h b/src/qmlandroid/view/qqmlandroidmenuitem_p.h
new file mode 100644
index 0000000..42f658c
--- /dev/null
+++ b/src/qmlandroid/view/qqmlandroidmenuitem_p.h
@@ -0,0 +1,90 @@
+#ifndef QQMLANDROIDMENUITEM_P_H
+#define QQMLANDROIDMENUITEM_P_H
+
+#include "qqmlandroidcontextual_p.h"
+
+QT_BEGIN_NAMESPACE
+
+class QQmlAndroidView;
+
+class QQmlAndroidMenuItem : public QQmlAndroidContextual
+{
+ Q_OBJECT
+ Q_PROPERTY(QString title READ title WRITE setTitle NOTIFY titleChanged)
+ Q_PROPERTY(bool enabled READ isEnabled WRITE setEnabled NOTIFY enabledChanged)
+ Q_PROPERTY(bool visible READ isVisible WRITE setVisible NOTIFY visibleChanged)
+ Q_PROPERTY(bool checkable READ isCheckable WRITE setCheckable NOTIFY checkableChanged)
+ Q_PROPERTY(bool checked READ isChecked WRITE setChecked NOTIFY checkedChanged)
+ Q_PROPERTY(int showAs READ showAs WRITE setShowAs NOTIFY showAsChanged)
+ Q_PROPERTY(QQmlAndroidView *actionView READ actionView WRITE setActionView NOTIFY actionViewChanged)
+ Q_ENUMS(ShowAs)
+
+public:
+ explicit QQmlAndroidMenuItem(QObject *parent = 0);
+
+ QString title() const;
+ void setTitle(const QString &title);
+
+ bool isEnabled() const;
+ void setEnabled(bool enabled);
+
+ bool isVisible() const;
+ void setVisible(bool visible);
+
+ bool isCheckable() const;
+ void setCheckable(bool checkable);
+
+ bool isChecked() const;
+ void setChecked(bool checked);
+
+ enum ShowAs {
+ SHOW_AS_ACTION_NEVER = 0,
+ SHOW_AS_ACTION_IF_ROOM = 1,
+ SHOW_AS_ACTION_ALWAYS = 2,
+ SHOW_AS_ACTION_WITH_TEXT = 4,
+ SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW = 8
+ };
+
+ int showAs() const;
+ void setShowAs(int showAs);
+
+ QQmlAndroidView *actionView() const;
+ void setActionView(QQmlAndroidView *view);
+
+Q_SIGNALS:
+ void click();
+ void titleChanged();
+ void enabledChanged();
+ void visibleChanged();
+ void checkableChanged();
+ void checkedChanged();
+ void showAsChanged();
+ void actionViewChanged();
+
+protected:
+ QAndroidJniObject onCreate() Q_DECL_OVERRIDE;
+ void onInflate(QAndroidJniObject &instance) Q_DECL_OVERRIDE;
+
+ static void onRegisterNativeMethods(jobject item);
+ static bool onClick(JNIEnv *env, jobject object, jlong instance);
+ static bool onMenuItemActionCollapse(JNIEnv *env, jobject object, jlong instance);
+ static bool onMenuItemActionExpand(JNIEnv *env, jobject object, jlong instance);
+
+ void objectChange(ObjectChange change) Q_DECL_OVERRIDE;
+
+private Q_SLOTS:
+ void updateActionView();
+
+private:
+ QString m_title;
+ bool m_enabled;
+ bool m_visible;
+ bool m_checkable;
+ bool m_checked;
+ int m_showAs;
+ QQmlAndroidView *m_actionView;
+};
+
+QT_END_NAMESPACE
+
+#endif // QQMLANDROIDMENUITEM_P_H