File: transformeffect.h

package info (click to toggle)
olive-editor 20181223-2
  • links: PTS
  • area: main
  • in suites: buster
  • size: 2,844 kB
  • sloc: cpp: 20,147; xml: 315; ansic: 16; makefile: 11
file content (44 lines) | stat: -rw-r--r-- 1,212 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#ifndef TRANSFORMEFFECT_H
#define TRANSFORMEFFECT_H

#include "project/effect.h"

class TransformEffect : public Effect {
	Q_OBJECT
public:
	TransformEffect(Clip* c, const EffectMeta* em);
	void refresh();
    void process_coords(double timecode, GLTextureCoords& coords, int data);

    void gizmo_draw(double timecode, GLTextureCoords& coords);
public slots:
	void toggle_uniform_scale(bool enabled);
private:
    EffectField* position_x;
    EffectField* position_y;
    EffectField* scale_x;
    EffectField* scale_y;
    EffectField* uniform_scale_field;
    EffectField* rotation;
    EffectField* anchor_x_box;
    EffectField* anchor_y_box;
    EffectField* opacity;
    EffectField* blend_mode_box;

    EffectGizmo* top_left_gizmo;
    EffectGizmo* top_center_gizmo;
    EffectGizmo* top_right_gizmo;
    EffectGizmo* bottom_left_gizmo;
    EffectGizmo* bottom_center_gizmo;
    EffectGizmo* bottom_right_gizmo;
    EffectGizmo* left_center_gizmo;
    EffectGizmo* right_center_gizmo;
    EffectGizmo* anchor_gizmo;
    EffectGizmo* rotate_gizmo;
    EffectGizmo* rect_gizmo;

	int default_anchor_x;
    int default_anchor_y;
};

#endif // TRANSFORMEFFECT_H