Krita Source Code Documentation
Loading...
Searching...
No Matches
AngleSelector.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2020 Deif Lou <ginoba@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6#ifndef LIBKIS_ANGLESELECTOR_H
7#define LIBKIS_ANGLESELECTOR_H
8
9#include "KisAngleSelector.h"
10
11#include "kritalibkis_export.h"
12#include "libkis.h"
13
21class KRITALIBKIS_EXPORT AngleSelector : public QObject
22{
23 Q_OBJECT
24 Q_DISABLE_COPY(AngleSelector)
25
26public:
27 explicit AngleSelector();
28 ~AngleSelector() override;
29
30public Q_SLOTS:
31
38 QWidget* widget() const;
39
45 void setAngle(qreal newAngle);
51 void reset();
52
58 qreal angle() const;
67 qreal snapAngle() const;
75 qreal resetAngle() const;
83 int decimals() const;
92 qreal maximum() const;
101 qreal minimum() const;
107 QString prefix() const;
114 bool wrapping() const;
122 QString flipOptionsMode() const;
129 int widgetsHeight() const;
135 QString increasingDirection() const;
141 bool isUsingFlatSpinBox() const;
142
148 void setSnapAngle(qreal newSnapAngle);
154 void setResetAngle(qreal newResetAngle);
160 void setDecimals(int newNumberOfDecimals);
167 void setMaximum(qreal newMaximum);
174 void setMinimum(qreal newMinimum);
184 void setRange(qreal newMinimum, qreal newMaximum);
190 void setPrefix(const QString &newPrefix);
197 void setWrapping(bool newWrapping);
211 void setFlipOptionsMode(QString newMode);
218 void setWidgetsHeight(int newHeight);
225 void setIncreasingDirection(QString newIncreasingDirection);
232 void useFlatSpinBox(bool newUseFlatSpinBox);
233
250 static qreal closestCoterminalAngleInRange(qreal angle, qreal minimum, qreal maximum, bool *ok = nullptr);
265 qreal closestCoterminalAngleInRange(qreal angle, bool *ok = nullptr) const;
276 static qreal flipAngle(qreal angle, Qt::Orientations orientations);
292 static qreal flipAngle(qreal angle, qreal minimum, qreal maximum, Qt::Orientations orientations, bool *ok = nullptr);
301 void flip(Qt::Orientations orientations);
302
303Q_SIGNALS:
304 void angleChanged(qreal angle);
305
306private:
307 struct Private;
308 Private *const d;
309
310};
311
312#endif // LIBKIS_ANGLESELECTOR_H
A wrapper around KisAngleSelector, a widget with several options to select an angle....
Private *const d
void angleChanged(qreal angle)