Qt 4.8
qaccessiblemenu.h
Go to the documentation of this file.
1 /****************************************************************************
2 **
3 ** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
4 ** Contact: http://www.qt-project.org/legal
5 **
6 ** This file is part of the plugins of the Qt Toolkit.
7 **
8 ** $QT_BEGIN_LICENSE:LGPL$
9 ** Commercial License Usage
10 ** Licensees holding valid commercial Qt licenses may use this file in
11 ** accordance with the commercial license agreement provided with the
12 ** Software or, alternatively, in accordance with the terms contained in
13 ** a written agreement between you and Digia. For licensing terms and
14 ** conditions see http://qt.digia.com/licensing. For further information
15 ** use the contact form at http://qt.digia.com/contact-us.
16 **
17 ** GNU Lesser General Public License Usage
18 ** Alternatively, this file may be used under the terms of the GNU Lesser
19 ** General Public License version 2.1 as published by the Free Software
20 ** Foundation and appearing in the file LICENSE.LGPL included in the
21 ** packaging of this file. Please review the following information to
22 ** ensure the GNU Lesser General Public License version 2.1 requirements
23 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
24 **
25 ** In addition, as a special exception, Digia gives you certain additional
26 ** rights. These rights are described in the Digia Qt LGPL Exception
27 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
28 **
29 ** GNU General Public License Usage
30 ** Alternatively, this file may be used under the terms of the GNU
31 ** General Public License version 3.0 as published by the Free Software
32 ** Foundation and appearing in the file LICENSE.GPL included in the
33 ** packaging of this file. Please review the following information to
34 ** ensure the GNU General Public License version 3.0 requirements will be
35 ** met: http://www.gnu.org/copyleft/gpl.html.
36 **
37 **
38 ** $QT_END_LICENSE$
39 **
40 ****************************************************************************/
41 
42 #ifndef QACCESSIBLEMENU_H
43 #define QACCESSIBLEMENU_H
44 
45 #include <QtGui/qaccessiblewidget.h>
46 #include <QtGui/qaccessible2.h>
47 
49 
50 #ifndef QT_NO_ACCESSIBILITY
51 
52 #ifndef QT_NO_MENU
53 class QMenu;
54 class QMenuBar;
55 class QAction;
56 
58 {
59 public:
60  explicit QAccessibleMenu(QWidget *w);
61 
62  int childCount() const;
63  int childAt(int x, int y) const;
64 
65  QRect rect(int child) const;
66  QString text(Text t, int child) const;
67  Role role(int child) const;
68  State state(int child) const;
69  int navigate(RelationFlag relation, int entry, QAccessibleInterface **target) const;
70  int indexOfChild( const QAccessibleInterface *child ) const;
71 
72  QString actionText(int action, QAccessible::Text text, int child) const;
73  bool doAction(int action, int child, const QVariantList &params);
74 
75 protected:
76  QMenu *menu() const;
77 };
78 
79 #ifndef QT_NO_MENUBAR
81 {
82 public:
83  explicit QAccessibleMenuBar(QWidget *w);
84 
85  int childCount() const;
86  int childAt(int x, int y) const;
87 
88  QRect rect(int child) const;
89  QString text(Text t, int child) const;
90  Role role(int child) const;
91  State state(int child) const;
92  int navigate(RelationFlag relation, int entry, QAccessibleInterface **target) const;
93  int indexOfChild( const QAccessibleInterface *child ) const;
94 
95  QString actionText(int action, QAccessible::Text text, int child) const;
96  bool doAction(int action, int child, const QVariantList &params);
97 
98 protected:
99  QMenuBar *menuBar() const;
100 };
101 #endif // QT_NO_MENUBAR
102 
103 
104 
106 {
108 public:
109  explicit QAccessibleMenuItem(QWidget *owner, QAction *w);
110 
111  virtual ~QAccessibleMenuItem();
112  virtual QString actionText ( int action, Text t, int child ) const;
113  virtual int childAt ( int x, int y ) const;
114  virtual int childCount () const;
115  virtual bool doAction ( int action, int child, const QVariantList & params = QVariantList() );
116  virtual int indexOfChild ( const QAccessibleInterface * child ) const;
117  virtual bool isValid () const;
118  virtual int navigate ( RelationFlag relation, int entry, QAccessibleInterface ** target ) const;
119  virtual QObject * object () const;
120  virtual QRect rect ( int child ) const;
121  virtual Relation relationTo ( int child, const QAccessibleInterface * other, int otherChild ) const;
122  virtual Role role ( int child ) const;
123  virtual void setText ( Text t, int child, const QString & text );
124  virtual State state ( int child ) const;
125  virtual QString text ( Text t, int child ) const;
126  virtual int userActionCount ( int child ) const;
127 
128  // action interface
129  virtual int actionCount();
130  virtual void doAction(int actionIndex);
131  virtual QString description(int);
132  virtual QString name(int);
133  virtual QString localizedName(int);
134  virtual QStringList keyBindings(int);
135 
136  virtual QVariant invokeMethodEx(Method, int, const QVariantList &);
137 
138  QWidget *owner() const;
139 protected:
140  QAction *action() const;
141 private:
143  QWidget *m_owner; // can hold either QMenu or the QMenuBar that contains the action
144 };
145 
146 #endif // QT_NO_MENU
147 
149 #endif // QT_NO_ACCESSIBILITY
150 #endif // QACCESSIBLEMENU_H
The QVariant class acts like a union for the most common Qt data types.
Definition: qvariant.h:92
#define QT_END_NAMESPACE
This macro expands to.
Definition: qglobal.h:90
QMenu * menu() const
QRect rect(int child) const
Returns the geometry of the object, or of the object&#39;s child if child is not 0.
QObject * object() const
Returns a pointer to the QObject this interface implementation provides information for...
Role
This enum defines the role of an accessible object.
Definition: qaccessible.h:188
The QWidget class is the base class of all user interface objects.
Definition: qwidget.h:150
int userActionCount(int child) const
Returns the number of custom actions of the object, or of the object&#39;s child if child is not 0...
State state(int child) const
Returns the current state of the object, or of the object&#39;s child if child is not 0...
The QString class provides a Unicode character string.
Definition: qstring.h:83
static QWidget * owner
Relation relationTo(int child, const QAccessibleInterface *other, int otherChild) const
Returns the relationship between this object&#39;s \a child and the \a other object&#39;s \a otherChild...
The QObject class is the base class of all Qt objects.
Definition: qobject.h:111
int navigate(RelationFlag relation, int entry, QAccessibleInterface **target) const
Navigates from this object to an object that has a relationship relation to this object, and returns the respective object in target.
void setText(Text t, int child, const QString &text)
Sets the text property t of the object, or of the object&#39;s child if child is not 0, to text.
#define QT_BEGIN_NAMESPACE
This macro expands to.
Definition: qglobal.h:89
QAccessibleMenu(QWidget *w)
RelationFlag
This enum type defines bit flags that can be combined to indicate the relationship between two access...
Definition: qaccessible.h:268
Method
This enum describes the possible types of methods that can be invoked on an accessible object...
Definition: qaccessible.h:311
const char * name
The QStringList class provides a list of strings.
Definition: qstringlist.h:66
#define Q_ACCESSIBLE_OBJECT
Definition: qaccessible2.h:108
The State element defines configurations of objects and properties.
int indexOfChild(const QAccessibleInterface *child) const
Returns the 1-based index of the object child in this object&#39;s children list, or -1 if child is not a...
QString actionText(int action, QAccessible::Text text, int child) const
bool doAction(int action, int child, const QVariantList &params)
Asks the object, or the object&#39;s child if child is not 0, to execute action using the parameters...
int childCount() const
Returns the number of children that belong to this object.
QString text(Text t, int child) const
Returns the value of the text property t of the object, or of the object&#39;s child if child is not 0...
The QMenuBar class provides a horizontal menu bar.
Definition: qmenubar.h:62
QVariant invokeMethodEx(Method method, int child, const QVariantList &params)
The QMenu class provides a menu widget for use in menu bars, context menus, and other popup menus...
Definition: qmenu.h:72
The QAccessibleInterface class defines an interface that exposes information about accessible objects...
Definition: qaccessible.h:370
The QAccessibleActionInterface class implements support for the IAccessibleAction interface...
Definition: qaccessible2.h:329
QList< QVariant > QVariantList
Definition: qvariant.h:443
The QRect class defines a rectangle in the plane using integer precision.
Definition: qrect.h:58
int childAt(int x, int y) const
Returns the 1-based index of the child that contains the screen coordinates (x, y).
bool isValid() const
Returns true if all the data necessary to use this interface implementation is valid (e...
Text
This enum specifies string information that an accessible object returns.
Definition: qaccessible.h:259
The QAction class provides an abstract user interface action that can be inserted into widgets...
Definition: qaction.h:64
static bool localizedName(const QString &name)
Role role(int child) const
Returns the role of the object, or of the object&#39;s child if child is not 0.
The Text item allows you to add formatted text to a scene.