Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qscrollbar.h
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3// Qt-Security score:significant reason:default
4
5#ifndef QSCROLLBAR_H
6#define QSCROLLBAR_H
7
8#include <QtWidgets/qtwidgetsglobal.h>
9#include <QtWidgets/qwidget.h>
10
11#include <QtWidgets/qabstractslider.h>
12
14
15QT_BEGIN_NAMESPACE
16
17class QScrollBarPrivate;
18class QStyleOptionSlider;
19
20class Q_WIDGETS_EXPORT QScrollBar : public QAbstractSlider
21{
22 Q_OBJECT
23public:
24 explicit QScrollBar(QWidget *parent = nullptr);
25 explicit QScrollBar(Qt::Orientation, QWidget *parent = nullptr);
26 ~QScrollBar();
27
28 QSize sizeHint() const override;
29 bool event(QEvent *event) override;
30
31#ifndef QT_NO_CONTEXTMENU
32 QMenu *createStandardContextMenu(QPoint position);
33#endif
34
35protected:
36#if QT_CONFIG(wheelevent)
37 void wheelEvent(QWheelEvent *) override;
38#endif
39 void paintEvent(QPaintEvent *) override;
40 void mousePressEvent(QMouseEvent *) override;
41 void mouseReleaseEvent(QMouseEvent *) override;
42 void mouseMoveEvent(QMouseEvent *) override;
43 void hideEvent(QHideEvent*) override;
44 void sliderChange(SliderChange change) override;
45#ifndef QT_NO_CONTEXTMENU
46 void contextMenuEvent(QContextMenuEvent *) override;
47#endif
48 virtual void initStyleOption(QStyleOptionSlider *option) const;
49
50
51private:
52 friend class QAbstractScrollAreaPrivate;
53 friend Q_WIDGETS_EXPORT QStyleOptionSlider qt_qscrollbarStyleOption(QScrollBar *scrollBar);
54
55 Q_DISABLE_COPY(QScrollBar)
56 Q_DECLARE_PRIVATE(QScrollBar)
57#if QT_CONFIG(itemviews)
58 friend class QTableView;
59 friend class QTreeViewPrivate;
60 friend class QCommonListViewBase;
61 friend class QListModeViewBase;
62 friend class QAbstractItemView;
63#endif
64};
65
66QT_END_NAMESPACE
67
68#endif // QSCROLLBAR_H
The QScrollBar widget provides a vertical or horizontal scroll bar.
Definition qscrollbar.h:21
QT_REQUIRE_CONFIG(thread)