Qt 4.8
Public Functions | Protected Functions | Private Functions | List of all members
QAccessibleCalendarWidget Class Reference

#include <qaccessiblewidgets.h>

Inheritance diagram for QAccessibleCalendarWidget:
QAccessibleWidgetEx QAccessibleObjectEx QAccessibleInterfaceEx QAccessibleInterface QAccessible

Public Functions

int childAt (int x, int y) const
 Returns the 1-based index of the child that contains the screen coordinates (x, y). More...
 
int childCount () const
 Returns the number of children that belong to this object. More...
 
int indexOfChild (const QAccessibleInterface *child) const
 Returns the 1-based index of the object child in this object's children list, or -1 if child is not a child of this object. More...
 
QVariant invokeMethodEx (QAccessible::Method method, int child, const QVariantList &params)
 
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. More...
 
 QAccessibleCalendarWidget (QWidget *widget)
 
QRect rect (int child) const
 Returns the geometry of the object, or of the object's child if child is not 0. More...
 
- Public Functions inherited from QAccessibleWidgetEx
QString actionText (int action, Text t, int child) const
 Returns the text property t of the action action supported by the object, or of the object's child if child is not 0. More...
 
bool doAction (int action, int child, const QVariantList &params)
 Asks the object, or the object's child if child is not 0, to execute action using the parameters, params. More...
 
 QAccessibleWidgetEx (QWidget *o, Role r=Client, const QString &name=QString())
 
Relation relationTo (int child, const QAccessibleInterface *other, int otherChild) const
 
Returns the relationship between this object's \a child and the \a
other object's \a otherChild.
More...
 
Role role (int child) const
 Returns the role of the object, or of the object's child if child is not 0. More...
 
State state (int child) const
 Returns the current state of the object, or of the object's child if child is not 0. More...
 
QString text (Text t, int child) const
 Returns the value of the text property t of the object, or of the object's child if child is not 0. More...
 
- Public Functions inherited from QAccessibleObjectEx
bool isValid () const
 Returns true if all the data necessary to use this interface implementation is valid (e. More...
 
QObjectobject () const
 Returns a pointer to the QObject this interface implementation provides information for. More...
 
 QAccessibleObjectEx (QObject *object)
 
void setText (Text t, int child, const QString &text)
 Sets the text property t of the object, or of the object's child if child is not 0, to text. More...
 
int userActionCount (int child) const
 Returns the number of custom actions of the object, or of the object's child if child is not 0. More...
 
- Public Functions inherited from QAccessibleInterfaceEx
virtual QAccessible2Interfaceinterface_cast (QAccessible2::InterfaceType)
 
virtual QVariant virtual_hook (const QVariant &data)
 
- Public Functions inherited from QAccessibleInterface
QAccessibleActionInterfaceactionInterface ()
 
QColor backgroundColor ()
 
QAccessibleEditableTextInterfaceeditableTextInterface ()
 
QColor foregroundColor ()
 
QAccessibleImageInterfaceimageInterface ()
 
QVariant invokeMethod (Method method, int child=0, const QVariantList &params=QVariantList())
 Invokes a method on child with the given parameters params and returns the result of the operation as QVariant. More...
 
QSet< MethodsupportedMethods ()
 Returns a QSet of QAccessible::Method that are supported by this accessible interface. More...
 
QAccessibleTable2Interfacetable2Interface ()
 
QAccessibleTableInterfacetableInterface ()
 
QAccessibleTextInterfacetextInterface ()
 
QAccessibleValueInterfacevalueInterface ()
 
virtual ~QAccessibleInterface ()
 Destroys the object. More...
 

Protected Functions

QCalendarWidgetcalendarWidget () const
 
- Protected Functions inherited from QAccessibleWidgetEx
void addControllingSignal (const QString &signal)
 
QObjectparentObject () const
 
void setAccelerator (const QString &accel)
 
void setDescription (const QString &desc)
 
void setHelp (const QString &help)
 
void setValue (const QString &value)
 
QWidgetwidget () const
 
 ~QAccessibleWidgetEx ()
 
- Protected Functions inherited from QAccessibleObjectEx
virtual ~QAccessibleObjectEx ()
 

Private Functions

QAbstractItemViewcalendarView () const
 
QWidgetnavigationBar () const
 

Additional Inherited Members

- Public Types inherited from QAccessible
enum  Action {
  DefaultAction = 0, Press = -1, FirstStandardAction = Press, SetFocus = -2,
  Increase = -3, Decrease = -4, Accept = -5, Cancel = -6,
  Select = -7, ClearSelection = -8, RemoveSelection = -9, ExtendSelection = -10,
  AddToSelection = -11, LastStandardAction = AddToSelection
}
 This enum describes the possible types of action that can occur. More...
 
enum  Event {
  SoundPlayed = 0x0001, Alert = 0x0002, ForegroundChanged = 0x0003, MenuStart = 0x0004,
  MenuEnd = 0x0005, PopupMenuStart = 0x0006, PopupMenuEnd = 0x0007, ContextHelpStart = 0x000C,
  ContextHelpEnd = 0x000D, DragDropStart = 0x000E, DragDropEnd = 0x000F, DialogStart = 0x0010,
  DialogEnd = 0x0011, ScrollingStart = 0x0012, ScrollingEnd = 0x0013, MenuCommand = 0x0018,
  ActionChanged = 0x0101, ActiveDescendantChanged = 0x0102, AttributeChanged = 0x0103, DocumentContentChanged = 0x0104,
  DocumentLoadComplete = 0x0105, DocumentLoadStopped = 0x0106, DocumentReload = 0x0107, HyperlinkEndIndexChanged = 0x0108,
  HyperlinkNumberOfAnchorsChanged = 0x0109, HyperlinkSelectedLinkChanged = 0x010A, HypertextLinkActivated = 0x010B, HypertextLinkSelected = 0x010C,
  HyperlinkStartIndexChanged = 0x010D, HypertextChanged = 0x010E, HypertextNLinksChanged = 0x010F, ObjectAttributeChanged = 0x0110,
  PageChanged = 0x0111, SectionChanged = 0x0112, TableCaptionChanged = 0x0113, TableColumnDescriptionChanged = 0x0114,
  TableColumnHeaderChanged = 0x0115, TableModelChanged = 0x0116, TableRowDescriptionChanged = 0x0117, TableRowHeaderChanged = 0x0118,
  TableSummaryChanged = 0x0119, TextAttributeChanged = 0x011A, TextCaretMoved = 0x011B, TextColumnChanged = 0x011D,
  TextInserted = 0x011E, TextRemoved = 0x011F, TextUpdated = 0x0120, TextSelectionChanged = 0x0121,
  VisibleDataChanged = 0x0122, ObjectCreated = 0x8000, ObjectDestroyed = 0x8001, ObjectShow = 0x8002,
  ObjectHide = 0x8003, ObjectReorder = 0x8004, Focus = 0x8005, Selection = 0x8006,
  SelectionAdd = 0x8007, SelectionRemove = 0x8008, SelectionWithin = 0x8009, StateChanged = 0x800A,
  LocationChanged = 0x800B, NameChanged = 0x800C, DescriptionChanged = 0x800D, ValueChanged = 0x800E,
  ParentChanged = 0x800F, HelpChanged = 0x80A0, DefaultActionChanged = 0x80B0, AcceleratorChanged = 0x80C0
}
 This enum type defines accessible event types. More...
 
typedef QAccessibleInterface *(* InterfaceFactory) (const QString &key, QObject *)
 This is a typedef for a pointer to a function with the following signature: More...
 
enum  Method {
  ListSupportedMethods = 0, SetCursorPosition = 1, GetCursorPosition = 2, ForegroundColor = 3,
  BackgroundColor = 4
}
 This enum describes the possible types of methods that can be invoked on an accessible object. More...
 
enum  RelationFlag {
  Unrelated = 0x00000000, Self = 0x00000001, Ancestor = 0x00000002, Child = 0x00000004,
  Descendent = 0x00000008, Sibling = 0x00000010, HierarchyMask = 0x000000ff, Up = 0x00000100,
  Down = 0x00000200, Left = 0x00000400, Right = 0x00000800, Covers = 0x00001000,
  Covered = 0x00002000, GeometryMask = 0x0000ff00, FocusChild = 0x00010000, Label = 0x00020000,
  Labelled = 0x00040000, Controller = 0x00080000, Controlled = 0x00100000, LogicalMask = 0x00ff0000
}
 This enum type defines bit flags that can be combined to indicate the relationship between two accessible objects. More...
 
enum  Role {
  NoRole = 0x00000000, TitleBar = 0x00000001, MenuBar = 0x00000002, ScrollBar = 0x00000003,
  Grip = 0x00000004, Sound = 0x00000005, Cursor = 0x00000006, Caret = 0x00000007,
  AlertMessage = 0x00000008, Window = 0x00000009, Client = 0x0000000A, PopupMenu = 0x0000000B,
  MenuItem = 0x0000000C, ToolTip = 0x0000000D, Application = 0x0000000E, Document = 0x0000000F,
  Pane = 0x00000010, Chart = 0x00000011, Dialog = 0x00000012, Border = 0x00000013,
  Grouping = 0x00000014, Separator = 0x00000015, ToolBar = 0x00000016, StatusBar = 0x00000017,
  Table = 0x00000018, ColumnHeader = 0x00000019, RowHeader = 0x0000001A, Column = 0x0000001B,
  Row = 0x0000001C, Cell = 0x0000001D, Link = 0x0000001E, HelpBalloon = 0x0000001F,
  Assistant = 0x00000020, List = 0x00000021, ListItem = 0x00000022, Tree = 0x00000023,
  TreeItem = 0x00000024, PageTab = 0x00000025, PropertyPage = 0x00000026, Indicator = 0x00000027,
  Graphic = 0x00000028, StaticText = 0x00000029, EditableText = 0x0000002A, PushButton = 0x0000002B,
  CheckBox = 0x0000002C, RadioButton = 0x0000002D, ComboBox = 0x0000002E, ProgressBar = 0x00000030,
  Dial = 0x00000031, HotkeyField = 0x00000032, Slider = 0x00000033, SpinBox = 0x00000034,
  Canvas = 0x00000035, Animation = 0x00000036, Equation = 0x00000037, ButtonDropDown = 0x00000038,
  ButtonMenu = 0x00000039, ButtonDropGrid = 0x0000003A, Whitespace = 0x0000003B, PageTabList = 0x0000003C,
  Clock = 0x0000003D, Splitter = 0x0000003E, LayeredPane = 0x0000003F, Terminal = 0x00000040,
  Desktop = 0x00000041, UserRole = 0x0000ffff
}
 This enum defines the role of an accessible object. More...
 
typedef void(* RootObjectHandler) (QObject *)
 A function pointer type. More...
 
enum  StateFlag {
  Normal = 0x00000000, Unavailable = 0x00000001, Selected = 0x00000002, Focused = 0x00000004,
  Pressed = 0x00000008, Checked = 0x00000010, Mixed = 0x00000020, ReadOnly = 0x00000040,
  HotTracked = 0x00000080, DefaultButton = 0x00000100, Expanded = 0x00000200, Collapsed = 0x00000400,
  Busy = 0x00000800, Marqueed = 0x00002000, Animated = 0x00004000, Invisible = 0x00008000,
  Offscreen = 0x00010000, Sizeable = 0x00020000, Movable = 0x00040000, SelfVoicing = 0x00080000,
  Focusable = 0x00100000, Selectable = 0x00200000, Linked = 0x00400000, Traversed = 0x00800000,
  MultiSelectable = 0x01000000, ExtSelectable = 0x02000000, Protected = 0x20000000, HasPopup = 0x40000000,
  Modal = 0x80000000, HasInvokeExtension = 0x10000000
}
 This enum type defines bit flags that can be combined to indicate the state of an accessible object. More...
 
enum  Text {
  Name = 0, Description, Value, Help,
  Accelerator, UserText = 0x0000ffff
}
 This enum specifies string information that an accessible object returns. More...
 
typedef void(* UpdateHandler) (QObject *, int who, Event reason)
 A function pointer type. More...
 
- Static Public Functions inherited from QAccessible
static void cleanup ()
 
static void initialize ()
 
static void installFactory (InterfaceFactory)
 Installs the InterfaceFactory factory. More...
 
static RootObjectHandler installRootObjectHandler (RootObjectHandler)
 Installs the given handler as the function to be used by setRootObject(), and returns the previously installed handler. More...
 
static UpdateHandler installUpdateHandler (UpdateHandler)
 Installs the given handler as the function to be used by updateAccessibility(), and returns the previously installed handler. More...
 
static bool isActive ()
 Returns true if an accessibility implementation has been requested during the runtime of the application; otherwise returns false. More...
 
static QAccessibleInterfacequeryAccessibleInterface (QObject *)
 If a QAccessibleInterface implementation exists for the given object, this function returns a pointer to the implementation; otherwise it returns 0. More...
 
static void removeFactory (InterfaceFactory)
 Removes factory from the list of installed InterfaceFactories. More...
 
static void setRootObject (QObject *)
 Sets the root accessible object of this application to object. More...
 
static void updateAccessibility (QObject *, int who, Event reason)
 Notifies accessibility clients about a change in object's accessibility information. More...
 

Detailed Description

Definition at line 288 of file qaccessiblewidgets.h.

Constructors and Destructors

◆ QAccessibleCalendarWidget()

QAccessibleCalendarWidget::QAccessibleCalendarWidget ( QWidget widget)
explicit

Definition at line 930 of file qaccessiblewidgets.cpp.

931  : QAccessibleWidgetEx(widget, Table)
932 {
933  Q_ASSERT(qobject_cast<QCalendarWidget *>(widget));
934 }
#define Q_ASSERT(cond)
Definition: qglobal.h:1823
QAccessibleWidgetEx(QWidget *o, Role r=Client, const QString &name=QString())

Functions

◆ calendarView()

QAbstractItemView * QAccessibleCalendarWidget::calendarView ( ) const
private

Definition at line 1018 of file qaccessiblewidgets.cpp.

Referenced by navigate(), and rect().

1019 {
1020  foreach (QObject *child, calendarWidget()->children()) {
1021  if (child->objectName() == QLatin1String("qt_calendar_calendarview"))
1022  return static_cast<QAbstractItemView *>(child);
1023  }
1024  return 0;
1025 }
QString objectName
the name of this object
Definition: qobject.h:114
QLatin1String(DBUS_INTERFACE_DBUS))) Q_GLOBAL_STATIC_WITH_ARGS(QString
The QObject class is the base class of all Qt objects.
Definition: qobject.h:111
QCalendarWidget * calendarWidget() const

◆ calendarWidget()

QCalendarWidget * QAccessibleCalendarWidget::calendarWidget ( ) const
protected

Definition at line 1013 of file qaccessiblewidgets.cpp.

Referenced by calendarView(), childCount(), navigationBar(), and rect().

1014 {
1015  return static_cast<QCalendarWidget *>(object());
1016 }
QObject * object() const
Returns a pointer to the QObject this interface implementation provides information for...
The QCalendarWidget class provides a monthly based calendar widget allowing the user to select a date...

◆ childAt()

int QAccessibleCalendarWidget::childAt ( int  x,
int  y 
) const
virtual

Returns the 1-based index of the child that contains the screen coordinates (x, y).

This function returns 0 if the point is positioned on the object itself. If the tested point is outside the boundaries of the object this function returns -1.

This function is only relyable for visible objects (invisible object might not be laid out correctly).

All visual objects provide this information.

See also
rect()

Reimplemented from QAccessibleWidgetEx.

Definition at line 1001 of file qaccessiblewidgets.cpp.

1002 {
1003  const QPoint globalTargetPos = QPoint(x, y);
1004  if (!rect(0).contains(globalTargetPos))
1005  return -1;
1006  if (rect(1).contains(globalTargetPos))
1007  return 1;
1008  if (rect(2).contains(globalTargetPos))
1009  return 2;
1010  return 0;
1011 }
The QPoint class defines a point in the plane using integer precision.
Definition: qpoint.h:53
QRect rect(int child) const
Returns the geometry of the object, or of the object&#39;s child if child is not 0.

◆ childCount()

int QAccessibleCalendarWidget::childCount ( ) const
virtual

Returns the number of children that belong to this object.

A child can provide accessibility information on its own (e.g. a child widget), or be a sub-element of this accessible object.

All objects provide this information.

See also
indexOfChild()

Reimplemented from QAccessibleWidgetEx.

Definition at line 941 of file qaccessiblewidgets.cpp.

Referenced by indexOfChild(), navigate(), and rect().

942 {
943  return calendarWidget()->isNavigationBarVisible() ? 2 : 1;
944 }
bool isNavigationBarVisible() const
QCalendarWidget * calendarWidget() const

◆ indexOfChild()

int QAccessibleCalendarWidget::indexOfChild ( const QAccessibleInterface child) const
virtual

Returns the 1-based index of the object child in this object's children list, or -1 if child is not a child of this object.

0 is not a possible return value.

All objects provide this information about their children.

See also
childCount()

Reimplemented from QAccessibleWidgetEx.

Definition at line 946 of file qaccessiblewidgets.cpp.

947 {
948  if (!child || !child->object() || childCount() <= 0)
949  return -1;
950  if (qobject_cast<QAbstractItemView *>(child->object()))
951  return childCount();
952  return 1;
953 }
virtual QObject * object() const =0
Returns a pointer to the QObject this interface implementation provides information for...
int childCount() const
Returns the number of children that belong to this object.

◆ invokeMethodEx()

QVariant QAccessibleCalendarWidget::invokeMethodEx ( QAccessible::Method  method,
int  child,
const QVariantList params 
)
virtual

Reimplemented from QAccessibleWidgetEx.

Definition at line 936 of file qaccessiblewidgets.cpp.

937 {
938  return QVariant();
939 }
The QVariant class acts like a union for the most common Qt data types.
Definition: qvariant.h:92

◆ navigate()

int QAccessibleCalendarWidget::navigate ( RelationFlag  relation,
int  index,
QAccessibleInterface **  iface 
) const
virtual

Navigates from this object to an object that has a relationship relation to this object, and returns the respective object in target.

It is the caller's responsibility to delete *target after use.

If an object is found, target is set to point to the object, and the index of the child of target is returned. The return value is 0 if target itself is the requested object. target is set to null if this object is the target object (i.e. the requested object is a handled by this object).

If no object is found target is set to null, and the return value is -1.

The entry parameter has two different meanings:

  • Hierarchical and Logical relationships – if multiple objects with the requested relationship exist entry specifies which one to return. entry is 1-based, e.g. use 1 to get the first (and possibly only) object with the requested relationship.

    The following code demonstrates how to use this function to navigate to the first child of an object:

    int targetChild = object->navigate(Accessible::Child, 1, &child);
    if (child) {
    // ...
    delete child;
    }
  • Geometric relationships – the index of the child from which to start navigating in the specified direction. entry can be 0 to navigate to a sibling of this object, or non-null to navigate within contained children that don't provide their own accessible information.

Note that the Descendent value for relation is not supported.

All objects support navigation.

See also
relationTo(), childCount()

Reimplemented from QAccessibleWidgetEx.

Definition at line 955 of file qaccessiblewidgets.cpp.

956 {
957  *target = 0;
958  if (entry <= 0 || entry > childCount())
959  return QAccessibleWidgetEx::navigate(relation, entry, target);
960  QWidget *targetWidget = 0;
961  switch (relation) {
962  case Child:
963  if (childCount() == 1) {
964  targetWidget = calendarView();
965  } else {
966  if (entry == 1)
967  targetWidget = navigationBar();
968  else
969  targetWidget = calendarView();
970  }
971  break;
972  case Up:
973  if (entry == 2)
974  targetWidget = navigationBar();
975  break;
976  case Down:
977  if (entry == 1 && childCount() == 2)
978  targetWidget = calendarView();
979  break;
980  default:
981  return QAccessibleWidgetEx::navigate(relation, entry, target);
982  }
983  *target = queryAccessibleInterface(targetWidget);
984  return *target ? 0: -1;
985 }
The QWidget class is the base class of all user interface objects.
Definition: qwidget.h:150
static QAccessibleInterface * queryAccessibleInterface(QObject *)
If a QAccessibleInterface implementation exists for the given object, this function returns a pointer...
int childCount() const
Returns the number of children that belong to this object.
int navigate(RelationFlag rel, 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.
QAbstractItemView * calendarView() const

◆ navigationBar()

QWidget * QAccessibleCalendarWidget::navigationBar ( ) const
private

Definition at line 1027 of file qaccessiblewidgets.cpp.

Referenced by navigate(), and rect().

1028 {
1029  foreach (QObject *child, calendarWidget()->children()) {
1030  if (child->objectName() == QLatin1String("qt_calendar_navigationbar"))
1031  return static_cast<QWidget *>(child);
1032  }
1033  return 0;
1034 }
QString objectName
the name of this object
Definition: qobject.h:114
QLatin1String(DBUS_INTERFACE_DBUS))) Q_GLOBAL_STATIC_WITH_ARGS(QString
The QObject class is the base class of all Qt objects.
Definition: qobject.h:111
QCalendarWidget * calendarWidget() const

◆ rect()

QRect QAccessibleCalendarWidget::rect ( int  child) const
virtual

Returns the geometry of the object, or of the object's child if child is not 0.

The geometry is in screen coordinates.

This function is only reliable for visible objects (invisible objects might not be laid out correctly).

All visual objects provide this information.

See also
childAt()

Reimplemented from QAccessibleWidgetEx.

Definition at line 987 of file qaccessiblewidgets.cpp.

Referenced by childAt().

988 {
989  if (!calendarWidget()->isVisible() || child > childCount())
990  return QRect();
991  if (child == 0)
992  return QAccessibleWidgetEx::rect(child);
993  QWidget *childWidget = 0;
994  if (childCount() == 2)
995  childWidget = child == 1 ? navigationBar() : calendarView();
996  else
997  childWidget = calendarView();
998  return QRect(childWidget->mapToGlobal(QPoint(0, 0)), childWidget->size());
999 }
The QWidget class is the base class of all user interface objects.
Definition: qwidget.h:150
QRect rect(int child) const
Returns the geometry of the object, or of the object&#39;s child if child is not 0.
QCalendarWidget * calendarWidget() const
QSize size
the size of the widget excluding any window frame
Definition: qwidget.h:165
The QPoint class defines a point in the plane using integer precision.
Definition: qpoint.h:53
The QRect class defines a rectangle in the plane using integer precision.
Definition: qrect.h:58
int childCount() const
Returns the number of children that belong to this object.
QAbstractItemView * calendarView() const
QPoint mapToGlobal(const QPoint &) const
Translates the widget coordinate pos to global screen coordinates.

The documentation for this class was generated from the following files: