/usr/include/plasma/widgets/scrollbar.h is in kdelibs5-dev 4:4.14.2-5+deb8u2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 | /*
* Copyright © 2008 Fredrik Höglund <fredrik@kde.org>
* Copyright © 2008 Marco Martin <notmart@gmail.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU Library General Public License as
* published by the Free Software Foundation; either version 2, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details
*
* You should have received a copy of the GNU Library General Public
* License along with this program; if not, write to the
* Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
#ifndef PLASMA_SCROLLBAR_H
#define PLASMA_SCROLLBAR_H
#include <QtGui/QScrollBar>
#include <QtGui/QGraphicsProxyWidget>
#include <plasma/plasma_export.h>
namespace Plasma
{
class ScrollBarPrivate;
/**
* @class ScrollBar plasma/widgets/scrollbar.h <Plasma/Widgets/ScrollBar>
*
* @short Provides a plasma-themed QScrollBar.
*/
class PLASMA_EXPORT ScrollBar : public QGraphicsProxyWidget
{
Q_OBJECT
Q_PROPERTY(int singleStep READ singleStep WRITE setSingleStep)
Q_PROPERTY(int pageStep READ pageStep WRITE setPageStep)
Q_PROPERTY(int value READ value WRITE setValue NOTIFY valueChanged)
Q_PROPERTY(int minimum READ minimum WRITE setMinimum)
Q_PROPERTY(int maximum READ maximum WRITE setMaximum)
Q_PROPERTY(QString styleSheet READ styleSheet WRITE setStyleSheet)
Q_PROPERTY(QScrollBar *nativeWidget READ nativeWidget)
Q_PROPERTY(Qt::Orientation orientation READ orientation WRITE setOrientation)
public:
/**
* Creates a scrollbar; the default orientation is vertical
*/
explicit ScrollBar(QGraphicsWidget *parent=0);
~ScrollBar();
/**
* Sets the scrollbar minimum and maximum values
* @param min minimum value
* @param max maximum value
*/
void setRange(int min, int max);
/**
* Sets the amount of the single step
* i.e how much the slider will move when the user press an arrow button
* @param val
*/
void setSingleStep(int val);
/**
* @return the amount of the single step
*/
int singleStep();
/**
* Sets the amount the slider will scroll when the user press page up or page down
* @param val
*/
void setPageStep(int val);
/**
* @return the amount of the page step
*/
int pageStep();
/**
* @return the current scrollbar value
*/
int value() const;
/**
* @return the minimum value bound of this ScrollBar
*/
int minimum() const;
/**
* @return the maximum value bound of this ScrollBar
*/
int maximum() const;
/**
* @param the minimum value bound of this ScrollBar
* @since 4.6
*/
void setMinimum(const int min) const;
/**
* @param the maximum value bound of this ScrollBar
* @since 4.6
*/
void setMaximum(const int max) const;
/**
* Sets the stylesheet used to control the visual display of this ScrollBar
*
* @param stylesheet a CSS string
*/
void setStyleSheet(const QString &stylesheet);
/**
* @return the stylesheet currently used with this widget
*/
QString styleSheet();
/**
* @return the native widget wrapped by this ScrollBar
*/
QScrollBar *nativeWidget() const;
/**
* @return the orientation of the scrollbar
* @since 4.4
*/
Qt::Orientation orientation() const;
protected:
void contextMenuEvent(QGraphicsSceneContextMenuEvent *event);
public Q_SLOTS:
/**
* Sets the current value for the ScrollBar
* @param value must be minimum() <= value <= maximum()
*/
void setValue(int val);
/**
* Sets the orientation of the ScrollBar.
*/
void setOrientation(Qt::Orientation orientation);
Q_SIGNALS:
/**
* Emitted when the value of the slider changes
*/
void valueChanged(int value);
/**
* Emitted when the slider has been moved by the user
* @since 4.6
*/
void sliderMoved(int value);
private:
ScrollBarPrivate * const d;
};
}
#endif
|