

Definition at line 39 of file main.cpp.
Public Member Functions | |
| AccessibleFactory () | |
| QStringList | keys () const |
| QAccessibleInterface * | create (const QString &classname, QObject *object) |
| QStringList AccessibleFactory::keys | ( | ) | const [virtual] |
Returns the list of keys this plugin supports.
These keys must be the class names that this plugin provides an accessibility implementation for.
Implements QAccessiblePlugin.
Definition at line 52 of file main.cpp.
00053 { 00054 QStringList list; 00055 #ifndef QT_NO_LINEEDIT 00056 list << "QLineEdit"; 00057 #endif 00058 #ifndef QT_NO_COMBOBOX 00059 list << "QComboBox"; 00060 #endif 00061 #ifndef QT_NO_SPINBOX 00062 list << "QSpinBox"; 00063 #endif 00064 #ifndef QT_NO_SCROLLBAR 00065 list << "QScrollBar"; 00066 #endif 00067 #ifndef QT_NO_SLIDER 00068 list << "QSlider"; 00069 #endif 00070 #ifndef QT_NO_TOOLBUTTON 00071 list << "QToolButton"; 00072 #endif 00073 list << "QCheckBox"; 00074 list << "QRadioButton"; 00075 list << "QPushButton"; 00076 list << "QButton"; 00077 list << "QDialog"; 00078 list << "QMessageBox"; 00079 list << "QMainWindow"; 00080 list << "QLabel"; 00081 list << "QLCDNumber"; 00082 list << "QGroupBox"; 00083 list << "QStatusBar"; 00084 list << "QProgressBar"; 00085 list << "QMenuBar"; 00086 list << "Q3PopupMenu"; 00087 list << "QMenu"; 00088 list << "QHeaderView"; 00089 list << "QTabBar"; 00090 list << "QToolBar"; 00091 list << "QWorkspaceChild"; 00092 list << "QSizeGrip"; 00093 list << "QAbstractItemView"; 00094 #ifndef QT_NO_SPLITTER 00095 list << "QSplitter"; 00096 list << "QSplitterHandle"; 00097 #endif 00098 #ifndef QT_NO_TEXTEDIT 00099 list << "QTextEdit"; 00100 #endif 00101 list << "QTipLabel"; 00102 list << "QFrame"; 00103 list << "QWidgetStack"; 00104 00105 return list; 00106 }
| QAccessibleInterface * AccessibleFactory::create | ( | const QString & | classname, | |
| QObject * | object | |||
| ) | [virtual] |
Creates and returns a QAccessibleInterface implementation for the class key and the object object. Keys are case sensitive.
Implements QAccessiblePlugin.
Definition at line 108 of file main.cpp.
References QAccessible::AlertMessage, QAccessible::Application, QAccessible::Border, QAccessible::ButtonDropDown, QAccessible::ButtonMenu, QAccessible::CheckBox, QToolButton::DelayedPopup, QAccessible::Grip, QAccessible::Grouping, QAbstractButton::isCheckable(), QPushButton::menu(), QAccessible::NoRole, object, QAccessible::PushButton, QAccessible::RadioButton, QAccessible::Splitter, QAccessible::StatusBar, tb, QAccessible::ToolTip, and QWidget::windowTitle().
00109 { 00110 QAccessibleInterface *iface = 0; 00111 if (!object || !object->isWidgetType()) 00112 return iface; 00113 QWidget *widget = static_cast<QWidget*>(object); 00114 00115 if (false) { 00116 #ifndef QT_NO_LINEEDIT 00117 } else if (classname == "QLineEdit") { 00118 iface = new QAccessibleLineEdit(widget); 00119 #endif 00120 #ifndef QT_NO_COMBOBOX 00121 } else if (classname == "QComboBox") { 00122 iface = new QAccessibleComboBox(widget); 00123 #endif 00124 #ifndef QT_NO_SPINBOX 00125 } else if (classname == "QSpinBox") { 00126 iface = new QAccessibleSpinBox(widget); 00127 #endif 00128 #ifndef QT_NO_SCROLLBAR 00129 } else if (classname == "QScrollBar") { 00130 iface = new QAccessibleScrollBar(widget); 00131 #endif 00132 #ifndef QT_NO_SLIDER 00133 } else if (classname == "QSlider") { 00134 iface = new QAccessibleSlider(widget); 00135 #endif 00136 #ifndef QT_NO_TOOLBUTTON 00137 } else if (classname == "QToolButton") { 00138 Role role = NoRole; 00139 QToolButton *tb = qobject_cast<QToolButton*>(widget); 00140 #ifndef QT_NO_MENU 00141 if (!tb->menu()) 00142 role = tb->isCheckable() ? CheckBox : PushButton; 00143 else if (!tb->popupMode() != QToolButton::DelayedPopup) 00144 role = ButtonDropDown; 00145 else 00146 #endif 00147 role = ButtonMenu; 00148 iface = new QAccessibleToolButton(widget, role); 00149 #endif // QT_NO_TOOLBUTTON 00150 } else if (classname == "QCheckBox") { 00151 iface = new QAccessibleButton(widget, CheckBox); 00152 } else if (classname == "QRadioButton") { 00153 iface = new QAccessibleButton(widget, RadioButton); 00154 } else if (classname == "QPushButton") { 00155 Role role = NoRole; 00156 QPushButton *pb = qobject_cast<QPushButton*>(widget); 00157 #ifndef QT_NO_MENU 00158 if (pb->menu()) 00159 role = ButtonMenu; 00160 else 00161 #endif 00162 if (pb->isCheckable()) 00163 role = CheckBox; 00164 else 00165 role = PushButton; 00166 iface = new QAccessibleButton(widget, role); 00167 } else if (classname == "QButton") { 00168 iface = new QAccessibleButton(widget, PushButton); 00169 } else if (classname == "QDialog") { 00170 iface = new QAccessibleWidget(widget, Dialog); 00171 } else if (classname == "QMessageBox") { 00172 iface = new QAccessibleWidget(widget, AlertMessage); 00173 } else if (classname == "QMainWindow") { 00174 iface = new QAccessibleWidget(widget, Application); 00175 } else if (classname == "QLabel" || classname == "QLCDNumber") { 00176 iface = new QAccessibleDisplay(widget); 00177 } else if (classname == "QGroupBox") { 00178 iface = new QAccessibleDisplay(widget, Grouping); 00179 } else if (classname == "QStatusBar") { 00180 iface = new QAccessibleWidget(widget, StatusBar); 00181 } else if (classname == "QProgressBar") { 00182 iface = new QAccessibleDisplay(widget); 00183 } else if (classname == "QToolBar") { 00184 iface = new QAccessibleWidget(widget, ToolBar, widget->windowTitle()); 00185 #ifndef QT_NO_MENUBAR 00186 } else if (classname == "QMenuBar") { 00187 iface = new QAccessibleMenuBar(widget); 00188 #endif 00189 #ifndef QT_NO_MENU 00190 } else if (classname == "QMenu") { 00191 iface = new QAccessibleMenu(widget); 00192 } else if (classname == "Q3PopupMenu") { 00193 iface = new QAccessibleMenu(widget); 00194 #endif 00195 #ifndef QT_NO_ITEMVIEWS 00196 } else if (classname == "QHeaderView") { 00197 iface = new QAccessibleHeader(widget); 00198 } else if (classname == "QAbstractItemView") { 00199 iface = new QAccessibleItemView(widget); 00200 #endif 00201 #ifndef QT_NO_TABBAR 00202 } else if (classname == "QTabBar") { 00203 iface = new QAccessibleTabBar(widget); 00204 #endif 00205 } else if (classname == "QWorkspaceChild") { 00206 iface = new QAccessibleWidget(widget, Window); 00207 } else if (classname == "QSizeGrip") { 00208 iface = new QAccessibleWidget(widget, Grip); 00209 #ifndef QT_NO_SPLITTER 00210 } else if (classname == "QSplitter") { 00211 iface = new QAccessibleWidget(widget, Splitter); 00212 } else if (classname == "QSplitterHandle") { 00213 iface = new QAccessibleWidget(widget, Grip); 00214 #endif 00215 #ifndef QT_NO_TEXTEDIT 00216 } else if (classname == "QTextEdit") { 00217 iface = new QAccessibleTextEdit(widget); 00218 #endif 00219 } else if (classname == "QTipLabel") { 00220 iface = new QAccessibleWidget(widget, ToolTip); 00221 } else if (classname == "QFrame") { 00222 iface = new QAccessibleWidget(widget, Border); 00223 } 00224 00225 return iface; 00226 }
Here is the call graph for this function:

1.5.1