Skyler Lehmkuhl
9699e1e1ea
Migrate from frame-centric to AnimationData system
...
Replaces legacy Frame-based object positioning and shape management with
AnimationData curves throughout the codebase. This enables time-based
animation instead of discrete frame indices, providing smoother playback
and more flexible keyframe editing.
Key changes:
- Remove currentFrame getter and frame.keys lookups
- Replace setFrameNum() with setTime() for continuous time navigation
- Add Layer.addShape()/removeShape() with AnimationData integration
- Migrate actions (move, group, delete, z-order) to use animation curves
- Update keyboard shortcuts and drag operations to modify curves directly
- Leave "holes" in shapeIndex values for proper undo/redo support
Rendering now fully driven by AnimationData curves (exists, zOrder,
shapeIndex for shapes; x, y, rotation, scale for objects).
2025-10-20 01:56:53 -04:00
Skyler Lehmkuhl
74809acd2d
Handle missing textures better (and export them properly)
2025-01-13 17:34:16 -05:00
Skyler Lehmkuhl
e22bafdeeb
remove unnecessary logs
2025-01-10 18:47:43 -05:00
Skyler Lehmkuhl
cf90cc183c
Make flood fill use shape bounds to instead of stage
2025-01-10 18:28:21 -05:00
Skyler Lehmkuhl
596dd9501c
Move growBoundingBox to utils.js
2025-01-10 18:27:10 -05:00
Skyler Lehmkuhl
3819988d5e
initial refactoring work
2025-01-10 00:11:55 -05:00
Skyler Lehmkuhl
184578c361
Fix selecting shapes rendering incorrectly
2025-01-06 15:48:57 -05:00
Skyler Lehmkuhl
49dd8f83d1
Fix paintbucket in transformed shapes
2025-01-06 15:26:56 -05:00
Skyler Lehmkuhl
377a1cc6c1
Add eyedropper tool
2025-01-05 19:20:45 -05:00
Skyler Lehmkuhl
b860d58e3d
Fix transform handles not working correctly on rotated objects
2024-12-31 01:14:54 -05:00
Skyler Lehmkuhl
f610ef733d
Fix rotation point and add migration for old files
2024-12-30 14:44:11 -05:00
Skyler Lehmkuhl
df32b43915
Added rotation (but around the wrong point)
2024-12-30 02:10:53 -05:00
Skyler Lehmkuhl
57f1a05cd6
Import objects from .beam files
2024-12-28 23:33:27 -05:00
Skyler Lehmkuhl
8a647c1d3d
Add outliner and do work on importing from .beam
2024-12-28 20:43:54 -05:00
Skyler Lehmkuhl
e12622c7bf
Make selecting an action
2024-12-25 13:47:49 -05:00
Skyler Lehmkuhl
38922a03e4
Initial support for moving frames
2024-12-23 06:03:59 -05:00
Skyler Lehmkuhl
e54d897697
need this file for transform handles too
2024-12-22 06:55:55 -05:00
Skyler Lehmkuhl
455dd4a611
Add keyboard shortcuts to menus
2024-12-21 05:23:17 -05:00
Skyler Lehmkuhl
2d9ced4785
Add layer names
2024-12-19 20:14:08 -05:00
Skyler Lehmkuhl
5679fdf8bd
Draw entire timeline as canvas
2024-12-19 04:22:40 -05:00
Skyler Lehmkuhl
747b34ec67
initial work on new color picker
2024-12-16 17:59:27 -05:00
Skyler Lehmkuhl
4d1e42a38b
Paint bucket!
2024-12-11 15:11:14 -05:00
Skyler Lehmkuhl
5ed9c06156
import audio and draw it on timeline
2024-12-06 15:28:31 -05:00
Skyler Lehmkuhl
611caf2621
fix shape highlight color
2024-12-05 15:54:30 -05:00
Skyler Lehmkuhl
ad17f2531e
update menus to reflect undo state
2024-12-05 11:30:53 -05:00
Skyler Lehmkuhl
88d95d7c3a
add ellipse tool
2024-12-05 10:35:49 -05:00
Skyler Lehmkuhl
a891475c62
load frames in opened file
2024-12-03 00:38:01 -05:00
Skyler Lehmkuhl
95834bb0e9
motion tween
2024-12-02 20:06:50 -05:00
Skyler Lehmkuhl
d162a9599b
drag ui panes
2024-12-02 15:15:52 -05:00
Skyler Lehmkuhl
7778107e4d
change pane type
2024-12-02 14:40:40 -05:00