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

The QAccessibleScrollBar class implements the QAccessibleInterface for scroll bars. More...

#include <rangecontrols.h>

Inheritance diagram for QAccessibleScrollBar:
QAccessibleAbstractSlider QAccessibleWidgetEx QAccessibleValueInterface QAccessibleObjectEx QAccessible2Interface QAccessibleInterfaceEx QAccessibleInterface QAccessible

Public Types

enum  ScrollBarElements {
  ScrollBarSelf = 0, LineUp, PageUp, Position,
  PageDown, LineDown
}
 This enum identifies the components of the scroll bar. More...
 
- 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...
 

Public Functions

int childCount () const
 Reimplemented Function More...
 
 QAccessibleScrollBar (QWidget *w)
 Constructs a QAccessibleScrollBar object for w. More...
 
QRect rect (int child) const
 Reimplemented Function More...
 
Role role (int child) const
 Reimplemented Function More...
 
State state (int child) const
 Reimplemented Function More...
 
QString text (Text t, int child) const
 Reimplemented Function More...
 
- Public Functions inherited from QAccessibleAbstractSlider
QVariant currentValue ()
 
QVariant invokeMethodEx (Method method, int child, const QVariantList &params)
 
QVariant maximumValue ()
 
QVariant minimumValue ()
 
 QAccessibleAbstractSlider (QWidget *w, Role r=Slider)
 
void setCurrentValue (const QVariant &value)
 
- 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...
 
int childAt (int x, int y) const
 Returns the 1-based index of the child that contains the screen coordinates (x, y). 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...
 
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...
 
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. 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...
 
- 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...
 
- Public Functions inherited from QAccessibleValueInterface
QAccessible2InterfaceqAccessibleValueCastHelper ()
 
virtual ~QAccessibleValueInterface ()
 
- Public Functions inherited from QAccessible2Interface
virtual ~QAccessible2Interface ()
 

Protected Functions

QScrollBarscrollBar () const
 Returns the scroll bar. More...
 
- Protected Functions inherited from QAccessibleAbstractSlider
QAbstractSliderabstractSlider () 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 ()
 

Additional Inherited Members

- 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 QAccessibleScrollBar class implements the QAccessibleInterface for scroll bars.

Warning
This function is not part of the public interface.

Definition at line 153 of file rangecontrols.h.

Enumerations

◆ ScrollBarElements

This enum identifies the components of the scroll bar.

  • ScrollBarSelf The scroll bar as a whole.
  • LineUp The up arrow button.
  • PageUp The area between the position and the up arrow button.
  • Position The position marking rectangle.
  • PageDown The area between the position and the down arrow button.
  • LineDown The down arrow button.
Enumerator
ScrollBarSelf 
LineUp 
PageUp 
Position 
PageDown 
LineDown 

Definition at line 158 of file rangecontrols.h.

Constructors and Destructors

◆ QAccessibleScrollBar()

QAccessibleScrollBar::QAccessibleScrollBar ( QWidget w)
explicit

Constructs a QAccessibleScrollBar object for w.

name is propagated to the QAccessibleWidgetEx constructor.

Definition at line 499 of file rangecontrols.cpp.

501 {
502  Q_ASSERT(scrollBar());
503  addControllingSignal(QLatin1String("valueChanged(int)"));
504 }
QAccessibleAbstractSlider(QWidget *w, Role r=Slider)
QLatin1String(DBUS_INTERFACE_DBUS))) Q_GLOBAL_STATIC_WITH_ARGS(QString
#define Q_ASSERT(cond)
Definition: qglobal.h:1823
QScrollBar * scrollBar() const
Returns the scroll bar.
void addControllingSignal(const QString &signal)

Functions

◆ childCount()

int QAccessibleScrollBar::childCount ( ) const
virtual

Reimplemented Function

Reimplemented from QAccessibleWidgetEx.

Definition at line 547 of file rangecontrols.cpp.

548 {
549  return LineDown;
550 }

◆ rect()

QRect QAccessibleScrollBar::rect ( int  child) const
virtual

Reimplemented Function

Reimplemented from QAccessibleWidgetEx.

Definition at line 513 of file rangecontrols.cpp.

514 {
515  if (!scrollBar()->isVisible())
516  return QRect();
517 
518  QStyle::SubControl subControl;
519  switch (child) {
520  case LineUp:
521  subControl = QStyle ::SC_ScrollBarSubLine;
522  break;
523  case PageUp:
524  subControl = QStyle::SC_ScrollBarSubPage;
525  break;
526  case Position:
527  subControl = QStyle::SC_ScrollBarSlider;
528  break;
529  case PageDown:
530  subControl = QStyle::SC_ScrollBarAddPage;
531  break;
532  case LineDown:
533  subControl = QStyle::SC_ScrollBarAddLine;
534  break;
535  default:
536  return QAccessibleAbstractSlider::rect(child);
537  }
538 
541  subControl, scrollBar());
542  const QPoint tp = scrollBar()->mapToGlobal(QPoint(0,0));
543  return QRect(tp.x() + rect.x(), tp.y() + rect.y(), rect.width(), rect.height());
544 }
SubControl
This enum describes the available sub controls.
Definition: qstyle.h:402
virtual QRect subControlRect(ComplexControl cc, const QStyleOptionComplex *opt, SubControl sc, const QWidget *widget=0) const =0
Returns the rectangle containing the specified subControl of the given complex control (with the styl...
int width() const
Returns the width of the rectangle.
Definition: qrect.h:303
int height() const
Returns the height of the rectangle.
Definition: qrect.h:306
QRect rect(int child) const
Reimplemented Function
QStyle * style() const
Definition: qwidget.cpp:2742
QScrollBar * scrollBar() const
Returns the scroll bar.
QRect rect(int child) const
Returns the geometry of the object, or of the object&#39;s child if child is not 0.
int y() const
Returns the y-coordinate of the rectangle&#39;s top edge.
Definition: qrect.h:255
QStyleOptionSlider Q_GUI_EXPORT qt_qscrollbarStyleOption(QScrollBar *scrollBar)
Returns the style option for scroll bar.
Definition: qscrollbar.cpp:766
int x() const
Returns the x-coordinate of the rectangle&#39;s left edge.
Definition: qrect.h:252
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 y() const
Returns the y coordinate of this point.
Definition: qpoint.h:131
The QStyleOptionSlider class is used to describe the parameters needed for drawing a slider...
Definition: qstyleoption.h:701
int x() const
Returns the x coordinate of this point.
Definition: qpoint.h:128
QPoint mapToGlobal(const QPoint &) const
Translates the widget coordinate pos to global screen coordinates.

◆ role()

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

Reimplemented Function

Reimplemented from QAccessibleWidgetEx.

Definition at line 581 of file rangecontrols.cpp.

◆ scrollBar()

QScrollBar * QAccessibleScrollBar::scrollBar ( ) const
protected

Returns the scroll bar.

Definition at line 507 of file rangecontrols.cpp.

Referenced by QAccessibleScrollBar(), rect(), state(), and text().

508 {
509  return qobject_cast<QScrollBar*>(object());
510 }
T qobject_cast(QObject *object)
Definition: qobject.h:375
QObject * object() const
Returns a pointer to the QObject this interface implementation provides information for...
The QScrollBar widget provides a vertical or horizontal scroll bar.
Definition: qscrollbar.h:59

◆ state()

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

Reimplemented Function

Reimplemented from QAccessibleWidgetEx.

Definition at line 597 of file rangecontrols.cpp.

598 {
599  const State parentState = QAccessibleAbstractSlider::state(0);
600 
601  if (child == 0)
602  return parentState;
603 
604  // Inherit the Invisible state from parent.
605  State state = parentState & QAccessible::Invisible;
606 
607  // Disable left/right if we are at the minimum/maximum.
609  switch (child) {
610  case LineUp:
611  case PageUp:
612  if (scrollBar->value() <= scrollBar->minimum())
613  state |= Unavailable;
614  break;
615  case LineDown:
616  case PageDown:
617  if (scrollBar->value() >= scrollBar->maximum())
618  state |= Unavailable;
619  break;
620  case Position:
621  default:
622  break;
623  }
624 
625  return state;
626 }
State state(int child) const
Reimplemented Function
int minimum() const
The QScrollBar widget provides a vertical or horizontal scroll bar.
Definition: qscrollbar.h:59
int value() const
QScrollBar * scrollBar() const
Returns the scroll bar.
The State element defines configurations of objects and properties.
int maximum() const
State state(int child) const
Returns the current state of the object, or of the object&#39;s child if child is not 0...

◆ text()

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

Reimplemented Function

Reimplemented from QAccessibleWidgetEx.

Definition at line 553 of file rangecontrols.cpp.

554 {
555  switch (t) {
556  case Value:
557  if (!child || child == Position)
558  return QString::number(scrollBar()->value());
559  return QString();
560  case Name:
561  switch (child) {
562  case LineUp:
563  return QScrollBar::tr("Line up");
564  case PageUp:
565  return QScrollBar::tr("Page up");
566  case Position:
567  return QScrollBar::tr("Position");
568  case PageDown:
569  return QScrollBar::tr("Page down");
570  case LineDown:
571  return QScrollBar::tr("Line down");
572  }
573  break;
574  default:
575  break;
576  }
577  return QAccessibleAbstractSlider::text(t, child);
578 }
static QString number(int, int base=10)
This is an overloaded member function, provided for convenience. It differs from the above function o...
Definition: qstring.cpp:6448
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...
static QString tr(const char *sourceText, const char *comment=0, int n=-1)
The QString class provides a Unicode character string.
Definition: qstring.h:83
QScrollBar * scrollBar() const
Returns the scroll bar.

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