Olive
ui
colorbutton.h
1
/***
2
3
Olive - Non-Linear Video Editor
4
Copyright (C) 2019 Olive Team
5
6
This program is free software: you can redistribute it and/or modify
7
it under the terms of the GNU General Public License as published by
8
the Free Software Foundation, either version 3 of the License, or
9
(at your option) any later version.
10
11
This program is distributed in the hope that it will be useful,
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
GNU General Public License for more details.
15
16
You should have received a copy of the GNU General Public License
17
along with this program. If not, see <http://www.gnu.org/licenses/>.
18
19
***/
20
21
#ifndef COLORBUTTON_H
22
#define COLORBUTTON_H
23
24
#include <QPushButton>
25
#include <QColor>
26
#include <QUndoCommand>
27
28
class
ColorButton
:
public
QPushButton {
29
Q_OBJECT
30
public
:
31
ColorButton
(QWidget* parent = 0);
32
QColor get_color();
33
void
set_color(QColor c);
34
const
QColor& getPreviousValue();
35
private
:
36
QColor color;
37
QColor previousColor;
38
void
set_button_color();
39
signals:
40
void
color_changed();
41
private
slots:
42
void
open_dialog();
43
};
44
45
class
ColorCommand
:
public
QUndoCommand {
46
public
:
47
ColorCommand
(
ColorButton
* s, QColor o, QColor n);
48
void
undo();
49
void
redo();
50
private
:
51
ColorButton
* sender;
52
QColor old_color;
53
QColor new_color;
54
};
55
56
#endif // COLORBUTTON_H
ColorCommand
Definition:
colorbutton.h:45
ColorButton
Definition:
colorbutton.h:28
Generated by
1.8.15