digiKam
slidetoolbar.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 : 2004-10-05
7  * Description : a tool bar for slideshow
8  *
9  * Copyright (C) 2004-2005 by Renchi Raju <renchi dot raju at gmail dot com>
10  * Copyright (C) 2006-2022 by Gilles Caulier <caulier dot gilles at gmail dot com>
11  * Copyright (C) 2019-2020 by Minh Nghia Duong <minhnghiaduong997 at gmail dot com>
12  * Copyright (C) 2021 by Phuoc Khanh Le <phuockhanhnk94 at gmail dot com>
13  *
14  * This program is free software; you can redistribute it
15  * and/or modify it under the terms of the GNU General
16  * Public License as published by the Free Software Foundation;
17  * either version 2, or (at your option)
18  * any later version.
19  *
20  * This program is distributed in the hope that it will be useful,
21  * but WITHOUT ANY WARRANTY; without even the implied warranty of
22  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23  * GNU General Public License for more details.
24  *
25  * ============================================================ */
26 
27 #ifndef DIGIKAM_SLIDE_TOOL_BAR_PLUGIN_H
28 #define DIGIKAM_SLIDE_TOOL_BAR_PLUGIN_H
29 
30 // Qt includes
31 
32 #include <QWidget>
33 #include <QKeyEvent>
34 
35 // Local includes
36 
37 #include "digikam_export.h"
38 #include "slideshowsettings.h"
39 #include "dlayoutbox.h"
40 
41 class QAction;
42 
44 {
45 
46 class SlideToolBar : public DHBox
47 {
48  Q_OBJECT
49 
50 public:
51 
52  explicit SlideToolBar(SlideShowSettings* const settings, QWidget* const parent);
53  ~SlideToolBar() override;
54 
55  bool isPaused() const;
56  void pause(bool val);
57 
58  void setEnabledPlay(bool val);
59  void setEnabledNext(bool val);
60  void setEnabledPrev(bool val);
61 
63 
64 protected:
65 
66  void keyPressEvent(QKeyEvent* e) override;
67 
68 Q_SIGNALS:
69 
70  void signalNext();
71  void signalPrev();
72  void signalClose();
73  void signalPlay();
74  void signalPause();
78 
79 private Q_SLOTS:
80 
81  void slotPlayBtnToggled();
82  void slotNexPrevClicked();
83  void slotRemoveImage();
84  void slotScreenSelected(QAction*);
85  void slotMenuSlideShowConfiguration();
86  void slotConfigurationAccepted();
87  void slotChangeDelayButtonPressed();
88 
89 private:
90 
91  class Private;
92  Private* const d;
93 
94  friend class SlideShowLoader;
95 };
96 
97 } // namespace DigikamGenericSlideShowPlugin
98 
99 #endif // DIGIKAM_SLIDE_TOOL_BAR_PLUGIN_H
Definition: slideshowloader.h:50
Definition: slideshowsettings.h:52
Definition: slidetoolbar.h:47
void pause(bool val)
Definition: slidetoolbar.cpp:215
~SlideToolBar() override
Definition: slidetoolbar.cpp:204
void setEnabledNext(bool val)
Definition: slidetoolbar.cpp:231
void closeConfigurationDialog()
Definition: slidetoolbar.cpp:241
bool isPaused() const
Definition: slidetoolbar.cpp:210
void setEnabledPrev(bool val)
Definition: slidetoolbar.cpp:236
SlideToolBar(SlideShowSettings *const settings, QWidget *const parent)
Definition: slidetoolbar.cpp:87
void keyPressEvent(QKeyEvent *e) override
Definition: slidetoolbar.cpp:328
void setEnabledPlay(bool val)
Definition: slidetoolbar.cpp:226
Definition: dlayoutbox.h:45
Definition: slideshowloader.cpp:70