summaryrefslogtreecommitdiff
path: root/main.h
diff options
context:
space:
mode:
Diffstat (limited to 'main.h')
-rw-r--r--main.h48
1 files changed, 27 insertions, 21 deletions
diff --git a/main.h b/main.h
index 3c7455a..122c380 100644
--- a/main.h
+++ b/main.h
@@ -71,6 +71,18 @@ struct cached_bitmap {
uint32 Frame; // What frame it is.
};
+enum action_type {
+ action_type_change_u16,
+ action_type_change_i16,
+ action_type_change_u32,
+ action_type_change_i32,
+ action_type_change_r32,
+ action_type_change_u64,
+ action_type_change_ptr,
+ action_type_change_string,
+ action_type_shift_keyframe
+};
+
enum action_entry_type {
action_entry_layerinit,
action_entry_default
@@ -183,23 +195,15 @@ float DefaultVertices[] = {
struct gl_effect_layer {
+ bool32 Initialized;
GLuint Texture;
GLuint FramebufferObject;
uint32 Color_Renderbuffer;
+ uint32 Stencil_Renderbuffer;
};
static gl_vertex_shader GL_Vertices;
-enum action_change_type {
- action_change_u16,
- action_change_i16,
- action_change_u32,
- action_change_i32,
- action_change_r32,
- action_change_u64,
- action_change_ptr,
- action_change_string,
-};
union val {
real32 f;
@@ -239,16 +243,7 @@ struct property_channel {
val ScrubVal; // increment when dragging on sliders, etc.
var_type VarType;
- // TODO(fox): Probably shouldn't store these in the file...
- // UI
- val LocalMaxVal;
- val LocalMinVal;
bool32 IsToggled;
- bool32 IsGraphToggled;
- real32 GraphLength; // represented in actual screen pixels
- real32 GraphYOffset;
- // The size of the window enclosing the graph
- uint16 GraphWindowHeight;
};
struct property_header
@@ -260,7 +255,6 @@ struct property_header
val MaxVal;
};
-
// Information about a particular file.
enum source_type {
@@ -298,6 +292,7 @@ struct layer_bitmap_info {
int32 FrameOffset; // The "true" position of the layer, separate from StartFrame. Starts at zero and only gets incremented when the layer is moved.
bool32 ToUpdate = 1;
gl_effect_layer Test;
+ gl_effect_layer TestM;
// TODO(fox): Find a better place to store this. Either give effects a more
// fleshed-out API to add things to a struct like this or integrate into ImGui.
@@ -541,6 +536,14 @@ enum focused_window
focus_timeline
};
+struct ui_graph {
+ property_channel *ChannelViewed;
+ real32 WindowYOffset = 300;
+ real32 UpperVal;
+ real32 LowerVal;
+ uint16 GraphWindowHeight; // The size of the window enclosing the graph
+};
+
struct ui
{
real32 TimelineSplit = 600;
@@ -578,6 +581,9 @@ struct ui
focused_window FocusedWindow; // Convenience for adding window-specific hotkeys.
+ ui_graph Graph[4];
+ uint16 NumberOfGraphsEnabled;
+
bool32 TemporaryUpdateOverride;
};
@@ -612,7 +618,7 @@ struct timeline_properties
uint16 FramePadding;
uint16 LayerPadding;
uint16 TimelineCurrentFrame;
- int16 TimelineCurrentLayer;
+ int16 TimelineCurrentLayer; // Signed as a shortcut for invalid on -1
uint16 InfoTimelineSplit;
bool32 DrawTimeline;
bool32 DrawEffectPanel;