📄 rangecontrols.cpp
字号:
case Name: switch (child) { case LineUp: return QScrollBar::tr("Line up"); case PageUp: return QScrollBar::tr("Page up"); case Position: return QScrollBar::tr("Position"); case PageDown: return QScrollBar::tr("Page down"); case LineDown: return QScrollBar::tr("Line down"); } break; default: break; } return QAccessibleWidget::text(t, child);}/*! \reimp */QAccessible::Role QAccessibleScrollBar::role(int child) const{ switch (child) { case LineUp: case PageUp: case PageDown: case LineDown: return PushButton; case Position: return Indicator; default: return ScrollBar; }}/*! \reimp */QAccessible::State QAccessibleScrollBar::state(int child) const{ const State parentState = QAccessibleWidget::state(0); if (child == 0) return parentState; // Inherit the Invisible state from parent. State state = parentState & QAccessible::Invisible; // Disable left/right if we are at the minimum/maximum. const QScrollBar * const scrollBar = QAccessibleScrollBar::scrollBar(); switch (child) { case LineUp: case PageUp: if (scrollBar->value() <= scrollBar->minimum()) state |= Unavailable; break; case LineDown: case PageDown: if (scrollBar->value() >= scrollBar->maximum()) state |= Unavailable; break; case Position: default: break; } return state;}/*! \reimp */bool QAccessibleScrollBar::doAction(int /*action*/, int /*child*/, const QVariantList &/*params*/){/* if (action == Press) switch (child) { case LineUp: scrollBar()->subtractLine(); return true; case PageUp: scrollBar()->subtractPage(); return true; case PageDown: scrollBar()->addPage(); return true; case LineDown: scrollBar()->addLine(); return true; }*/ return false;}#endif // QT_NO_SCROLLBAR#ifndef QT_NO_SLIDER/*! \class QAccessibleSlider qaccessiblewidget.h \brief The QAccessibleSlider class implements the QAccessibleInterface for sliders. \internal \ingroup accessibility*//*! \enum QAccessibleSlider::SliderElements This enum identifies the components of the slider. \value SliderSelf The slider as a whole. \value PageLeft The area to the left of the position. \value Position The position indicator. \value PageRight The area to the right of the position.*//*! Constructs a QAccessibleScrollBar object for \a w. \a name is propagated to the QAccessibleWidget constructor.*/QAccessibleSlider::QAccessibleSlider(QWidget *w, const QString &name): QAccessibleWidget(w, Slider, name){ Q_ASSERT(slider()); addControllingSignal("valueChanged(int)");}/*! Returns the slider. */QSlider *QAccessibleSlider::slider() const{ return qobject_cast<QSlider*>(object());}/*! \reimp */QRect QAccessibleSlider::rect(int child) const{ QRect rect; QStyleOptionSlider option; option.init(slider()); option.orientation = slider()->orientation(); QRect srect = slider()->style()->subControlRect(QStyle::CC_Slider, &option, QStyle::SC_SliderHandle, slider()); switch (child) { case PageLeft: if (slider()->orientation() == Qt::Vertical) rect = QRect(0, 0, slider()->width(), srect.y()); else rect = QRect(0, 0, srect.x(), slider()->height()); break; case Position: rect = srect; break; case PageRight: if (slider()->orientation() == Qt::Vertical) rect = QRect(0, srect.y() + srect.height(), slider()->width(), slider()->height()- srect.y() - srect.height()); else rect = QRect(srect.x() + srect.width(), 0, slider()->width() - srect.x() - srect.width(), slider()->height()); break; default: return QAccessibleWidget::rect(child); } QPoint tp = slider()->mapToGlobal(QPoint(0,0)); return QRect(tp.x() + rect.x(), tp.y() + rect.y(), rect.width(), rect.height());}/*! \reimp */int QAccessibleSlider::childCount() const{ return PageRight;}/*! \reimp */QString QAccessibleSlider::text(Text t, int child) const{ switch (t) { case Value: if (!child || child == 2) return QString::number(slider()->value()); return QString(); case Name: switch (child) { case PageLeft: return slider()->orientation() == Qt::Horizontal ? QSlider::tr("Page left") : QSlider::tr("Page up"); case Position: return QSlider::tr("Position"); case PageRight: return slider()->orientation() == Qt::Horizontal ? QSlider::tr("Page right") : QSlider::tr("Page down"); } break; default: break; } return QAccessibleWidget::text(t, child);}/*! \reimp */QAccessible::Role QAccessibleSlider::role(int child) const{ switch (child) { case PageLeft: case PageRight: return PushButton; case Position: return Indicator; default: return Slider; }}/*! \reimp */QAccessible::State QAccessibleSlider::state(int child) const{ const State parentState = QAccessibleWidget::state(0); if (child == 0) return parentState; // Inherit the Invisible state from parent. State state = parentState & QAccessible::Invisible; // Disable left/right if we are at the minimum/maximum. const QSlider * const slider = QAccessibleSlider::slider(); switch (child) { case PageLeft: if (slider->value() <= slider->minimum()) state |= Unavailable; break; case PageRight: if (slider->value() >= slider->maximum()) state |= Unavailable; break; case Position: default: break; } return state;}/*! \fn int QAccessibleSlider::defaultAction(int child) const Returns the default action for the given \a child. The base class implementation returns 0.*/int QAccessibleSlider::defaultAction(int /*child*/) const{/* switch (child) { case SliderSelf: return SetFocus; case PageLeft: return Press; case PageRight: return Press; }*/ return 0;}/*! \internal */QString QAccessibleSlider::actionText(int /*action*/, Text /*t*/, int /*child*/) const{ return QString("");}/*! \reimp */bool QAccessibleSlider::doAction(int /*action*/, int /*child*/, const QVariantList &/*params*/){/* switch(child) { case SliderSelf: if (action == SetFocus) { slider()->setFocus(); return true; } break; case PageLeft: if (action == Press) { slider()->subtractPage(); return true; } break; case Position: if (action == Increase) { slider()->addLine(); return true; } else if (action == Decrease) { slider()->subtractLine(); return true; } break; case PageRight: if (action == Press) { slider()->addPage(); return true; } break; }*/ return false;}#endif // QT_NO_SLIDER#endif // QT_NO_ACCESSIBILITY
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -