id open close type description rev user
1 02/08/25 02/08/25 done if fullscreen on single monitor, Alt key exits full screen 2.0.00.001  
2 02/08/25 02/08/25 done if fullscreen on single monitor, file open dialog exits full screen causing render window to disappear 2.0.00.001  
3 02/09/25 02/09/25 done in Parameters view, tab doesn't continue to next row 2.0.00.001  
4 02/09/25 02/10/25 done in Parameters view, Ctrl + Num+ shortcut only works if a child control has focus 2.0.00.001  
5 02/10/25 02/10/25 done rotate speed and skew angle aren't being scaled properly 2.0.00.001  
6 02/10/25 02/11/25 done parameter rows are shown in a different order; line width and pinwheel moved, handle in row view? 2.0.00.001  
11 02/10/25 02/12/25 done device lost handling is broken; mistakenly destroying thread due to missing scope, rename to clarify 2.0.00.001  
12 02/15/25 02/16/25 done drop files not working 2.0.00.001  
13 02/16/25 02/17/25 done hide mouse automatically in full screen mode 2.0.01.001  
17 02/23/25 02/24/25 done curve parameters are broken; in DrawRing, AddBeziers must start from &m_aPt[iFirstPoint + 1] 2.0.01.008  
20 02/24/25 02/24/25 done outline command's menu item doesn't display check 2.0.02.000 JM
19 02/23/25 02/25/25 done can't match Flying Chicken snapshot; apply zoom to ring origins to match V1 trail behavior 2.0.02.000  
22 02/25/25 02/25/25 done switching from curved to straight or vice versa causes degenerate ring; add bPrevCurved 2.0.02.000  
16 02/23/25 02/25/25 done Ctrl+N exits fullscreen exclusive on single monitor even if document is unmodified; disable it 2.0.02.001  
7 02/09/25 02/26/25 done limit maximum size of floating row view pane to row view size plus space for NC brass and scroll bars 2.0.02.001  
10 02/12/25 02/26/25 done limit minimum size of floating row view pane to system minimum window size 2.0.02.001  
40 02/25/25 02/26/25 done MIDI input (fixed mapping) 2.0.02.002  
24 02/25/25 02/26/25 done MIDI mapping 2.0.03.002  
18 02/23/25 02/27/25 done loading a snapshot should update zoom in master pane 2.0.04.000  
21 02/25/25 02/27/25 done disable undo/redo while in snapshot mode 2.0.04.000  
48 02/27/25 02/27/25 done toolbar needs a pause button 2.0.04.000  
50 02/27/25 02/27/25 done implement hue loop 2.0.04.000  
25 02/25/25 02/28/25 done new playlist format; use INI file this time 2.0.04.001  
42 02/27/25 02/28/25 done mapping pane should support undo 2.0.04.001  
43 02/27/25 02/28/25 done mapping persistence, in playlist as before 2.0.04.001  
52 02/28/25 02/28/25 done some parameters can't be set back to exactly zero via MIDI; add a center epsilon 2.0.05.000 JM
46 02/27/25 03/01/25 done add miscellaneous mapping targets 2.0.06.000  
56 02/28/25 03/01/25 done add option to set maximum number of items in recently used file lists 2.0.06.000  
44 02/27/25 03/01/25 done add MIDI learn 2.0.06.001  
45 02/27/25 03/02/25 done mapping for other parameter properties: waveform, amplitude, frequency, pulse width 2.0.07.002  
47 02/27/25 03/02/25 done global parameters 2.0.07.002  
41 02/27/25 03/02/25 done document edits made via MIDI shouldn't be undoable, to avoid excessive undo history 2.0.07.005  
62 02/08/25 03/02/25 done automated undo testing; one test for document, another for mapping 2.0.07.006  
63 03/02/25 03/02/25 done fix crash during mapping test; when removing all rings, m_posDel must also be reset 2.0.08.000  
64 03/02/25 03/03/25 done if render command queue is full, worker thread should retry, and notify main thread only if retry fails 2.0.09.000  
57 03/01/25 03/03/25 done reset row view column widths; add context menu to column header 2.0.09.001  
65 03/02/25 03/03/25 done in snapshot mode, zooming (or any other edits) shouldn't set document modified flag 2.0.09.002  
55 02/28/25 03/03/25 done pitch bend mapping should use full resolution (14 bits) 2.0.09.003  
67 03/04/25 03/04/25 done points buffer overrun if Ring Sides = 50, curves = true, Fill = true, ring count >= 2, and Global Ring Sides >= 1 2.0.09.005  
70 03/04/25 03/04/25 done refactor render thread so that PushCommand is protected by wrapping it in accessors 2.0.09.006  
68 03/04/25 03/04/25 done in globals row dialog, edit box spin should allow negative values 2.0.09.007  
72 03/04/25 03/05/25 done in parameters, master and globals panes, can't drag slider back to exact center value; use epsilon 2.0.09.008  
73 03/04/25 03/05/25 done in parameters pane, spin or arrows don't return Skew Radius to exact center value; use epsilon 2.0.09.008  
59 03/01/25 03/05/25 done indicate MIDI learn by changing color of list selection in mapping pane 2.0.09.009  
61 03/01/25 03/05/25 done disable MIDI learn if mapping pane loses focus 2.0.09.009  
69 03/04/25 03/05/25 done add fill and outline icons to toolbar 2.0.09.009  
71 03/04/25 03/05/25 done if frame rate is extremely low, MIDI mapping can fill render command queue, causing perpetual error message 2.0.10.001  
54 02/28/25 03/06/25 done add thread-safe error logging; log file goes in folder %USERPROFILE%\AppData\Local\Whorld 2.0.10.002  
75 03/06/25 03/06/25 done implement drop files for all supported file types 2.0.10.003  
76 02/25/25 03/07/25 done load multiple snapshots at once; navigation commands in submenu 2.0.10.004  
77 02/25/25 03/08/25 done export all snapshots (on snapshot submenu) 2.0.10.005  
74 03/05/25 03/08/25 done add origin motion icons to toolbar; also reverse/convex icons 2.0.10.005  
78 03/08/25 03/09/25 done export with scale to fit is not properly centered; origin is shifted left by a lot 2.0.10.006 JM
80 03/09/25 03/09/25 done centering a slider via Shift+click updates the slider, but not the corresponding property 2.0.10.007  
80 03/09/25 03/09/25 done V1 shifted filled ring colors by one ring in convex mode, and V2's fix for that must be disabled to display a V1 snapshot correctly 2.0.10.007  
79 03/09/25 03/09/25 done export scaling not matching V1; refactor scaling to four options: none, fit width, fit height, fit both 2.0.10.007  
86 03/09/25 03/10/25 done add target size to snapshot format; required to handle scaling issues related to window size 2.0.11.000  
85 03/10/25 03/10/25 done MIDI learn not working; manager was posting messages to main frame rather than mapping bar 2.0.11.000 JM
82 03/10/25 03/10/25 done change slider's restore default position modifier key from Shift to Control 2.0.11.000 JM
83 03/10/25 03/10/25 done in parameters dialog, slider default positions should be parameter defaults, not center 2.0.11.000 JM
87 03/10/25 03/10/25 done taking a snapshot of a loaded snapshot distorts it; disallow this degenerate case 2.0.12.000  
81 03/09/25 03/11/25 done export scaling only matches V1 if zoom is scaled 125% (see ribbons1); add legacy snapshot sizes to options 2.0.12.001  
88 03/09/25 03/11/25 done when displaying snapshot, fit to view instead of cropping; requires storing target size in snapshot 2.0.12.001  
90 03/09/25 03/11/25 done add letterboxing option for snapshots 2.0.12.005  
93 03/10/25 03/12/25 done export dialog should display view's dimensions when use view size is checked 2.0.12.006  
92 03/11/25 03/12/25 done add mouse wheel sensitivity option; it's a percentage of system mouse wheel delta 2.0.12.006  
94 03/11/25 03/12/25 done add command to display information about current snapshot: size, zoom, ring count, version 2.0.12.007  
95 03/11/25 03/12/25 done implement view-centric zoom; make it a MIDI target too 2.0.12.009  
96 03/12/25 03/12/25 done setting fill or outline mode via MIDI fails to update UI 2.0.12.009  
97 03/12/25 03/12/25 done AddRing leaves two bytes of the ring struct uninitialized, making them useless; add reserved member and zero it 2.0.12.010  
28 02/25/25 03/14/25 done movie recording; use asynchronous writes 2.0.13.000  
29 02/25/25 03/14/25 done movie playback 2.0.13.000  
99 02/25/25 03/16/25 done movie export 2.0.13.009  
98 02/25/25 03/17/25 done add movie bar to with slider to allow seeking within movie; also show current position in time 2.0.13.013  
100 03/17/25 03/17/25 done slider doesn't respond to left-click in thumb track until mouse button is released 2.0.13.013  
101 03/18/25 03/19/25 done reinstate V1's MIDI mapping algorithm, featuring dual-range normalization to avoid centering problems 2.0.14.000  
102 03/18/25 03/19/25 done mapping range start and end should be percentages; also make them real numbers instead of integers 2.0.14.000  
103 03/18/25 03/19/25 done support line width less than zero, by changing line width parameter's minimum value from one to zero 2.0.14.000  
104 03/19/25 03/19/25 done error playing back recorded movie, due to truncated file; reverting to synchronous writing seems to fix it 2.0.14.002 ZV
106 03/19/25 03/20/25 done during recording, show recording's duration on status bar 2.0.14.003  
107 03/20/25 03/20/25 done movie write wasn't resetting the count of frames written; reliably fatal if a second recording is made 2.0.14.003  
108 03/20/25 03/20/25 done reinstate overlapped (asynchronous) writing for movie recording 2.0.15.000  
114 02/25/25 03/28/25 done add playlist bar; patch insert/delete/move/play 2.0.16.003  
113 03/28/25 03/28/25 done load snapshot open file dialog is modeless but should be modal 2.0.16.003  
115 03/29/25 03/30/25 done playlist should indicate currently playing patch, via arrow icon in list control 2.0.17.000  
116 03/29/25 03/30/25 done selecting a playlist patch should update Parameters, Master, and Globals panes 2.0.17.000  
14 02/18/25   hold master dialog should have spin controls    
15 02/19/25   hold line joins are angular instead of round as in V1; do round joins impact performance? Make it optional?    
26 02/25/25   hold snapshot slideshow (on snapshot submenu)    
27 02/25/25   hold mirroring; see GPT code, looks quite challenging    
30 02/25/25   hold make antialiasing optional; combining antialiasing with transparency will overload most systems    
31 02/25/25   hold regression testing based on image and snapshot export    
32 02/25/25   hold transparency: proposals include global alpha and fade alpha with radius    
33 02/25/25   hold transparent background is possible and could be useful for export, as it would allow layering of output    
34 02/25/25   hold add option to always zoom line width, not only in snapshot mode; changes the vibe considerably    
35 02/25/25   hold XOR blending; very challenging, probably involves writing a custom Direct2D effect in shader code    
36 02/25/25   hold update help file and reintegrate context-sensitive help    
37 02/25/25   hold installer    
38 02/25/25   hold check for updates    
39 02/25/25   hold floating dockable pane should be collapsible, via a roll up / down button on its caption bar for example    
51 02/27/25   hold undo and redo should be mappable; not sure about this   JM
53 02/28/25   hold add MIDI output; send CCs for each parameter oscillator, maybe MIDI clocks too    
58 03/01/25   hold boolean mapping targets send spurious render commands when value is unchanged; part of larger switch issue    
60 03/01/25   hold find a better icon for MIDI learn; tried DIN connector, it's too hard to read    
84 03/10/25   hold origin motion commands belong on image menu, instead of buried in submenu   JM
89 03/10/25   hold sliders, edit spins, and wheel should all support coarse/fine modes; coarse by default, Shift+wheel for fine    
91 03/12/25   hold snapshot mode should allow origin change, via drag or point zoom or both    
105 03/20/25   hold mapping pause to continuous controller toggles for every message received; switch issue again    
109 03/21/25   hold for stable tempo, use self-correcting real timer instead of retrace-driven oscillator    
110 03/21/25   hold support MIDI clock for tempo    
111 03/21/25   hold add MIDI command to trigger origin random jump    
8 02/10/25   punt in row view, if no control has focus, tab key does nothing    
9 02/10/25   punt if floating row view is deactivated and then reactivated, previously focused child control doesn't regain focus    
23 02/25/25   punt sporadic error when trying to open legacy patch, invalid file handle; can't replicate   JM
49 02/27/25   punt message box appears in unexpected location if floating pane has focus; standard behavior, live with it    
66 03/04/25   punt global line width can cause negative line width; Direct2D takes absolute value, it's fine    
112 03/22/25   punt global ring sides scales odd and even radii differently unless global star ratio is tuned; V1 bug