diff options
author | Ton Roosendaal <ton@blender.org> | 2005-05-12 00:01:42 +0400 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2005-05-12 00:01:42 +0400 |
commit | 0574768f8897f20e8eca213742e0987d122787c7 (patch) | |
tree | d0ed5584b2b2f09520d8692363344dbff9ff275b /source/blender/makesdna | |
parent | 57f9553b3a67fdf1e152e4cda6a5ed566bc208b2 (diff) |
Animated UI for TimeLine "Play"
Using the Play button in timeline, now uses an event-driven system to
update the animation system and signal windows to redraw. Meaning the
full UI remains responsive!
Check the new Pulldown "Playback" to set which windows you like to see
updated. Same settings is used for LMB 'dragging' frames in Timeline.
Implementation notes;
- the Icon for 'Pause' (or stop) has to be made yet, I commit this from
my laptop... all was coded during a 2 x 5 hour train ride to germany
- the anim playback system (ALT+A too) now uses correct "frames per
second" as maximum speed. Buttons can be found in 3 places in the UI,
also added it as pulldown item
- The system works with 'screen handlers', which has been coded with
using Python (networked) events or verse in mind too. A doc on that
will follow.
- the buttons code has been made 'resistant' to animated UIs too,
preventing flashing of hilites.
- All subloops (like transform) stop playback, with exception of MMB
view manipulations.
As extra; found tweak to make Textured AA fonts draw without distortion.
Looks perfect here on laptop now (like Pixmap fonts) and is 20x faster.
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r-- | source/blender/makesdna/DNA_screen_types.h | 7 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_space_types.h | 9 |
2 files changed, 12 insertions, 4 deletions
diff --git a/source/blender/makesdna/DNA_screen_types.h b/source/blender/makesdna/DNA_screen_types.h index cd90c24b882..7346dc08ed4 100644 --- a/source/blender/makesdna/DNA_screen_types.h +++ b/source/blender/makesdna/DNA_screen_types.h @@ -49,11 +49,11 @@ typedef struct bScreen { short startx, endx, starty, endy; /* framebuffer coords */ short sizex, sizey; short scenenr, screennr; /* only for pupmenu */ - short full, rt; + short full, pad; short mainwin, winakt; + short handler[8]; /* similar to space handler now */ } bScreen; - typedef struct ScrVert { struct ScrVert *next, *prev, *newv; vec2s vec; @@ -147,6 +147,9 @@ typedef struct ScrArea { #define B_SCROLL 8 #define HOR_SCROLL 12 +/* screen->flag */ + + /* dunno who thought this below is nice code, but be warned, the values are written in a file, and cannot be switched or altered. enum here is out of focus (ton) */ enum { diff --git a/source/blender/makesdna/DNA_space_types.h b/source/blender/makesdna/DNA_space_types.h index 51ad96f0cb4..a04c0d7cbcc 100644 --- a/source/blender/makesdna/DNA_space_types.h +++ b/source/blender/makesdna/DNA_space_types.h @@ -284,7 +284,7 @@ typedef struct SpaceTime { View2D v2d; - int flag, pad; + int flag, redraws; } SpaceTime; @@ -534,9 +534,14 @@ typedef struct SpaceImaSel { #define IMS_INFILESLI 4 /* time->flag */ - #define TIME_DRAWFRAMES 1 #define TIME_CFRA_NUM 2 +/* time->redraws */ +#define TIME_LEFTMOST_3D_WIN 1 +#define TIME_ALL_3D_WIN 2 +#define TIME_ALL_ANIM_WIN 4 +#define TIME_ALL_BUTS_WIN 8 + #endif |