Olive
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
transformeffect.h
Go to the documentation of this file.
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 TRANSFORMEFFECT_H
22 #define TRANSFORMEFFECT_H
23 
24 #include "effects/effect.h"
25 
26 class TransformEffect : public Effect {
27  Q_OBJECT
28 public:
29  TransformEffect(Clip* c, const EffectMeta* em);
30  void refresh();
31  void process_coords(double timecode, GLTextureCoords& coords, int data);
32 
33  void gizmo_draw(double timecode, GLTextureCoords& coords);
34 public slots:
35  void toggle_uniform_scale(bool enabled);
36 private:
47 
59 };
60 
61 #endif // TRANSFORMEFFECT_H
DoubleField * anchor_y_box
Definition: transformeffect.h:44
DoubleField * scale_y
Definition: transformeffect.h:40
Definition: transformeffect.h:26
Definition: effectgizmo.h:43
DoubleField * scale_x
Definition: transformeffect.h:39
EffectGizmo * top_right_gizmo
Definition: transformeffect.h:50
EffectGizmo * rect_gizmo
Definition: transformeffect.h:58
EffectGizmo * right_center_gizmo
Definition: transformeffect.h:55
EffectGizmo * left_center_gizmo
Definition: transformeffect.h:54
The DoubleField class.
Definition: doublefield.h:13
ComboField * blend_mode_box
Definition: transformeffect.h:46
DoubleField * position_y
Definition: transformeffect.h:38
void gizmo_draw(double timecode, GLTextureCoords &coords)
Definition: transformeffect.cpp:224
EffectGizmo * bottom_right_gizmo
Definition: transformeffect.h:53
DoubleField * anchor_x_box
Definition: transformeffect.h:43
void toggle_uniform_scale(bool enabled)
Definition: transformeffect.cpp:180
void process_coords(double timecode, GLTextureCoords &coords, int data)
Definition: transformeffect.cpp:191
Definition: clip.h:56
DoubleField * opacity
Definition: transformeffect.h:45
void refresh()
Definition: transformeffect.cpp:154
DoubleField * rotation
Definition: transformeffect.h:42
Definition: effect.h:52
EffectGizmo * top_left_gizmo
Definition: transformeffect.h:48
EffectGizmo * anchor_gizmo
Definition: transformeffect.h:56
EffectGizmo * rotate_gizmo
Definition: transformeffect.h:57
Definition: effect.h:99
EffectGizmo * bottom_left_gizmo
Definition: transformeffect.h:51
DoubleField * position_x
Definition: transformeffect.h:37
The BoolField class.
Definition: boolfield.h:11
BoolField * uniform_scale_field
Definition: transformeffect.h:41
The ComboField class.
Definition: combofield.h:24
EffectGizmo * top_center_gizmo
Definition: transformeffect.h:49
TransformEffect(Clip *c, const EffectMeta *em)
Definition: transformeffect.cpp:46
Definition: effect.h:136
EffectGizmo * bottom_center_gizmo
Definition: transformeffect.h:52