This also now shows a new green 'play cursor' when ctrl is held down on wave track, and shift being held down is signalled by a cursor change to finger-pointer too.
I also accidentally enabled EXPERIMENTAL_MIDI_OUT. We may disable that in December for release. Leaving it in for now.
I've made it where you can enable and disable via experimentals:
EXPERIMENTAL_REALTIME_EFFECTS
EXPERIMENTAL_EFFECTS_RACK
You will notice that, as of now, the only effects currently set up for
realtime are VSTs. Now that this is in, I will start converting the
rest.
As I start to convert the effects, the astute of you may notice that
they no longer directly access tracks or any "internal" Audacity
objects. This isolates the effects from changes in Audacity and makes
it much easier to add new ones.
Anyway, all 3 platforms can now display VST effects in graphical mode.
Yes, that means Linux too. There are quite a few VSTs for Linux if
you search for them.
The so-called "rack" definitely needs some discussion, work, and attention
from someone much better at graphics than me. I'm not really sure it should
stay in as-is. I'd originally planned for it to be simply a utility window
where you can store your (preconfigured) favorite effects. It should probably
revert back to that idea.
You may notice that this DOES include the API work I did. The realtime effects
were too tied to it and I didn't want to redo the whole thing. As I mentioned
elsewhere, the API stuff may or may not be very future proof.
So, let the critter complaints commence. I absolute KNOW there will be some.
(I know I'll be hearing from the Linux peeps pretty darn quickly. ;-))
It seems that over the years things have been added/removed to
the internal theme cache (ThemeAsCeeCode.h) and some discrepancies
have crept into the image/color definitions in AllThemeResources.h.
So, I dumped the colors from ThemeAsCeeCode.h, compared them to
those in AllThemeResources.h and the ones that were "not default"
in AllThemeResources.h were ifdef'd as EXPERIMENTAL_THEMING and
the original colors were restored.
There had been several removals of images from AllThemeResources.h,
so I simply used theme preferences to clean them up.
Finally, just recreated the ThemeAsCeeCode.h with theme prefereces.
EXPERIMENTAL_LINKING -> EXPERIMENTAL_SYNC_LOCK
Restore some "border" lines in TrackInfo.
Get rid of unused DEFINE_COLOUR( clrTrackInfoSyncLockSel...).
Clean out some undocumented commented-out code. Add/remove some comments.
Remove tiles from rulers. They were interfering with visibility of ruler marks.
Restore the icon to TrackInfo, but not in the title bar. Instead, when sync-lock is on and the track IsSyncLockSelected(), decrease the width of the minimize button and show the icon to the right of it. This way, it shows even when the track is minimized.
final but it's a big improvement. Reversed a couple changes from
original indication scheme that are no longer necessary. Unfortunately
it's really hard to remove colors from AllThemeResources.h.