digiKam
Loading...
Searching...
No Matches
dzoombar.h
Go to the documentation of this file.
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2007-04-15
7 * Description : a zoom bar used in status bar.
8 *
9 * SPDX-FileCopyrightText: 2007-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
10 *
11 * SPDX-License-Identifier: GPL-2.0-or-later
12 *
13 * ============================================================ */
14
15#pragma once
16
17// Qt includes
18
19#include <QString>
20
21// Local includes
22
23#include "dlayoutbox.h"
24#include "digikam_export.h"
25
26class QAction;
27
28namespace Digikam
29{
30
31class DIGIKAM_EXPORT DZoomBar : public DHBox
32{
33 Q_OBJECT
34
35public:
36
38 {
39 PreviewZoomCtrl = 0,
41 NoPreviewZoomCtrl
42 };
43
44public:
45
46 explicit DZoomBar(QWidget* const parent = nullptr);
47 ~DZoomBar() override;
48
49 void setBarMode(BarMode mode);
50 void setZoom(double zoom, double zmin, double zmax);
51 void setThumbsSize(int size);
52
53 void setZoomToFitAction(QAction* const action);
54 void setZoomTo100Action(QAction* const action);
55 void setZoomPlusAction(QAction* const action);
56 void setZoomMinusAction(QAction* const action);
57
58 void triggerZoomTrackerToolTip();
59
60 static int sizeFromZoom(double zoom, double zmin, double zmax);
61 static double zoomFromSize(int size, double zmin, double zmax);
62
63Q_SIGNALS:
64
69
70public Q_SLOTS:
71
72 void slotUpdateTrackerPos();
73
74private Q_SLOTS:
75
76 void slotZoomSliderChanged(int);
77 void slotDelayedZoomSliderChanged();
78 void slotZoomSliderReleased();
79 void slotZoomSelected(int);
80 void slotZoomTextChanged();
81
82private:
83
84 class Private;
85 Private* const d = nullptr;
86};
87
88} // namespace Digikam
Definition dlayoutbox.h:35
Definition dzoombar.h:32
void signalZoomSliderChanged(int)
BarMode
Definition dzoombar.h:38
@ ThumbsSizeCtrl
Thumb Size controller. Preview zoom controller still visible but disabled.
Definition dzoombar.h:40
void signalZoomSliderReleased(int)
void signalZoomValueEdited(double)
void signalDelayedZoomSliderChanged(int)
Definition datefolderview.cpp:34