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

The QAccessibleListView class implements the QAccessibleInterface for list views. More...

#include <qaccessiblecompat.h>

Inheritance diagram for QAccessibleListView:
Q3AccessibleScrollView QAccessibleWidget QAccessibleObject QAccessibleInterface QAccessible

Public Functions

void clearSelection ()
 
int itemAt (int x, int y) const
 Reimplemented Function More...
 
int itemCount () const
 Reimplemented Function More...
 
QRect itemRect (int item) const
 Reimplemented Function More...
 
 QAccessibleListView (QWidget *o)
 Constructs a QAccessibleListView object for a widget. More...
 
Role role (int child) const
 Reimplemented Function More...
 
QVector< int > selection () const
 
bool setSelected (int child, bool on, bool extend)
 
State state (int child) const
 Reimplemented Function More...
 
QString text (Text t, int child) const
 Reimplemented Function More...
 
- Public Functions inherited from Q3AccessibleScrollView
 Q3AccessibleScrollView (QWidget *w, Role role)
 Constructs a Q3AccessibleScrollView object for a widget. More...
 
- Public Functions inherited from QAccessibleWidget
QString actionText (int action, Text t, int child) const
 Reimplemented Function More...
 
int childAt (int x, int y) const
 Reimplemented Function More...
 
int childCount () const
 Reimplemented Function More...
 
bool doAction (int action, int child, const QVariantList &params)
 Reimplemented Function More...
 
int indexOfChild (const QAccessibleInterface *child) const
 Reimplemented Function More...
 
int navigate (RelationFlag rel, int entry, QAccessibleInterface **target) const
 Reimplemented Function More...
 
 QAccessibleWidget (QWidget *o, Role r=Client, const QString &name=QString())
 Creates a QAccessibleWidget object for widget w. More...
 
QRect rect (int child) const
 Reimplemented Function More...
 
Relation relationTo (int child, const QAccessibleInterface *other, int otherChild) const
 Reimplemented Function More...
 
int userActionCount (int child) const
 Reimplemented Function More...
 
- Public Functions inherited from QAccessibleObject
bool isValid () const
 Reimplemented Function More...
 
QObjectobject () const
 Reimplemented Function More...
 
 QAccessibleObject (QObject *object)
 Creates a QAccessibleObject for object. More...
 
void setText (Text t, int child, const QString &text)
 Reimplemented Function More...
 
- 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

Q3ListView * listView () const
 Returns the list view. More...
 
- Protected Functions inherited from QAccessibleWidget
void addControllingSignal (const QString &signal)
 Registers signal as a controlling signal. More...
 
QObjectparentObject () const
 Returns the associated widget's parent object, which is either the parent widget, or qApp for top-level widgets. More...
 
void setAccelerator (const QString &accel)
 Sets the accelerator of this interface implementation to accel. More...
 
void setDescription (const QString &desc)
 Sets the description of this interface implementation to desc. More...
 
void setHelp (const QString &help)
 Sets the help of this interface implementation to help. More...
 
void setValue (const QString &value)
 Sets the value of this interface implementation to value. More...
 
QWidgetwidget () const
 Returns the associated widget. More...
 
 ~QAccessibleWidget ()
 Destroys this object. More...
 
- Protected Functions inherited from QAccessibleObject
virtual ~QAccessibleObject ()
 Destroys the QAccessibleObject. More...
 

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

The QAccessibleListView class implements the QAccessibleInterface for list views.

Warning
This function is not part of the public interface.

Definition at line 66 of file qaccessiblecompat.h.

Constructors and Destructors

◆ QAccessibleListView()

QAccessibleListView::QAccessibleListView ( QWidget o)
explicit

Constructs a QAccessibleListView object for a widget.

Definition at line 115 of file qaccessiblecompat.cpp.

117 {
118 }
Q3AccessibleScrollView(QWidget *w, Role role)
Constructs a Q3AccessibleScrollView object for a widget.

Functions

◆ clearSelection()

void QAccessibleListView::clearSelection ( )
Warning
This function is not part of the public interface.

Definition at line 293 of file qaccessiblecompat.cpp.

294 {
295  listView()->clearSelection();
296 }
Q3ListView * listView() const
Returns the list view.

◆ itemAt()

int QAccessibleListView::itemAt ( int  x,
int  y 
) const
virtual

Reimplemented Function

Reimplemented from Q3AccessibleScrollView.

Definition at line 128 of file qaccessiblecompat.cpp.

129 {
130  Q3ListViewItem *item = listView()->itemAt(QPoint(x, y));
131  if (!item)
132  return 0;
133 
134  Q3ListViewItemIterator it(listView());
135  int c = 1;
136  while (it.current()) {
137  if (it.current() == item)
138  return c;
139  ++c;
140  ++it;
141  }
142  return 0;
143 }
unsigned char c[8]
Definition: qnumeric_p.h:62
#define it(className, varName)
The QPoint class defines a point in the plane using integer precision.
Definition: qpoint.h:53
Q3ListView * listView() const
Returns the list view.

◆ itemCount()

int QAccessibleListView::itemCount ( ) const
virtual

Reimplemented Function

Reimplemented from Q3AccessibleScrollView.

Definition at line 155 of file qaccessiblecompat.cpp.

156 {
157  Q3ListViewItemIterator it(listView());
158  int c = 0;
159  while (it.current()) {
160  ++c;
161  ++it;
162  }
163 
164  return c;
165 }
unsigned char c[8]
Definition: qnumeric_p.h:62
#define it(className, varName)
Q3ListView * listView() const
Returns the list view.

◆ itemRect()

QRect QAccessibleListView::itemRect ( int  item) const
virtual

Reimplemented Function

Reimplemented from Q3AccessibleScrollView.

Definition at line 146 of file qaccessiblecompat.cpp.

147 {
148  Q3ListViewItem *item = findLVItem(listView(), child);
149  if (!item)
150  return QRect();
151  return listView()->itemRect(item);
152 }
The QRect class defines a rectangle in the plane using integer precision.
Definition: qrect.h:58
Q3ListView * listView() const
Returns the list view.
static Q3ListViewItem * findLVItem(Q3ListView *listView, int child)

◆ listView()

Q3ListView * QAccessibleListView::listView ( ) const
protected

Returns the list view.

Definition at line 121 of file qaccessiblecompat.cpp.

Referenced by clearSelection(), itemAt(), itemCount(), itemRect(), selection(), setSelected(), state(), and text().

122 {
123  Q_ASSERT(widget()->inherits("Q3ListView"));
124  return (Q3ListView*)widget();
125 }
#define Q_ASSERT(cond)
Definition: qglobal.h:1823
QWidget * widget() const
Returns the associated widget.

◆ role()

QAccessible::Role QAccessibleListView::role ( int  child) const
virtual

Reimplemented Function

Reimplemented from QAccessibleWidget.

Definition at line 180 of file qaccessiblecompat.cpp.

181 {
182  if (!child)
183  return Q3AccessibleScrollView::role(child);
184  return TreeItem;
185 }
Role role(int child) const
Reimplemented Function

◆ selection()

QVector< int > QAccessibleListView::selection ( ) const
Warning
This function is not part of the public interface.

Definition at line 299 of file qaccessiblecompat.cpp.

300 {
301  QVector<int> array;
302  uint size = 0;
303  int id = 1;
304  array.resize(size);
305  Q3ListViewItemIterator it(listView());
306  while (it.current()) {
307  if (it.current()->isSelected()) {
308  ++size;
309  array.resize(size);
310  array[(int)size-1] = id;
311  }
312  ++it;
313  ++id;
314  }
315  return array;
316 }
#define it(className, varName)
void resize(int size)
Sets the size of the vector to size.
Definition: qvector.h:342
unsigned int uint
Definition: qglobal.h:996
Q3ListView * listView() const
Returns the list view.

◆ setSelected()

bool QAccessibleListView::setSelected ( int  child,
bool  on,
bool  extend 
)
Warning
This function is not part of the public interface.

Definition at line 261 of file qaccessiblecompat.cpp.

262 {
263  if (!child || (extend &&
264  listView()->selectionMode() != Q3ListView::Extended &&
265  listView()->selectionMode() != Q3ListView::Multi))
266  return false;
267 
268  Q3ListViewItem *item = findLVItem(listView(), child);
269  if (!item)
270  return false;
271  if (!extend) {
272  listView()->setSelected(item, on);
273  } else {
274  Q3ListViewItem *current = listView()->currentItem();
275  if (!current)
276  return false;
277  bool down = item->itemPos() > current->itemPos();
278  Q3ListViewItemIterator it(current);
279  while (it.current()) {
280  listView()->setSelected(it.current(), on);
281  if (it.current() == item)
282  break;
283  if (down)
284  ++it;
285  else
286  --it;
287  }
288  }
289  return true;
290 }
#define it(className, varName)
Q3ListView * listView() const
Returns the list view.
static Q3ListViewItem * findLVItem(Q3ListView *listView, int child)

◆ state()

QAccessible::State QAccessibleListView::state ( int  child) const
virtual

Reimplemented Function

Reimplemented from QAccessibleWidget.

Definition at line 188 of file qaccessiblecompat.cpp.

189 {
191  Q3ListViewItem *item;
192  if (!child || !(item = findLVItem(listView(), child)))
193  return state;
194 
195  if (item->isSelectable()) {
196  if (listView()->selectionMode() == Q3ListView::Multi)
197  state |= MultiSelectable;
198  else if (listView()->selectionMode() == Q3ListView::Extended)
199  state |= ExtSelectable;
200  else if (listView()->selectionMode() == Q3ListView::Single)
201  state |= Selectable;
202  if (item->isSelected())
203  state |= Selected;
204  }
205  if (listView()->focusPolicy() != Qt::NoFocus) {
206  state |= Focusable;
207  if (item == listView()->currentItem())
208  state |= Focused;
209  }
210  if (item->childCount()) {
211  if (item->isOpen())
212  state |= Expanded;
213  else
214  state |= Collapsed;
215  }
216  if (!listView()->itemRect(item).isValid())
217  state |= Invisible;
218 
219  if (item->rtti() == Q3CheckListItem::RTTI) {
220  if (((Q3CheckListItem*)item)->isOn())
221  state|=Checked;
222  }
223  return state;
224 }
The State element defines configurations of objects and properties.
State state(int child) const
Reimplemented Function
Q3ListView * listView() const
Returns the list view.
static Q3ListViewItem * findLVItem(Q3ListView *listView, int child)
State state(int child) const
Reimplemented Function

◆ text()

QString QAccessibleListView::text ( Text  t,
int  child 
) const
virtual

Reimplemented Function

Reimplemented from QAccessibleWidget.

Definition at line 168 of file qaccessiblecompat.cpp.

169 {
170  if (!child || t != Name)
171  return Q3AccessibleScrollView::text(t, child);
172 
173  Q3ListViewItem *item = findLVItem(listView(), child);
174  if (!item)
175  return QString();
176  return item->text(0);
177 }
The QString class provides a Unicode character string.
Definition: qstring.h:83
Q3ListView * listView() const
Returns the list view.
static Q3ListViewItem * findLVItem(Q3ListView *listView, int child)
QString text(Text t, int child) const
Reimplemented Function

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