Skip to content

Commit

Permalink
Merge bec7574 into release
Browse files Browse the repository at this point in the history
  • Loading branch information
github-actions[bot] authored Sep 24, 2022
2 parents 9f56fa2 + bec7574 commit 88407b6
Show file tree
Hide file tree
Showing 18 changed files with 884 additions and 993 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,4 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Run backend tests
working-directory: ./src-tauri
run: cargo test --release
run: cargo test
125 changes: 125 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
# Changelog

## Tiger 0.4.1

- [x] Fixed a bug where changes caused by mouse clicks would not appear immediately
- [x] Major performance improvements to panning/dragging actions

## Tiger 0.4

- [x] UI rewrite (prettier)
- [x] In-place rename UX
- [x] Right click menu to rename item
- [x] Right click menu to delete item
- [x] Filter frames/animations in content panel by text search
- [x] Can display frames in thumbnail or list mode
- [x] Add option to hide origin
- [x] Add option to hide hitboxes
- [x] Add option to lock hitboxes
- [x] Edit hitbox offset and size from details panel
- [x] Edit keyframe duration and offset from details panel
- [x] Support multiple directions/angles for the same animation
- [x] Sheet stores multiple sequences per animation
- [x] Can preview and edit multiple sequences
- [x] Shift selecting keyframes on timeline selects the keyframes you would expect
- [x] Add toggle to hide keyframes (replaces linking/locking)
- [x] Add sprite darkening readility mode
- [x] Workbench tabs
- [x] Copy/paste animations
- [x] Copy/paste keyframes
- [x] Copy/paste hitboxes
- [x] Replace powershell release script with Github action
- [x] Unit test sheet module

## Tiger 0.3

- [x] Cap undo history at 100 entries
- [x] Offer to save when closing individual documents
- [x] Error dialogs
- [x] Handle save errors while performing a save on exit
- [x] Dependencies update
- [x] Remove placeholder app icon
- [x] Get rid of failure crate
- [x] Compile on Rust Stable
- [x] Remove commands threads (keep long commands thread)
- [x] Move hitbox data from frames to animation frames
- [x] Frame and hitboxes can be moved using arrow keys
- [x] Fix issue where O key gets stuck after using Ctrl+O shortcut (https://github.com/Gekkio/imgui-rs/pull/215)
- [x] Editing hitboxes while animation is in workbench
- [x] Hitboxes can be created and moved while an animation is in the workbench
- [x] When multiple hitboxes and the animation frame are overlapping, mouse hovers and clicks should only interact with one of them
- [x] Hitboxes panel is renamed to Keyframe and allows selecting the animation frame
- [x] Keyframe panel can lock individual keyframes, or the animation frame, to prevent mouse interactions
- [x] Keyframe panel can link/unlink hitboxes to the animation frame so that moving the frame also moves them (default on)
- [x] Fix bug where hitbox resize handles don't work when clicked where they overlap with the corresponding hitbox
- [x] Auto-select new keyframes when inserted to timeline
- [x] Multiple selections
- [x] Jump to next/previous frame
- [x] Auto reload images on frame edit
- ~~[ ] Visible handles for adjusting frame durations (instead of invisible buttons)~~

## Tiger 0.2

- [x] Unsaved file marker
- [x] Offer to save on exit if needed
- [x] Undo/Redo
- [x] Allow interactions while file dialogs are open or I/O is in progress
- [x] Keyboard shortcuts for playback controls
- [x] Keyboard shortcuts menu entries
- [x] Keyboard shortcuts for moving hitbox / keyframe
- [x] Keyboard shortcuts for list navigation
- [x] Loading spinners
- [x] Begin editing animation after creating it
- [x] Automatically select hitbox after creating it
- [x] Select hitbox when clicking it
- [x] Select keyframe when clicking it
- [x] Selected hitbox should have handles for resizing instead of using invisible buttons along borders
- [x] When creating an animation, automatically select it
- [x] Grid
- [x] Drag and drop frames to workbench
- ~~[ ] Grid snapping?~~
- [x] Content of selection window when selecting keyframe
- [x] Content of selection window when selecting hitbox
- [x] In selection window, keep origin centered to preview turnarounds
- [x] When moving keyframe or hitbox, hold shift to move only on one axis
- [x] When resizing hitbox, hold shift to preserve aspect ratio
- [x] Workbench indicates what the current workbench item is
- [x] Sort content panel entries by name
- [x] Sort hitbox panel entries by name
- [x] Dont draw origin when editing frame
- [x] Use rect and point structs consistently instead of tuples everywhere
- [x] Fix bug where origin is not consistent within one animation in selection window (is ok in workbench)
- [x] Fix bug where frame name can go outside frame bound in timeline
- [x] Fix bug where reordering animation frames changes selected keyframe
- [x] Fix bug where a console window opens alongside Tiger on Windows
- [x] Workbench should illustrate selected hitbox or keyframe (w/ borders)
- [x] Clicking blank space within the workbench gets rid of the current selection
- [x] Ctrl+Space to center workbench
- [x] Fix issue where hitboxes are not created precisely where the mouse is clicked because we dont create until the mouse is dragging.
- [x] Pass in mouse drag deltas to drag/resize logic instead of mouse positions. See GetMouseDragDelta in imgui
- [x] Handle scenario when using "Save as" onto a file that is already open

## Tiger 0.1

- [x] Don't store absolute paths in tiger files
- [x] Show frame names in timeline
- [x] Solution(s) to edit/order/insert frames in timeline
- [x] Add, position, tag, delete hitboxes
- [x] Full compat with crystal sheets:
- [x] Hitboxes
- [x] Sheet path in export
- [x] Top left coords available in template
- [x] Tiger backwards compat
- [x] Release pipeline
- [x] No placeholder menu options
- [x] Export (using last known settings)
- [x] Draw frame being dragged even during animation
- [x] Draw hitboxes during animation
- [x] Animation renames
- [x] Allow user to choose what directory paths are relative to during export
- [x] Fix bug where export window shows weird absolute + relative concatenated paths
- [x] Fix bug where pressing delete while renaming an animation(/hitbox) deletes it
- [x] Fix bug where renaming an animation(/hitbox) unselects and unedits it
- [x] Fix bug where keyframe duration drag shows insert markers
- [x] Fix bug where animation frames can be reorderer by dragging timeline
- [x] Fix bugs when manipulating extremely short animation frames
4 changes: 2 additions & 2 deletions MAINTENANCE.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# How to make a release

- Move relevant section of ROADMAP.md into CHANGELOG.md, commit and push
- On Github, go to **Actions**, select the **Make Release** workflow and click **Run workflow**
- Select the branch to deploy (usually `master`)
- Input a user-facing version name (eg: **0.3.0**)
- Click the **Run workflow** button
- After CI completes, find the release on Github and write the changelog
- Move the release from Draft to Published
- After CI completes, move the release from Draft to Published on Github

# How to increment Tiger format version

Expand Down
21 changes: 10 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,18 +16,17 @@ Tiger is a graphical tool for generating spritesheets and metadata about the ani

# Getting Started

## Requirements
Tiger is only supported on Windows and has no dependencies. To install it:

- Windows 7 or newer

## Installation

### Windows

1. Download the [latest release](https://github.com/agersant/tiger/releases/latest) (you want the .exe file)
2. Run the executable
1. Go to the [latest release](https://github.com/agersant/tiger/releases/latest) page
2. Download the `.msi` installer
2. Run the installer
3. That's it, you're done!

# Roadmap
# Contributing

- 🗨 For help, feedback or suggesting new features, please use [Discussions](https://github.com/agersant/tiger/discussions).
- 🐛 For bug reports, please use the [Issues Tracker](https://github.com/agersant/tiger/issues).
- 🛠 Planned changes and features are listed in the project [Roadmap](ROADMAP.md).
- ❌ Please do not create pull requests.

See [here](Roadmap.md).
132 changes: 6 additions & 126 deletions ROADMAP.md
Original file line number Diff line number Diff line change
@@ -1,141 +1,20 @@
# Roadmap

## Tiger 0.1

- [x] Don't store absolute paths in tiger files
- [x] Show frame names in timeline
- [x] Solution(s) to edit/order/insert frames in timeline
- [x] Add, position, tag, delete hitboxes
- [x] Full compat with crystal sheets:
- [x] Hitboxes
- [x] Sheet path in export
- [x] Top left coords available in template
- [x] Tiger backwards compat
- [x] Release pipeline
- [x] No placeholder menu options
- [x] Export (using last known settings)
- [x] Draw frame being dragged even during animation
- [x] Draw hitboxes during animation
- [x] Animation renames
- [x] Allow user to choose what directory paths are relative to during export
- [x] Fix bug where export window shows weird absolute + relative concatenated paths
- [x] Fix bug where pressing delete while renaming an animation(/hitbox) deletes it
- [x] Fix bug where renaming an animation(/hitbox) unselects and unedits it
- [x] Fix bug where keyframe duration drag shows insert markers
- [x] Fix bug where animation frames can be reorderer by dragging timeline
- [x] Fix bugs when manipulating extremely short animation frames

## Tiger 0.2

- [x] Unsaved file marker
- [x] Offer to save on exit if needed
- [x] Undo/Redo
- [x] Allow interactions while file dialogs are open or I/O is in progress
- [x] Keyboard shortcuts for playback controls
- [x] Keyboard shortcuts menu entries
- [x] Keyboard shortcuts for moving hitbox / keyframe
- [x] Keyboard shortcuts for list navigation
- [x] Loading spinners
- [x] Begin editing animation after creating it
- [x] Automatically select hitbox after creating it
- [x] Select hitbox when clicking it
- [x] Select keyframe when clicking it
- [x] Selected hitbox should have handles for resizing instead of using invisible buttons along borders
- [x] When creating an animation, automatically select it
- [x] Grid
- [x] Drag and drop frames to workbench
- ~~[ ] Grid snapping?~~
- [x] Content of selection window when selecting keyframe
- [x] Content of selection window when selecting hitbox
- [x] In selection window, keep origin centered to preview turnarounds
- [x] When moving keyframe or hitbox, hold shift to move only on one axis
- [x] When resizing hitbox, hold shift to preserve aspect ratio
- [x] Workbench indicates what the current workbench item is
- [x] Sort content panel entries by name
- [x] Sort hitbox panel entries by name
- [x] Dont draw origin when editing frame
- [x] Use rect and point structs consistently instead of tuples everywhere
- [x] Fix bug where origin is not consistent within one animation in selection window (is ok in workbench)
- [x] Fix bug where frame name can go outside frame bound in timeline
- [x] Fix bug where reordering animation frames changes selected keyframe
- [x] Fix bug where a console window opens alongside Tiger on Windows
- [x] Workbench should illustrate selected hitbox or keyframe (w/ borders)
- [x] Clicking blank space within the workbench gets rid of the current selection
- [x] Ctrl+Space to center workbench
- [x] Fix issue where hitboxes are not created precisely where the mouse is clicked because we dont create until the mouse is dragging.
- [x] Pass in mouse drag deltas to drag/resize logic instead of mouse positions. See GetMouseDragDelta in imgui
- [x] Handle scenario when using "Save as" onto a file that is already open

## Tiger 0.3

- [x] Cap undo history at 100 entries
- [x] Offer to save when closing individual documents
- [x] Error dialogs
- [x] Handle save errors while performing a save on exit
- [x] Dependencies update
- [x] Remove placeholder app icon
- [x] Get rid of failure crate
- [x] Compile on Rust Stable
- [x] Remove commands threads (keep long commands thread)
- [x] Move hitbox data from frames to animation frames
- [x] Frame and hitboxes can be moved using arrow keys
- [x] Fix issue where O key gets stuck after using Ctrl+O shortcut (https://github.com/Gekkio/imgui-rs/pull/215)
- [x] Editing hitboxes while animation is in workbench
- [x] Hitboxes can be created and moved while an animation is in the workbench
- [x] When multiple hitboxes and the animation frame are overlapping, mouse hovers and clicks should only interact with one of them
- [x] Hitboxes panel is renamed to Keyframe and allows selecting the animation frame
- [x] Keyframe panel can lock individual keyframes, or the animation frame, to prevent mouse interactions
- [x] Keyframe panel can link/unlink hitboxes to the animation frame so that moving the frame also moves them (default on)
- [x] Fix bug where hitbox resize handles don't work when clicked where they overlap with the corresponding hitbox
- [x] Auto-select new keyframes when inserted to timeline
- [x] Multiple selections
- [x] Jump to next/previous frame
- [x] Auto reload images on frame edit
- ~~[ ] Visible handles for adjusting frame durations (instead of invisible buttons)~~

## Tiger 0.4

- [x] UI rewrite (prettier)
- [x] In-place rename UX
- [x] Right click menu to rename item
- [x] Right click menu to delete item
- [x] Filter frames/animations in content panel by text search
- [x] Can display frames in thumbnail or list mode
- [x] Add option to hide origin
- [x] Add option to hide hitboxes
- [x] Add option to lock hitboxes
- [x] Edit hitbox offset and size from details panel
- [x] Edit keyframe duration and offset from details panel
- [x] Support multiple directions/angles for the same animation
- [x] Sheet stores multiple sequences per animation
- [x] Can preview and edit multiple sequences
- [x] Shift selecting keyframes on timeline selects the keyframes you would expect
- [x] Add toggle to hide keyframes (replaces linking/locking)
- [x] Add sprite darkening readility mode
- [x] Workbench tabs
- [x] Copy/paste animations
- [x] Copy/paste keyframes
- [x] Copy/paste hitboxes
- [x] Replace powershell release script with Github action
- [x] Unit test sheet module

## Tiger 0.5

- [ ] Document template format
- [ ] Export dialog links to documentation
- [ ] Export process creates intermediate directories if needed
- [ ] Error dialog specifies problematic path when export fails due to IO problem
- [ ] Angle in liquid template sequence data
- [ ] Nicer looking paths in export settings (no ../ concat)
- [ ] Consider merging some code between save, save_as and save_all
- [ ] Automatically add extensions to exported files
- [ ] Default paths for NFD dialogs
- [ ] Add menu entry to open recent files
- [ ] Export dialog form validation
- [ ] Unit test timeline commands
- [ ] Unit test transient commands

## Tiger 0.6

- [ ] Tooltips everywhere
- [ ] Add buttons to align frame edges or center to origin
- [ ] Draw hitbox names in workbench
- [ ] Playback speed controls
- [ ] Time snapping / quantizing of animation frames
Expand All @@ -155,6 +34,9 @@

- [ ] Handle missing frame files (warning + offer to relocate)
- [ ] In-place tutorials instead of blank data
- [ ] Consider merging some code between save, save_as and save_all
- [ ] Automatically add extensions to exported files
- [ ] Default paths for NFD dialogs
- [ ] Unit test state module

## Tiger 0.9
Expand All @@ -164,8 +46,6 @@
- [ ] Fix jank spacing in exported metadata files
- [ ] Export complete notification
- [ ] Unit test UI
- [ ] Document template format
- [ ] Export dialog links to documentation
- [ ] Auto-updates
- [ ] Splash screen

Expand Down
Loading

0 comments on commit 88407b6

Please sign in to comment.