| open | close | type | description | rev |
| 04/21/05 | 04/30/05 | done | add lightness and saturation controls | 1.0.21 |
| 04/21/05 | 04/30/05 | done | add printer support | 1.0.21 |
| 04/21/05 | 04/30/05 | done | add variable background color | 1.0.21 |
| 04/21/05 | 04/30/05 | done | changing frequency should not affect phase | 1.0.21 |
| 04/21/05 | 05/05/05 | done | in crossfader, implement non-looped fade | 1.0.22 |
| 04/21/05 | 05/05/05 | done | in crossfader, play must set osc phase from fader pos | 1.0.22 |
| 04/21/05 | 05/05/05 | done | in crossfader, separate edit from view | 1.0.22 |
| 04/21/05 | 05/07/05 | done | add bitmap export | 1.0.23 |
| 05/05/05 | 05/09/05 | done | in crossfader, edit buttons should show params dialog | 1.0.24 |
| 05/07/05 | 05/09/05 | done | paint after pause causes center hole; pause must undo last ring step | 1.0.24 |
| 04/21/05 | 05/11/05 | done | use DirectDraw | 1.0.25 |
| 05/11/05 | 05/11/05 | done | for printing, draw to memory DC and blit, else lines are too thin | 1.0.26 |
| 05/11/05 | 05/11/05 | done | move GDI back buffer to its own object | 1.0.26 |
| 05/10/05 | 05/12/05 | done | adapt for DirectX 7 | 1.0.26 |
| 04/21/05 | 05/16/05 | done | can't drag and drop shapshot files | 1.0.27 |
| 04/21/05 | 05/16/05 | done | seed random number generator | 1.0.27 |
| 05/10/05 | 05/16/05 | done | allow order of parms dlg rows and view params to differ | 1.0.27 |
| 05/10/05 | 05/16/05 | done | switching from non-maximized to full screen and exiting breaks full screen on next run | 1.0.27 |
| 05/13/05 | 05/16/05 | done | opening a new document doesn't update parms dialog's title | 1.0.27 |
| 04/21/05 | 05/17/05 | done | add pulse width column to parms dialog | 1.0.28 |
| 05/10/05 | 05/17/05 | done | parms dlg is too big, make it a scrollable view | 1.0.28 |
| 05/15/05 | 05/18/05 | done | add command to generate random patches from crossfader inputs | 1.0.29 |
| 05/15/05 | 05/18/05 | done | add command to randomize phase of LFOs | 1.0.29 |
| 05/15/05 | 05/18/05 | done | add pinwheel parameter | 1.0.29 |
| 04/21/05 | 05/19/05 | done | in parms dialog, tab at end of row should go to next row; shift+tab is reverse case | 1.0.29 |
| 05/19/05 | 05/20/05 | done | add ring fill and outline | 1.0.30 |
| 05/19/05 | 05/20/05 | done | zero window width or height crashes DirectDraw | 1.0.30 |
| 05/21/05 | 05/22/05 | done | doc info shouldn't live in CrossDlg | 1.0.31 |
| 05/21/05 | 05/25/05 | done | add splitter window for multiple views | 1.0.32 |
| 05/22/05 | 05/26/05 | done | add set origin via context menu | 1.0.33 |
| 05/26/05 | 05/26/05 | done | dropping a file in split mode must set active pane first | 1.0.33 |
| 05/26/05 | 05/26/05 | done | fill mode and origin should be saved in document | 1.0.33 |
| 05/27/05 | 05/28/05 | done | save as doesn't change parms dialog title | 1.0.33 |
| 05/31/05 | 06/01/05 | done | if 2 panes, splitter isn't centered: switch rows and cols in centering line | 1.0.34 |
| 05/31/05 | 06/01/05 | done | next/prev pane keys broken; in SetActivePane, if pWnd is NULL, must call GetPane | 1.0.34 |
| 05/15/05 | 06/02/05 | done | add a playlist dialog that loads a list of patches and crossfades between them | 1.0.34 |
| 05/26/05 | 06/02/05 | done | in playlist fade, modulators unused in source but active in dest should have random phase | 1.0.34 |
| 05/30/05 | 06/02/05 | done | in split mode, need a way to center splitter, and set all pane origins to split point | 1.0.34 |
| 05/30/05 | 06/02/05 | done | should be able to exit and reenter split mode without saving documents | 1.0.34 |
| 05/31/05 | 06/02/05 | done | accidental cascading ring deletion is an essential feature; make it explicit | 1.0.34 |
| 05/31/05 | 06/02/05 | done | in split mode, switching panes after editing a parameter can cause loss of edit | 1.0.34 |
| 06/03/05 | 06/07/05 | done | add mirror mode; should work in both single and split frame | 1.0.35 |
| 06/06/05 | 06/08/05 | done | add print support for mirror mode; can't stretch blit to printer DC, use DIB instead | 1.0.35 |
| 06/06/05 | 06/08/05 | done | in split, drag all should move origins relative to their original positions | 1.0.35 |
| 06/07/05 | 06/08/05 | done | add sync panes to split window menu, with check | 1.0.35 |
| 05/30/05 | 06/09/05 | done | need a simple way to make split pane color schemes differ; add rotate hue | 1.0.36 |
| 06/09/05 | 06/09/05 | done | add toolbar | 1.0.36 |
| 06/09/05 | 06/10/05 | done | add list control and shortcut keys to playlist | 1.0.37 |
| 06/09/05 | 06/10/05 | done | create dialogs in frame OnCreate | 1.0.37 |
| 06/11/05 | 06/16/05 | done | add toolbar button for take snapshot | 1.0.38 |
| 06/15/05 | 06/16/05 | done | add missing files dialog to playlist | 1.0.38 |
| 06/06/05 | 06/20/05 | done | add x-ray fill mode, using XOR pen | 1.0.39 |
| 06/19/05 | 06/20/05 | done | in non-outlined fill mode, draw directly to printer's DC | 1.0.39 |
| 06/20/05 | 06/20/05 | done | DC brush color doesn't affect FillRect on some printers; erase with ExtTextOut, faster too | 1.0.39 |
| 06/20/05 | 06/20/05 | done | mirror toolbar button and shortcut don't work while paused; SetMirror must invalidate | 1.0.39 |
| 06/20/05 | 06/20/05 | done | snapshots must preserve mirror origin, else new window size drastically changes image | 1.0.39 |
| 05/20/05 | 06/22/05 | done | add options dialog with DirectDraw checkbox, video vs system memory selector | 1.0.40 |
| 06/06/05 | 06/22/05 | done | expose canvas size; options dialog | 1.0.40 |
| 06/10/05 | 06/23/05 | done | add master speed dialog; rename parms MasterSpeed to RingGrowth | 1.0.40 |
| 06/23/05 | 06/23/05 | done | add status bar | 1.0.40 |
| 06/25/05 | 06/25/05 | done | disable timer while iconic | 1.0.40 |
| 06/10/05 | 06/26/05 | done | toolbar buttons don't get updated when CPU is saturated; due to IsIdleMessage override | 1.0.40 |
| 06/25/05 | 06/27/05 | done | add drag reordering to playlist; make it reusable | 1.0.40 |
| 06/20/05 | 06/28/05 | done | origin, fill mode, mirror etc are saved in patch but not restored; make this optional | 1.0.40 |
| 06/25/05 | 06/28/05 | done | add command line open for snapshot files | 1.0.40 |
| 06/27/05 | 06/28/05 | done | export should allow a size to be specified instead of always using the window size | 1.0.40 |
| 06/28/05 | 06/29/05 | done | add ranges for master speed | 1.0.40 |
| 06/28/05 | 06/29/05 | done | mirroring to front buffer causes noticeable misalignment; add precise mirror option | 1.0.41 |
| 06/20/05 | 07/01/05 | done | add snapshot preview, using enhanced file dialog | 1.0.42 |
| 06/29/05 | 07/04/05 | done | add palette cycle limiting, aka hue looping or hue lock | 1.0.42 |
| 07/04/05 | 07/04/05 | done | loading a snapshot should save view parms and pause; unpause should restore view | 1.0.42 |
| 07/04/05 | 07/06/05 | done | add origin motion damping | 1.0.43 |
| 07/06/05 | 07/06/05 | done | add hue wheel sensitivity and hue loop length | 1.0.43 |
| 06/20/05 | 07/07/05 | done | load multiple snapshots, view using page up/down | 1.0.43 |
| 06/20/05 | 07/07/05 | done | print multiple snapshots at once | 1.0.43 |
| 07/01/05 | 07/07/05 | done | add shell open for playlist | 1.0.43 |
| 07/02/05 | 07/07/05 | done | changing display settings causes unpainted view; recreate surface in OnDisplayChange | 1.0.43 |
| 07/02/05 | 07/07/05 | done | lowering display resolution can cause invisible off-screen modeless dialogs | 1.0.43 |
| 07/07/05 | 07/08/05 | done | add master zoom | 1.0.44 |
| 06/20/05 | 07/09/05 | done | export multiple snapshots at once | 1.0.44 |
| 06/20/05 | 07/09/05 | done | snapshot slide show | 1.0.44 |
| 07/09/05 | 07/10/05 | done | back buffer location needs auto option: system memory if mirrored, else video memory | 1.0.44 |
| 07/09/05 | 07/10/05 | done | export should have a stretch to fit option; adjusts zoom to match current cropping | 1.0.44 |
| 07/11/05 | 07/11/05 | done | in multi-page print job, only first page prints; OnPrint must undo DC mapping changes | 1.0.45 |
| 07/11/05 | 07/11/05 | done | in multi-page print job, some pages are corrupted; don't repaint screen during job | 1.0.45 |
| 07/11/05 | 07/11/05 | done | in snapshot mode, closing print preview resets caption to doc title; use delayed restore | 1.0.45 |
| 07/10/05 | 07/13/05 | done | add origin automation and damping | 1.0.46 |
| 07/14/05 | 07/14/05 | done | add tap tempo | 1.0.47 |
| 07/10/05 | 07/15/05 | done | derive parms dialog from row dialog with header control | 1.0.48 |
| 07/12/05 | 07/15/05 | done | remove split frame; too much overhead and not so useful | 1.0.48 |
| 07/14/05 | 07/16/05 | done | add timer thread for tempo clock | 1.0.49 |
| 07/17/05 | 07/17/05 | done | add averaging for tap tempo | 1.0.50 |
| 06/29/05 | 07/18/05 | done | need mouse deltas for controlling master speed, zoom, etc.; use DirectInput | 1.0.51 |
| 07/17/05 | 07/18/05 | done | measure tempo taps from a higher-priority thread for improved accuracy | 1.0.51 |
| 07/14/05 | 07/19/05 | done | add detach command; transplant view to an auxiliary frame to allow dual-monitor | 1.0.51 |
| 07/19/05 | 07/20/05 | done | mouse wheel doesn't work when detached view has focus | 1.0.51 |
| 07/20/05 | 07/21/05 | done | deactivating app must cancel input modes, else they get stuck | 1.0.52 |
| 07/21/05 | 07/21/05 | done | playlist shortcut keys stopped working at Z after slide show; try using invisible style | 1.0.52 |
| 07/21/05 | 07/21/05 | done | row dialog scroll bars don't show if window pos not set; CreateRows must reposition bars | 1.0.52 |
| 07/21/05 | 07/21/05 | done | row dialog shows trashed header if window pos not set, view must override CalcWindowRect | 1.0.52 |
| 07/04/05 | 07/22/05 | done | add per-ring line width parameter; optimize to reduce GDI overhead | 1.0.53 |
| 07/20/05 | 07/23/05 | done | for master dlg, need a log slider that can be linked to a buddy edit control | 1.0.54 |
| 07/10/05 | 07/24/05 | done | export in scale to fit mode should scale line width | 1.0.54 |
| 07/10/05 | 07/24/05 | done | print should draw to device in line modes; don't use DC pen, it doesn't scale | 1.0.54 |
| 07/24/05 | 07/26/05 | done | add print from bitmap option; trades resolution for color fidelity in XOR mode | 1.0.55 |
| 07/01/05 | 07/27/05 | done | playlist file should contain playlist attributes and master settings | 1.0.56 |
| 07/18/05 | 07/27/05 | done | in drag origin mode, dragging damping also moves origin | 1.0.56 |
| 07/26/05 | 07/27/05 | done | damping becomes negative when slider is at 100 | 1.0.56 |
| 07/01/05 | 07/29/05 | done | playlist hot keys should be assignable | 1.0.57 |
| 07/28/05 | 07/30/05 | done | tempo nudge must resync | 1.0.58 |
| 07/29/05 | 07/30/05 | done | make playlist resizable | 1.0.58 |
| 07/29/05 | 07/30/05 | done | options dialog should have a reset all button | 1.0.58 |
| 07/29/05 | 07/30/05 | done | tempo nudge must be a percentage, else sensitivity varies with tempo | 1.0.58 |
| 07/01/05 | 08/01/05 | done | add VJ performance mode that locks out all screen-based UI | 1.0.59 |
| 07/12/05 | 08/01/05 | done | store demo path in registry | 1.0.59 |
| 07/31/05 | 08/01/05 | done | tempo clock must run all the time to avoid sync loss | 1.0.59 |
| 07/09/05 | 08/02/05 | done | in drag origin mode, zooming causes mirror origin shift | 1.0.60 |
| 08/02/05 | 08/02/05 | done | add license text and URL to about box | 1.0.60 |
| 08/02/05 | 08/02/05 | done | add state icons to playlist | 1.0.60 |
| 07/28/05 | 08/03/05 | done | in random mode, unmodified mouse should should zoom | 1.0.60 |
| 08/03/05 | 08/03/05 | done | use shift-wheel instead of right-drag for damping; three-thumb range, sens = .025 | 1.0.61 |
| 05/30/05 | 08/04/05 | done | negative master speed should make rings grow inward; reverse mode, backspace key | 1.0.61 |
| 08/02/05 | 08/04/05 | done | add status bar indicators for drag and hue loop | 1.0.61 |
| 08/03/05 | 08/04/05 | done | add invert command to image menu (shift+I) | 1.0.61 |
| 08/03/05 | 08/04/05 | done | default patch should have same number of sides as icon: change icon to pentagon | 1.0.61 |
| 08/03/05 | 08/04/05 | done | hotkeys should trigger patches while playlist has focus; reverse column order | 1.0.61 |
| 08/03/05 | 08/04/05 | done | in playlist, pressing Shift-Tab in hotkey control assigns key to current selection, NG | 1.0.61 |
| 08/03/05 | 08/04/05 | done | need tempo multiplier; powers of two only is fine, use up/down arrows | 1.0.61 |
| 08/03/05 | 08/04/05 | done | playlist File/New not clearing modified flag | 1.0.61 |
| 08/03/05 | 08/04/05 | done | playlist Insert should be called Import? Insert Patches is better | 1.0.61 |
| 08/03/05 | 08/04/05 | done | playlist needs auto-assign command that assigns keys to list in QWERTY order | 1.0.61 |
| 08/03/05 | 08/04/05 | done | playlist needs commands for select all (Ctrl+A) and clear hotkey (Backspace) | 1.0.61 |
| 08/04/05 | 08/04/05 | done | shift+ctrl mouse should rotate hue | 1.0.61 |
| 08/04/05 | 08/04/05 | done | when drag origin is damped, pressing shift or ctrl shouldn't stop origin motion | 1.0.61 |
| 07/18/05 | 08/05/05 | done | Alt key causes modal state with loss of input focus; disable it in VJ mode | 1.0.62 |
| 08/03/05 | 08/05/05 | done | can't drag patches onto playlist dialog | 1.0.62 |
| 08/03/05 | 08/05/05 | done | DirInput must emulate windows mouse acceleration behavior | 1.0.62 |
| 08/03/05 | 08/05/05 | done | onset of damping is too slow; increase log base from 10 to 20 | 1.0.62 |
| 08/03/05 | 08/05/05 | done | playlist item drag doesn't support vertical scrolling | 1.0.62 |
| 08/04/05 | 08/05/05 | done | hue change via mouse is too sensitive; must account for different normalized range | 1.0.62 |
| 08/04/05 | 08/05/05 | done | limit tempo multiplier to +/- three steps; reset position on tap? | 1.0.62 |
| 08/04/05 | 08/05/05 | done | should be able to move origin off-screen; drag should be independent of windows cursor | 1.0.62 |
| 08/05/05 | 08/05/05 | done | in drag mode, if window is resized to zero height, origin gets stuck; divide by zero | 1.0.62 |
| 08/05/05 | 08/05/05 | done | in drag mode, origin shifts when entering full-screen or VJ mode | 1.0.62 |
| 08/05/05 | 08/05/05 | done | in drag mode, pausing or unpausing causes origin shift | 1.0.62 |
| 08/05/05 | 08/05/05 | done | playlist dialog should be able to open a selected patch for parameter editing | 1.0.62 |
| 08/05/05 | 08/05/05 | done | replace files dialog hard-codes default extension and doesn't use string resources | 1.0.62 |
| 08/05/05 | 08/05/05 | done | when entering VJ mode, if an origin motion isn't already set, it should default to drag | 1.0.62 |
| 08/06/05 | 08/06/05 | done | exiting and reentering VJ mode allows windows keys to work; forgot to clear hook | 1.0.63 |
| 08/06/05 | 08/06/05 | done | make hue loop right-click instead of middle-click | 1.0.63 |
| 08/06/05 | 08/06/05 | done | mouse button hue loop doesn't work if origin motion is off | 1.0.63 |
| 08/06/05 | 08/06/05 | done | opening a playlist should jump to patch that was current when playlist was saved | 1.0.63 |
| 08/06/05 | 08/06/05 | done | remove hue wheel, dedicate wheel to damping | 1.0.63 |
| 06/06/05 | 08/10/05 | done | draw mode change is too abrupt; make it a ring property, to allow gradual transitions | 1.0.64 |
| 08/03/05 | 08/10/05 | done | add damping for zoom | 1.0.64 |
| 08/09/05 | 08/11/05 | done | in reverse, fill doesn't always fill innermost ring; add ring list dialog to debug it | 1.0.64 |
| 08/11/05 | 08/11/05 | done | use fast round in all cases | 1.0.64 |
| 07/10/05 | 08/12/05 | done | MIDI control of view parameters: addition works fine | 1.0.65 |
| 08/06/05 | 08/12/05 | done | remove color options page, move hue loop length to general page | 1.0.65 |
| 08/08/05 | 08/12/05 | done | changing draw mode causes display glitch; view's SetDrawMode shouldn't invalidate | 1.0.65 |
| 08/12/05 | 08/12/05 | done | add invert fill, invert outline, invert x-ray | 1.0.65 |
| 08/03/05 | 08/13/05 | done | add MIDI setup dialog; derive from row dialog | 1.0.65 |
| 08/03/05 | 08/13/05 | done | save MIDI setup in playlist | 1.0.65 |
| 08/03/05 | 08/16/05 | done | assignment of MIDI to parameters should have a learn mode, e.g. Reason | 1.0.66 |
| 08/15/05 | 08/16/05 | done | exporting snapshot with use window size unchecked crashes | 1.0.66 |
| 08/15/05 | 08/16/05 | done | inserting items into playlist doesn't work first time and causes crash on exit | 1.0.66 |
| 08/15/05 | 08/16/05 | done | loading snapshot while in full screen mode crashes | 1.0.66 |
| 08/05/05 | 08/17/05 | done | it's too easy to choose full screen instead of VJ mode; make VJ Ctrl+F11 | 1.0.66 |
| 08/12/05 | 08/17/05 | done | function keys should do something in VJ mode: duplicate image commands | 1.0.66 |
| 08/08/05 | 08/18/05 | done | playlist should support MIDI program change | 1.0.67 |
| 08/17/05 | 08/18/05 | done | don't update bars while full screen; update them when full screen ends | 1.0.67 |
| 08/17/05 | 08/18/05 | done | each track read costs nearly 1ms; in VJ mode, playlist should cache tracks | 1.0.67 |
| 08/17/05 | 08/18/05 | done | mouse wheel triggers update UI; add it to OnIdle exclude | 1.0.67 |
| 08/06/05 | 08/21/05 | done | ctrl+wheel should set crossfader time | 1.0.68 |
| 08/19/05 | 08/21/05 | done | in playlist, Alt+F doesn't work if F was assigned to a patch, likewise for E | 1.0.68 |
| 08/21/05 | 08/21/05 | done | add playlist popup to file menu | 1.0.68 |
| 08/21/05 | 08/21/05 | done | in crossfader, clamp secs and position positive; in playlist, clamp secs positive | 1.0.68 |
| 08/21/05 | 08/21/05 | done | in midi setup, zero controllers causes all values to display as -64 | 1.0.68 |
| 06/01/05 | 08/27/05 | done | at high speeds, rings clump together; move oscillators into view, add fractional ticks | 1.0.69 |
| 08/03/05 | 08/27/05 | done | when crossfading, don't interpolate waveform; switch at midpoint instead | 1.0.69 |
| 08/01/05 | 08/28/05 | done | add license to all source files | 1.0.69 |
| 08/01/05 | 08/28/05 | done | crossfader's open buttons should prompt for save after open dialog, not before | 1.0.69 |
| 08/27/05 | 08/28/05 | done | changing master speed causes glitching; suppressing interpolation helps somewhat | 1.0.69 |
| 08/27/05 | 08/28/05 | done | suppress interpolation on non-crossfaded patch changes to avoid glitching | 1.0.69 |
| 07/01/05 | 08/29/05 | done | if oscillator waveform is random, sweeping frequency fools phase test, causing glitches | 1.0.69 |
| 08/01/05 | 08/29/05 | done | add hooks for HTML help | 1.0.70 |
| 08/28/05 | 08/30/05 | done | add movie recorder that writes a series of snapshots from timer hook | 1.0.71 |
| 08/28/05 | 08/30/05 | done | frame rate should be variable from 24 to 60, via Options/Display | 1.0.70 |
| 08/28/05 | 08/31/05 | done | add movie export that converts a snapshot movie to an AVI file | 1.0.71 |
| 08/28/05 | 08/31/05 | done | add movie player for viewing snapshot movies | 1.0.71 |
| 08/29/05 | 08/31/05 | done | if slideshow dialog is outside main frame, it doesn't erase itself correctly | 1.0.71 |
| 08/30/05 | 08/31/05 | done | movie player should allow seeking; snap movie needs a frame index | 1.0.71 |
| 08/04/05 | 09/01/05 | done | laptop w/o mouse has no wheel; need alternate way to set damping and crossfade time | 1.0.71 |
| 07/01/05 | 09/02/05 | done | GDI mirroring doesn't line up correctly; mirror to an intermediate buffer | 1.0.71 |
| 09/01/05 | 09/02/05 | done | add movie to shell open types | 1.0.71 |
| 09/01/05 | 09/02/05 | done | linking to AVI DLL causes mysterious crashes; move movie export to its own process | 1.0.71 |
| 09/02/05 | 09/02/05 | done | if movie player or slide show is hidden and a button has focus, space can disable left-click | 1.0.71 |
| 09/02/05 | 09/02/05 | done | shell open broke because m_pMainWnd is null during CMainFrame::OnCreate; set it to this | 1.0.71 |
| 08/30/05 | 09/03/05 | done | add movie export options dialog; frame size, frame rate, crop/stretch | 1.0.71 |
| 08/12/05 | 09/04/05 | done | MIDI control of non-view parameters, e.g. mirror, fill, crossfader, etc. | 1.0.72 |
| 09/04/05 | 09/04/05 | done | playlist file/new doesn't set defaults for master, crossfader, MIDI setup, etc. | 1.0.72 |
| 09/04/05 | 09/05/05 | done | move edit and view selections into frame | 1.0.73 |
| 07/29/05 | 09/06/05 | done | add selection to parameters dialog for master offsets | 1.0.73 |
| 09/05/05 | 09/06/05 | done | disabling windows keys doesn't work in XP; use low-level hook or DirectInput but not both | 1.0.73 |
| 09/05/05 | 09/06/05 | done | playlist FadeTo doesn't update parms dialog | 1.0.73 |
| 09/06/05 | 09/07/05 | done | app crashes creating parms dialog, in CalcWindowRect; verify dynamic downcast | 1.0.73 |
| 09/07/05 | 09/07/05 | done | put movie export back in app | 1.0.73 |
| 08/01/05 | 09/08/05 | done | more comments, esp. for member data | 1.0.73 |
| 08/03/05 | 09/09/05 | done | VJ mode needs warning dialog, with don't show this again checkbox | 1.0.74 |
| 09/08/05 | 09/09/05 | done | app needs welcome dialog, with view demo yes/no and don't show this again checkbox | 1.0.74 |
| 09/08/05 | 09/09/05 | done | main menu's playlist submenu needs recent file list | 1.0.74 |
| 09/08/05 | 09/09/05 | done | playlist dialog's file menu needs recent file list; kick idle not sent to modeless dialogs | 1.0.74 |
| 09/09/05 | 09/10/05 | done | movie player should be able to save a snapshot | 1.0.74 |
| 09/09/05 | 09/10/05 | done | panic should reset draw mode for all rings | 1.0.74 |
| 09/11/05 | 09/11/05 | done | record shouldn't clear screen | 1.0.74 |
| 09/09/05 | 09/12/05 | done | add MIDI controllers for effects: mirror, draw mode, etc. | 1.0.75 |
| 09/12/05 | 09/12/05 | done | tab order is incorrect in parms and midi setup dialogs | 1.0.75 |
| 06/01/05 | 09/15/05 | done | optional auto-generation of snapshot names | 1.0.76 |
| 08/31/05 | 09/15/05 | done | annoying windows icon in resizeable dialogs (parms, playlist); use tool window style | 1.0.76 |
| 09/11/05 | 09/15/05 | done | take snapshot and record movie should work in VJ mode: auto-assign filename | 1.0.76 |
| 09/15/05 | 09/15/05 | done | fix playlist shortcuts | 1.0.76 |
| 07/14/05 | 09/17/05 | done | add MIDI sync for tempo | 1.0.76 |
| 09/17/05 | 09/20/05 | done | tab order is incorrect general options dialog | 1.0.76 |
| 09/18/05 | 09/20/05 | done | in movie export, add output frame rate, output frame range, export bitmaps | 1.0.76 |
| 09/20/05 | 09/20/05 | done | add MIDI controls for rotate hue 90 degrees, random phase, pause, clear screen | 1.0.76 |
| 09/22/05 | 09/22/05 | done | in movie export, if uncompressed, check 2 GB limit | 1.0.76 |
| 09/22/05 | 09/27/05 | done | in movie export, source size for scaling should be input frame size, not window size | 1.0.77 |
| 09/22/05 | 09/27/05 | done | in movie play/export and snapshot mode, don't clamp origin, else mirroring may change | 1.0.77 |
| 09/22/05 | 09/27/05 | done | loading snapshot or movie uses current zoom; zoom must be saved in snaphot | 1.0.77 |
| 09/22/05 | 09/27/05 | done | need a way to correct an existing movie's frame size; add resize movie dialog | 1.0.77 |
| 10/01/05 | 10/01/05 | done | in snapshot dtor, deleting view backup causes access to non-existent view | 1.0.78 |
| 08/01/05 | 10/02/05 | done | should be able to change edit selection from within parms dialog; use system menu | 1.0.78 |
| 09/11/05 | 10/02/05 | done | save current settings as a new patch, including master offsets | 1.0.78 |
| 10/01/05 | 10/02/05 | done | can't edit mix in parms dialog; OnParamUpdate is clobbering changes | 1.0.78 |
| 10/02/05 | 10/02/05 | done | opening a patch in crossfader dialog doesn't update parms dialog | 1.0.78 |
| 10/02/05 | 10/02/05 | done | playlist dialog should have file option that imports MIDI setup from a playlist | 1.0.78 |
| 10/01/05 | 10/04/05 | done | add MIDI note support; note on alternates between property's extremes | 1.0.79 |
| 10/04/05 | 10/04/05 | done | add MIDI auto-assign dialog | 1.0.79 |
| 10/01/05 | 10/05/05 | done | add MIDI pitch bend support | 1.0.79 |
| 10/01/05 | 10/05/05 | done | add playlist MIDI mapping dialog: map patches to program changes or range of notes | 1.0.79 |
| 10/06/05 | 10/05/05 | done | playlist MRU file list: Save As must be added, and failed Open must be removed | 1.0.79 |
| 10/06/05 | 10/06/05 | done | make playlist MIDI line tab-delimited | 1.0.80 |
| 10/06/05 | 10/07/05 | done | load the playlist's next patch into crossfader input A or B, without changing fader pos | 1.0.80 |
| 10/07/05 | 10/07/05 | done | make random patch generation work in VJ mode | 1.0.80 |
| 10/08/05 | 10/08/05 | done | alpha keys should not select patches while Shift is pressed | 1.0.80 |
| 10/08/05 | 10/08/05 | done | when writing playlist, if patch is in same folder, store filename only (relative link) | 1.0.80 |
| 10/10/05 | 10/12/05 | done | crossfader's filename controls should have drop-down lists of playlist patches | 1.0.81 |
| 10/10/05 | 10/12/05 | done | if crossfader seconds is zero, pressing play causes thumb to get stuck in the center | 1.0.81 |
| 09/09/05 | 10/13/05 | done | hue loop slips when color speed modulation and master speed are high | 1.0.81 |
| 10/01/05 | 10/14/05 | done | image sometimes tears; must page-flip instead of blitting, implement exclusive mode | 1.0.82 |
| 10/13/05 | 10/14/05 | done | app crashes if certain keys (e.g. page up) are entered in playlist dialog's hotkey control | 1.0.82 |
| 10/13/05 | 10/14/05 | done | while playlist dialog has focus, Ctrl + non-accelerator alpha key switches patch | 1.0.82 |
| 10/14/05 | 10/14/05 | done | if paused when entering VJ mode, don't set drag mode or origin gets trashed | 1.0.82 |
| 10/14/05 | 10/14/05 | done | random patch deserves a function key; give it F12 | 1.0.82 |
| 10/14/05 | 10/14/05 | done | random patch glitches; flush view history | 1.0.82 |
| 10/14/05 | 10/14/05 | done | switching to exclusive mode for less than 1.5 seconds causes spurious timer messages | 1.0.82 |
| 08/03/05 | 10/17/05 | done | flash keyboard's scroll lock LED during movie recording; use overlapped I/O | 1.0.83 |
| 09/11/05 | 10/17/05 | done | zoom via MIDI should be damped, except when paused | 1.0.83 |
| 10/11/05 | 10/17/05 | done | mouse zoom, speed, and hue don't work in dual monitor mode | 1.0.83 |
| 10/15/05 | 10/17/05 | done | add MIDI controllers for origin X and Y, with damping | 1.0.83 |
| 10/15/05 | 10/17/05 | done | in parms dialog, master offsets aren't displayed correctly after exiting VJ mode | 1.0.83 |
| 10/15/05 | 10/17/05 | done | MIDI assign should reset previous mapping's event only, not its channel or controller | 1.0.83 |
| 10/17/05 | 10/17/05 | done | if multiple movies are recorded, all but first are garbage; Open must zero frame count | 1.0.83 |
| 10/17/05 | 10/17/05 | done | LFO frequency tweening cause glitching; don't interpolate frequency in timer hook | 1.0.83 |
| 10/17/05 | 10/17/05 | done | pressing mouse buttons while paused in drag mode causes origin to jump | 1.0.83 |
| 10/18/05 | 10/18/05 | done | ring growth LFO causes banding; view's timer hook must compute ring growth up front | 1.0.83 |
| 10/18/05 | 10/18/05 | done | snapshots taken while in reverse have holes; update rings before drawing them, not after | 1.0.83 |
| 08/27/05 | 10/19/05 | done | changing master speed causes glitching; don't flush history or interpolate frequency | 1.0.83 |
| 10/17/05 | 10/19/05 | done | entering and exiting exclusive mode doesn't restore maximized state | 1.0.83 |
| 08/08/05 | 10/20/05 | done | not enough assignable keys for patches; use number keys for bank switching | 1.0.84 |
| 10/20/05 | 10/20/05 | done | movies have extra rings; in OnTimer, record frame before view's timer hook | 1.0.84 |
| 09/01/05 | 10/23/05 | done | repeated hue rotation causes banding due to round-off errors; add HLS color to ring | 1.0.85 |
| 10/01/05 | 10/23/05 | done | playlist dialog should support copy/cut/paste | 1.0.85 |
| 10/11/05 | 10/24/05 | done | for acceleration on 2nd monitor, must create DD exclusive with monitor's GUID | 1.0.85 |
| 10/11/05 | 10/24/05 | done | in dual-monitor mode, panic shouldn't disable full screen mode | 1.0.85 |
| 10/23/05 | 10/24/05 | done | if using GDI instead of DirectDraw, veejay mode doesn't go full screen | 1.0.85 |
| 10/01/05 | 10/25/05 | done | if movie frames have invalid format, player locks up; OnTimer must catch exceptions | 1.0.85 |
| 10/25/05 | 10/25/05 | done | exclude non-essential ring data (deltas, HLS) from movie file to save space | 1.0.85 |
| 10/25/05 | 10/25/05 | done | movie player's save command should pause playback during file dialog | 1.0.85 |
| 10/25/05 | 10/25/05 | done | selecting multiple snapshots with preview checked can cause file error | 1.0.85 |
| 10/25/05 | 10/26/05 | done | in playlist, remove key should operate on entire selection | 1.0.85 |
| 10/25/05 | 10/26/05 | done | movie player tears in full screen; should have option to use exclusive mode | 1.0.85 |
| 10/26/05 | 10/26/05 | done | if view is detached, movie player full-screen gets stuck in exclusive mode | 1.0.85 |
| 10/26/05 | 10/26/05 | done | in playlist, paste inserts items in reverse order | 1.0.85 |
| 10/10/05 | 10/27/05 | done | add MIDI properties for patch seconds, crossfader play, and crossfader loop | 1.0.85 |
| 10/26/05 | 10/27/05 | done | in FadeTo, if in-between pos, copy mix to source; in RandomPatch, center pos | 1.0.85 |
| 10/27/05 | 10/27/05 | done | in crossfader dialog, if resuming previous auto-fade, don't set phase | 1.0.85 |
| 10/12/05 | 10/29/05 | done | crossfader dialog's name combos show blank drop list when playlist is empty | 1.0.85 |
| 10/28/05 | 10/29/05 | done | can't send document to crossfader; include Document and A/B/Mix in name combos | 1.0.85 |
| 10/28/05 | 10/29/05 | done | in playlist's FadeTo, set view mix doesn't work; must use frame's SetViewSel | 1.0.85 |
| 10/28/05 | 10/29/05 | done | playlist's Edit Parameters command is too confusing, remove it for now | 1.0.85 |
| 10/31/05 | 11/02/05 | done | auto-fade is too useful to be Ctrl+F; give it F12 and move Random Patch to F10 | 1.0.86 |
| 10/31/05 | 11/02/05 | done | in playlist dialog, dialog shortcuts should work when list control doesn't have focus | 1.0.86 |
| 10/31/05 | 11/02/05 | done | in snapshot menu's export all, progress bar is behind by one | 1.0.86 |
| 10/31/05 | 11/02/05 | done | playlist dialog's insert command inserts patches in reverse order | 1.0.86 |
| 10/31/05 | 11/02/05 | done | switching view mix on/off causes glitches; flush view history first | 1.0.86 |
| 11/01/05 | 11/02/05 | done | exiting print preview via caption bar's X button causes save prompts | 1.0.86 |
| 10/31/05 | 11/03/05 | done | if a patch is moved or renamed after playlist is opened, selecting it fails silently | 1.0.86 |
| 10/31/05 | 11/03/05 | done | if maximized app goes full-screen to veejay and back to full-screen, a border appears | 1.0.86 |
| 11/01/05 | 11/03/05 | done | in playlist dialog, if no control has focus, Alt menu keys don't work | 1.0.86 |
| 11/03/05 | 11/03/05 | done | if modeless dialog is closed and reopened, current control is lost; derive from CToolDlg | 1.0.86 |
| 11/03/05 | 11/03/05 | done | if none of a dialog's controls have focus, minimizing and restoring app hides dialog | 1.0.86 |
| 11/07/05 | 11/08/05 | done | default snapshot folder should be in MyDocuments | 1.0.87 |
| 11/08/05 | 11/09/05 | done | file dialogs for export and take snapshot should have default filename if available | 1.0.87 |
| 06/29/05 | 11/11/05 | done | should be able to limit number of rings, for effect and to improve performance | 1.0.88 |
| 11/11/05 | 11/11/05 | done | add menu item for crossfader loop on/off; shortcut is Shift+F12 | 1.0.88 |
| 11/11/05 | 11/11/05 | done | must disable Alt key in full-screen mode | 1.0.88 |
| 12/08/05 | 12/11/05 | done | FadeTo shouldn't reset crossfader's loop or waveform attributes | 1.0.89 |
| 12/08/05 | 12/20/05 | done | during unlooped auto-fade, if time becomes too small, complete fade and stop | 1.0.89 |
| 12/21/05 | 12/21/05 | done | allow hue loop length to be changed via MIDI | 1.0.89 |
| 12/21/05 | 12/21/05 | done | changing hue loop length causes hue to jump needlessly | 1.0.89 |
| 12/21/05 | 12/22/05 | done | if main is hogging CPU, Help/About makes app modal but dialog isn't shown | 1.0.90 |
| 12/22/05 | 12/22/05 | done | if mirror is twiddled via continuous controller, animation jerks; make invalidate optional | 1.0.90 |
| 12/22/05 | 12/22/05 | done | options reset all doesn't reset default output folder | 1.0.90 |
| 01/10/06 | 01/11/06 | done | if DirectDraw fails, offer GDI option | 1.0.91 |
| 08/01/05 | 01/14/06 | done | write documentation | 1.0.91 |
| 09/22/05 | 02/04/06 | done | in movie export, eliminate 2 GB limit; create AVI via DirectShow instead of VfW | 1.1.00 |
| 01/24/06 | 02/10/06 | done | all movie times and frame ranges should be in mm:ss.ff format | 1.1.01 |
| 01/24/06 | 02/10/06 | done | in movie player, add open file button and accept files via drag/drop | 1.1.01 |
| 02/10/06 | 02/10/06 | done | in master dialog, make all edit controls allow editing | 1.1.01 |
| 10/10/05 | 02/16/06 | done | add oscillator override and make all LFO properties MIDI-assignable | 1.2.00 |
| 02/16/06 | 02/19/06 | done | in CCtrlResize::AddControlList, fix loop test | 1.2.00 |
| 02/16/06 | 02/19/06 | done | save master offsets in playlist, so oscillator overrides can be preset | 1.2.00 |
| 10/01/05 | 02/23/06 | done | make playlist dialog's editable list control into a reusable base class | 1.2.01 |
| 02/23/06 | 02/23/06 | done | in drag list control, fix sloppy autoscroll boundary tests | 1.2.01 |
| 03/08/06 | 03/08/06 | done | in oscillator override via MIDI, waveform must be clamped | 1.2.02 |
| 08/12/05 | 03/10/06 | done | origin motion should be able to make a trail of rings; high value but major impact | 1.3.02 |
| 02/14/06 | 03/10/06 | done | in fill mode, allow solid to be convex instead of concave; draw rings in reverse | 1.3.02 |
| 03/07/06 | 03/15/06 | done | can't drag origin while paused, due to trail revision; add SetGlobalOrigin | 1.3.03 |
| 03/15/06 | 03/15/06 | done | add random ramp waveform; linearly interpolate between random samples | 1.3.03 |
| 03/23/06 | 03/23/06 | done | hue, loop hue, invert color, and pause should be saved in playlist | 1.3.04 |
| 03/23/06 | 03/24/06 | done | disabling veejay should only park origin if it's in drag mode | 1.3.05 |
| 03/23/06 | 03/28/06 | done | origin shouldn't be limited to middle of screen when zoomed out | 1.3.05 |
| 03/23/06 | 03/28/06 | done | enabling drag after resizing frame causes origin skip; adjust target in OnSize | 1.3.05 |
| 03/23/06 | 03/28/06 | done | trail breaks ring-origin zoom: make mirror origin space unreversed and zoomed | 1.3.05 |
| 03/23/06 | 03/28/06 | done | make zoom type independent of origin motion; add Window/Zoom Center | 1.3.05 |
| 03/23/06 | 03/28/06 | done | zooming with mirror and drag enabled causes origin to boomerang, since 1.0 | 1.3.05 |
| 04/08/06 | 04/09/06 | done | panic should reset trail | 1.3.06 |
| 04/09/06 | 04/12/06 | done | opening a playlist can take a while; display hourglass | 1.3.07 |
| 04/11/06 | 04/12/06 | done | closing detached view can show file save dialog; remove aux view from doc | 1.3.07 |
| 04/12/06 | 04/12/06 | done | increasing Zoom mistakenly deletes rings; set m_st.Zoom before calling SetWndSize | 1.3.07 |
| 10/03/05 | 04/13/06 | done | add Bézier curves | 1.4.00 |
| 12/21/05 | 04/18/06 | done | hue loop length and canvas scale should be master settings, not options | 1.4.01 |
| 04/14/06 | 04/18/06 | done | save mix doesn't save mirror, drawmode or origin | 1.4.01 |
| 04/16/06 | 04/18/06 | done | save master and main settings in patch, add patch mode | 1.4.01 |
| 01/16/06 | 04/22/06 | done | make a FreeFrame plug-in; big project, similar to making a screensaver | 1.4.01 |
| 04/23/06 | 04/24/06 | done | add MIDI controls for canvas scale and patch mode | 1.4.02 |
| 04/27/06 | 04/27/06 | done | inverting fill gives unexpected results; update PrevSides in all cases | 1.4.03 |
| 04/27/06 | 04/27/06 | done | in view, replace memmove calls with inline assembler | 1.4.03 |
| 04/27/06 | 04/27/06 | done | make curve decision per ring instead of per frame | 1.4.03 |
| 04/27/06 | 04/29/06 | done | in filled convex mode, colors are shifted by one, so center is same color as 1st ring | 1.4.04 |
| 04/29/06 | 04/29/06 | done | in Draw, replace CRect calls with inlines and only calculate iorg if making curves | 1.4.04 |
| 05/04/06 | 05/04/06 | done | playlist paste causes duplicate icons; bump current patch after inserting below it | 1.4.05 |
| 05/04/06 | 05/04/06 | done | in movie export dialog, changing frame rate doesn't update length and range | 1.4.05 |
| 05/04/06 | 05/04/06 | done | in movie export dialog, entering a frame rate of zero causes a divide by zero | 1.4.05 |
| 05/04/06 | 05/04/06 | done | panic now centers origin, disables reverse, and sets default master speed | 1.4.05 |
| 05/04/06 | 05/04/06 | done | add range selection to movie player; save button should export | 1.4.05 |
| 03/28/06 | 05/05/06 | done | add video overlay and extend playlist to accept video files | 1.5.00 |
| 05/05/06 | 05/05/06 | done | add 10 extra banks, selectable via shift + number | 1.5.00 |
| 05/05/06 | 05/06/06 | done | video overlay doesn't appear in bitmap exports; move overlay into Draw | 1.5.00 |
| 05/05/06 | 05/06/06 | done | switching clips can cause a dropped frame; move video open into timer hook | 1.5.00 |
| 05/05/06 | 05/06/06 | done | add command to turn video off | 1.5.00 |
| 05/05/06 | 05/06/06 | done | video overlay's raster operation should be variable | 1.5.00 |
| 05/05/06 | 05/06/06 | done | cache the most recently used video clips on the numeric keypad, in MRU order | 1.5.00 |
| 05/07/06 | 05/09/06 | done | optionally cycle most recent N video clips in sync with tempo | 1.5.01 |
| 04/07/06 | 05/13/06 | done | select videos via remote control app running on 2nd PC, communicating via MIDI | 1.5.02 |
| 05/15/06 | 05/16/06 | done | when videos are cycling, defer list updates until the next transition | 1.5.04 |
| 05/15/06 | 05/19/06 | done | panic now disables video cycling | 1.5.04 |
| 05/19/06 | 05/22/06 | done | save video list object's state in playlist | 1.5.05 |
| 05/30/06 | 05/30/06 | done | playlist dlg still allowing duplicate icons; test for inserting below must be <= | 1.5.06 |
| 05/19/06 | 06/02/06 | done | add MIDI properties for video select, blending, and cycling | 1.5.07 |
| 06/01/06 | 06/02/06 | done | allow videos to be opened via File/Open, shell, and drag/drop | 1.5.07 |
| 05/20/06 | 06/03/06 | done | add thumbnail view to playlist dialog; support video and patches | 1.5.08 |
| 05/13/06 | 06/05/06 | done | if window background color isn't white, playlist icons show white edges | 1.5.08 |
| 06/03/06 | 06/05/06 | done | in playlist dialog, add a command to update thumbnails | 1.5.08 |
| 06/03/06 | 06/05/06 | done | add option to automatically rewind video clips before playing them | 1.5.08 |
| 06/05/06 | 06/05/06 | done | playlist dialog's context menu should have a play command | 1.5.08 |
| 05/05/06 | 06/07/06 | done | video overlay isn't captured in snapshots or snapshot movies | 1.5.09 |
| 06/09/06 | 06/09/06 | done | main frame's non-wizard message map contains duplicate entries; since 1.0.82 | 1.5.09 |
| 06/08/06 | 06/12/06 | done | in open snapshot dialog, if preview triggers missing files dialog, UI hangs | 1.5.11 |
| 06/17/06 | 06/17/06 | done | closing app while recording causes unreadable movie file; introduced in 1.5 | 1.5.11 |
| 06/19/06 | 06/19/06 | done | skew distorts curved rings; for symmetry, MakeCurves must use skewed origin | 1.5.11 |
| 06/21/06 | 06/21/06 | done | make master dialog resizable | 1.5.12 |
| 06/23/06 | 06/23/06 | done | if a snapshot is loaded and has a bad format, timer is left stopped | 1.5.12 |
| 03/28/06 | 06/24/06 | done | create illusion of multiple whorlds via initial skew; add Copies and Spread | 1.6.00 |
| 06/22/06 | 06/26/06 | done | add thumbnail export for remote video browser | 1.6.01 |
| 05/08/06 | 06/29/06 | done | allow video origin to be changed in mirror mode, via drag, random jump, and MIDI | 1.6.02 |
| 08/21/05 | 07/24/06 | done | add command line flag to start in VJ mode | 1.6.03 |
| 09/15/06 | 09/15/06 | done | CVideo shows first frame twice; also occurs in recorded movies | 1.6.04 |
| 08/13/06 | 09/16/06 | done | in CNumEdit, notify aux before parent, so master dlg needn't use PostMessage | 1.6.04 |
| 09/15/06 | 09/16/06 | done | in movie player, slider is off by one frame during playback | 1.6.04 |
| 09/15/06 | 09/16/06 | done | in movie player, looped rewind plays first frame twice | 1.6.04 |
| 09/17/06 | 09/17/06 | done | BmpToAvi.ax shouldn't self-register, else uninstalling Whorld breaks FFRend | 1.6.04 |
| 09/29/06 | 10/02/06 | done | in movie export dialog, allow fractional output frame rate | 1.6.05 |
| 06/15/06 | 12/10/07 | done | add a parameter for initial rotation, as distinct from rotate speed | 1.7.01 |
| 12/01/07 | 12/10/07 | done | add global geometry parameters that affect all rings at once | 1.7.01 |
| 10/01/05 | 12/21/07 | done | in dual-monitor full-screen mode, main frame should be full-screen too | 1.7.02 |
| 08/01/07 | 01/13/08 | done | let paired curve control vectors at each vertex have different lengths; odd/even shear | 1.7.02 |
| 06/01/07 | 01/15/08 | done | moving origin via MIDI causes cursor to disappear; don't enter drag origin mode | 1.7.02 |
| 10/09/06 | 01/22/08 | done | in CMainFrame's MIDI callback, IsWindowVisible call could be unsafe | 1.7.03 |
| 01/19/08 | 01/22/08 | done | in MIDI setup, tabbing skips event combo; fix row dialog's tab order | 1.7.03 |
| 01/22/08 | 01/22/08 | done | while learning MIDI, if message is already assigned, previous target is affected | 1.7.03 |
| 01/05/06 | 01/23/08 | done | in MIDI setup dialog, left-clicking property name should move cursor to that row | 1.7.03 |
| 12/01/07 | 01/23/08 | done | MIDI learn mode should highlight row that's being learned | 1.7.03 |
| 12/01/07 | 01/23/08 | done | in MIDI setup dialog, range should consist of two numbers: start and end | 1.7.03 |
| 12/01/07 | 01/24/08 | done | curves jitter when star factor is negative; compute curve points from real vertices | 1.7.03 |
| 12/01/07 | 01/25/08 | done | autofade (F12) glitches when crossfade time is zero; should flush history | 1.7.03 |
| 01/24/08 | 01/25/08 | done | if ring spacing is big, after clearing screen, screen stays empty for a while | 1.7.03 |
| 01/24/08 | 01/25/08 | done | panic should clear screen, in case current rings are overloading CPU | 1.7.03 |
| 01/11/06 | 01/27/08 | done | movie export should remember codec settings | 1.7.03 |
| 01/28/08 | 01/28/08 | done | support Unicode | 1.7.04 |
| 01/28/08 | 01/29/08 | done | increase compiler warning level to W4 | 1.7.04 |
| 02/23/06 | 01/30/08 | done | in unmirrored exclusive mode, can't force back buffer to be in system memory | 1.7.05 |
| 09/20/06 | 01/30/08 | done | in playlist dialog, while dragging, escape key should abort drag | 1.7.05 |
| 01/10/08 | 01/30/08 | done | status bar should show actual frame rate | 1.7.05 |
| 01/30/08 | 01/30/08 | done | if a modeless dialog has focus, keyboard accelerators don't work; allow safe ones | 1.7.05 |
| 07/18/05 | 01/31/08 | done | clicking in non-client area of any window freezes display; partial victory | 1.7.05 |
| 01/31/08 | 01/31/08 | done | in Print Preview, if zoomed in, scroll bars don't work; OnParentNotify was capturing | 1.7.05 |
| 02/06/08 | 02/06/08 | done | increase frame rate range from 24..60 to 1..200 | 1.7.05 |
| 03/29/08 | 03/31/08 | done | redo default MIDI setup to be all on channel one (JM) | 1.7.06 |
| 01/30/05 | hold | opening a playlist doesn't restore crossfader state correctly | ||
| 05/10/05 | hold | print and print preview should center image on page | ||
| 05/28/05 | hold | ring fade-out effect: alpha blit each ring, and make alpha decrease with radius | ||
| 06/06/05 | hold | add lissajous origin motion | ||
| 06/29/05 | hold | make cascading delete optional | ||
| 07/01/05 | hold | undo for parameter editing; major hassle, low priority | ||
| 07/14/05 | hold | position and size of random origin's bounding rectangle should be adjustable | ||
| 08/03/05 | hold | MIDI setup should have presets for common gear; create as empty playlists | ||
| 08/03/05 | hold | tempo multiplier could be a separate state instead of affecting tempo directly | ||
| 08/06/05 | hold | try controlling app with a joystick | ||
| 08/06/05 | hold | try various mice and trackballs to determine optimal mouse sensitivity | ||
| 08/12/05 | hold | in parms dialog, shift+click should restore default value, not center thumb | ||
| 09/01/05 | hold | make a screensaver; requires a totally different architecture | ||
| 09/01/05 | hold | in playlist dialog's bank droplist, pressing 1 selects bank 10, and 0 doesn't work | ||
| 09/08/05 | hold | while window is being resized, display view size in status bar message; see notes | ||
| 09/11/05 | hold | add movie edit dialog; selection slider, save/delete selection, insert movie | ||
| 09/17/05 | hold | status bar should have an indicator for presence of MIDI clocks | ||
| 09/20/05 | hold | add option to specify LFO frequencies as fractions of tempo instead of in Hz | ||
| 09/20/05 | hold | change default frame rate to 30 for NTSC: look for problems with existing patches | ||
| 09/20/05 | hold | more things should sync to tempo, e.g. random phase, random patch, etc. | ||
| 09/25/05 | hold | can't select a specific number of sides without scrolling though intermediate values | ||
| 10/01/05 | hold | automatically sync tempo to audio signal; open-source beat detection DLL? | ||
| 10/01/05 | hold | can't use mouse to change zoom or hue while paused | ||
| 10/01/05 | hold | cull rings by clipping against display rect; might prevent lock-up when zooming in | ||
| 10/01/05 | hold | demo mode doesn't have enough variety; it should use effects, zoom, etc. | ||
| 10/03/05 | hold | add odd shift parameter; shift odd vertices, compensate for radius and center | ||
| 10/08/05 | hold | add dynamic patch memory; numeric keys, Ctrl+ to store, Shift+ to recall? | ||
| 10/10/05 | hold | assign mouse modes to properties dynamically, via mouse modes dialog | ||
| 10/10/05 | hold | load specific patch into crossfader input A or B; use Alt keys as modifiers in VJ mode? | ||
| 10/27/05 | hold | adjusting crossfader via UI or MIDI should stop auto-fade? | ||
| 12/08/05 | hold | allow crossfade time to change during auto-fade? | ||
| 01/04/06 | hold | add safe mode that limits number of rings if idle time drops to zero | ||
| 01/07/06 | hold | tap tempo doesn't appear in menus or shortcut key list | ||
| 01/11/06 | hold | movie player should set main frame caption to movie title; same for movie export? | ||
| 01/13/06 | hold | snapshot thumbnails in explorer via shell extension; need original window size? | ||
| 01/13/06 | hold | notes can be mapped to the playlist AND assigned to a property; prevent this | ||
| 01/16/06 | hold | zoom changes a snapshot if it has line widths > 1, especially if it's also mirrored | ||
| 02/08/06 | hold | should be able to change background color of a snapshot | ||
| 02/10/06 | hold | in movie export dialog, should be able to set frame range visually, via slider | ||
| 02/18/06 | hold | try adding feedback; save previous frame and blend with current frame | ||
| 03/22/06 | hold | should be able to change hue of subsequent rings without affecting existing ones | ||
| 03/28/06 | hold | allow multiple whorlds at once; extra views could draw to main view's device context | ||
| 04/18/06 | hold | MIDI setup should use combo boxes for channel and controller (JM) | ||
| 04/24/06 | hold | app should optionally open most recent playlist, or demo playlist if none (JM) | ||
| 04/24/06 | hold | crossfader should have Select A/B and Load Next/Prev instead of Load Next A/B (JM) | ||
| 04/24/06 | hold | crossfader needs a manual mode in which selecting a patch doesn't autofade (JM) | ||
| 05/05/06 | hold | video overlay should have speed control via MIDI; scratching or at least slow-motion | ||
| 05/05/06 | hold | bitmap export should work in veejay mode | ||
| 05/10/06 | hold | add bidirectional loop option to movie export: play forward and then in reverse | ||
| 05/20/06 | hold | mirror quadrants shouldn't always have to be the same size | ||
| 06/03/06 | hold | add video capture; major research project | ||
| 06/03/06 | hold | in playlist dialog, add option to hide all controls except list | ||
| 06/05/06 | hold | in playlist dialog, ctrl+wheel should scroll through banks | ||
| 06/19/06 | hold | aspect ratio distorts curved rings; hard to avoid, maybe it's a good thing? | ||
| 06/28/06 | hold | load next patch A/B doesn't work with video clips | ||
| 10/28/06 | hold | add separate folders for patches, playlists, videos, snapshots, movies | ||
| 12/01/07 | hold | overhaul UI to use control bars instead of modeless dialogs | ||
| 12/12/07 | hold | numbers dialog doesn't include global parameters; make it optional? | ||
| 01/25/08 | hold | add metafile export | ||
| 01/27/08 | hold | when Copies > 1, fill behaves unexpectedly because rings aren't concentric | ||
| 01/27/08 | hold | copies and spread should affect existing rings | ||
| 01/31/08 | hold | drag mode should hide cursor only while it's within view? | ||
| 02/02/08 | hold | add global hue, lightness, saturation; move RotateHue into main loop? | ||
| 02/08/08 | hold | frame rate change requires compensating Ring Growth and Color Speed; automate? | ||
| 02/08/08 | hold | should be able to restore ring state from patch, esp if ring growth was zero | ||
| 04/21/05 | punt | changing timer frequency shouldn't affect animation speed, but it does | ||
| 06/20/05 | punt | color speed should be compensated for growth rate; would affect existing patches | ||
| 07/02/05 | punt | starting task manager or changing display settings often hangs app (DirectDraw only) | ||
| 07/10/05 | punt | if print draws directly to printer DC in XOR mode, colors don't always match screen | ||
| 07/14/05 | punt | when tempo is low, dragging tempo slider fails; long delay before tempo changes | ||
| 07/19/05 | punt | can't print from detached view | ||
| 08/12/05 | punt | sometimes app won't receive MIDI; receiving MIDI with Reason fixes it (one PC only) | ||
| 09/15/05 | punt | show/hide dialog shortcuts don't work in playlist; shift is reserved for key assignment | ||
| 10/01/05 | punt | add rotation for the entire scene, including X/Y shift; too expensive | ||
| 10/17/05 | punt | if middle button is pressed while navigating a main menu, master speed changes | ||
| 10/18/05 | punt | crossfading between patches with different ring growth LFOs causes glitching | ||
| 04/11/06 | punt | if view is detached and overlaps toolbar, pressing a toolbar button enables zooming | ||
| 04/13/06 | punt | move origin/zoom damping into view? Only makes things more complicated | ||
| 04/27/06 | punt | reversing direction in fill mode causes an unfilled ring | ||
| 05/07/06 | punt | add command to clear video history; too dangerous | ||
| 05/18/05 | sack | tried DirectDraw scaling for giant pixels; unsupported in GDI, also complicates mirror | ||
| 07/01/05 | sack | record all performance input for movie-making; recording snapshots instead | ||
| 07/06/05 | sack | tried adding perspective; reduces detail and moiré effects, disappointing | ||
| 08/03/05 | sack | tried damping on master speed; too twitchy and unpredictable | ||
| 08/05/05 | sack | in non-VJ mode, holding down left button should drag origin: too annoying | ||
| 09/09/05 | sack | investigate bevel and miter joins; they're more complicated and they look terrible | ||
| 09/11/05 | sack | in mirror mode, offset random origin's bounding rectangle by -.25; not enough variety | ||
| 10/07/05 | sack | in mix mode, file/save should map to save mix, not save document; too confusing | ||
| 02/02/08 | sack | TimerHook needlessly updates rings it's about to delete; fix benched slightly worse |