Olive
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 "project/effect.h"
25 
26 class TransformEffect : public Effect {
27  Q_OBJECT
28 public:
29  TransformEffect(ClipPtr 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  bool set;
61 };
62 
63 #endif // TRANSFORMEFFECT_H
void process_coords(double timecode, GLTextureCoords &coords, int data)
Definition: transformeffect.cpp:226
Definition: effect.h:128
EffectGizmo * top_center_gizmo
Definition: transformeffect.h:49
EffectGizmo * bottom_left_gizmo
Definition: transformeffect.h:51
void refresh()
Definition: transformeffect.cpp:173
TransformEffect(ClipPtr c, const EffectMeta *em)
Definition: transformeffect.cpp:46
EffectField * position_x
Definition: transformeffect.h:37
EffectGizmo * anchor_gizmo
Definition: transformeffect.h:56
EffectGizmo * bottom_right_gizmo
Definition: transformeffect.h:53
Definition: effect.h:169
Definition: effect.h:50
EffectField * position_y
Definition: transformeffect.h:38
EffectField * anchor_x_box
Definition: transformeffect.h:43
std::shared_ptr< Clip > ClipPtr
Definition: cacher.h:28
bool set
Definition: transformeffect.h:60
EffectField * anchor_y_box
Definition: transformeffect.h:44
EffectGizmo * bottom_center_gizmo
Definition: transformeffect.h:52
EffectField * uniform_scale_field
Definition: transformeffect.h:41
EffectGizmo * right_center_gizmo
Definition: transformeffect.h:55
Definition: transformeffect.h:26
Definition: effectgizmo.h:41
EffectGizmo * rect_gizmo
Definition: transformeffect.h:58
EffectField * scale_y
Definition: transformeffect.h:40
EffectGizmo * rotate_gizmo
Definition: transformeffect.h:57
EffectGizmo * left_center_gizmo
Definition: transformeffect.h:54
EffectField * scale_x
Definition: transformeffect.h:39
EffectField * blend_mode_box
Definition: transformeffect.h:46
void toggle_uniform_scale(bool enabled)
Definition: transformeffect.cpp:215
EffectGizmo * top_left_gizmo
Definition: transformeffect.h:48
Definition: effectfield.h:43
EffectField * rotation
Definition: transformeffect.h:42
EffectField * opacity
Definition: transformeffect.h:45
EffectGizmo * top_right_gizmo
Definition: transformeffect.h:50
void gizmo_draw(double timecode, GLTextureCoords &coords)
Definition: transformeffect.cpp:257