Skip to content

Commit 23207e8

Browse files
committed
Freestyle Point Placement, Redo, & Refactoring
1 parent e6e83aa commit 23207e8

File tree

3 files changed

+227
-197
lines changed

3 files changed

+227
-197
lines changed

CHANGELOG.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,41 @@
1+
# Version 0.3.0.0 - (2020-11-XX)
2+
## Known Bugs
3+
- The GUI can sometimes become unresponsive during morphing calculations (but eventually returns to normal)
4+
- QtCore.QCoreApplication.processEvents() is a potential workaround but currently produces buggy results
5+
6+
## Unreleased
7+
- <b>Image Zoom</b>
8+
- The user may right click on an image to zoom in and out of it to place more accurate points
9+
- Comment: <i>Currently, image zoom functionality has been (somewhat) implemented but point placement will require additional changes.</i>
10+
11+
## Added
12+
- <b>Freestyle Point Placement</b> - Gone are the days where point pairs had to begin with the left image!
13+
- QoL: The user can now place point pairs on the images in whatever order they wish
14+
- Keyboard/mouse input logic has been rewritten to maintain previous behavior with Undo, Delete, OUT, etc.
15+
- <b>Redo (CTRL+Y) Functionality</b>
16+
- The user may now redo any point placement that was previously undone or deleted
17+
- Points are recovered in the order they were undone or deleted
18+
- The cache is cleared whenever a new point is placed by the user
19+
20+
## Changes
21+
- Added logging that was previously missing from MorphingApp.py's Undo logic
22+
- Polished the string comparator found in MorphingApp.py's <b>gifTextDone()</b>
23+
- Optimized out ~34 SLOC from the Undo logic found in MorphingApp.py's <b>keyPressEvent()</b>
24+
- Optimized out ~25 SLOC from MorphingApp.py's <b>displayTriangles()</b> where Morphing.py's <b>loadTriangles()</b> should have been used
25+
- Triangle display behavior during MorphingApp.py's <b>mousePressEvent()</b> has been further consolidated and streamlined
26+
- To accommodate this update, all instances of <b>self.currentWindow</b> have been removed
27+
- Since much of <b>mousePressEvent()</b> and <b>keyPressEvent()</b> depended on this variable, these methods have been changed accordingly
28+
- Comment: <i>The 'current window' variable was unintuitive legacy code written to get a working prototype out and, therefore, has not been very maintainable.
29+
This update replaces it with a much more useful <b>self.clicked_window_history</b>, it's spiritual successor!</i>
30+
- All instances of <b>self.persistFlag</b> have been removed
31+
- Comment: <i>More unintuitive legacy code. Since this variable is no longer used - and to improve maintainability - it is being removed.</i>
32+
- All instances of <b>self.confirmed_left_points_history</b> and <b>self.confirmed_right_points_history</b> have been removed
33+
- Comment: <i>These were placeholders for prototyping redo functionality a while back - this is now handled by <b>self.placed_points_history</b>.</i>
34+
35+
## Fixes
36+
- Fixed a bug where the alpha slider and auto-corner button were not enabling when new images were loaded
37+
- Comment: <i>Just an oversight that spawned from the changes to the image loading methods in v0.2.9.0</i>
38+
139
# Version 0.2.9.0 - (2020-09-05)
240
#### Note: Since I am taking up a software developer role next week, releases are going to slow down for the foreseeable future.
341
## Known Bugs

0 commit comments

Comments
 (0)