Never use the _optimization_iterator when looking for a note to update or select
because those two conditions may be preceded by note add/delete operations (including
those via undo/redo) which would make the iterator invalid.
The _optimization_iterator only makes sense when actually iterating over the event list,
which is ironic because that's the one time we don't need it
This is more consistent with the naming of the font size for the canvas
via wscript.
Also, provide the new "very small" font size.
Also, several styles defined in clearlooks.rc.in used spaces in
font names or derived styles instead of underscores, this fixes that.
we need to call
get_toggle_action (char const*, char const, bool d = false)
and not
get_toggle_action (const string& name, bool)
For whatever reason `(string, char*)` matches the latter
function's signature.
> warning: 'sscanf' may overflow; destination buffer in argument 6
> has size 32, but the corresponding specifier may require size 33
> [-Wfortify-source]
MidiCueView needs an _active_notes array setup when it is assigned a track that is
already rec-enabled, because we can start clip recording without session record-enable
being active.
MidiRegionView does not need this; it uses session rec-enable status to create or delete
_active_notes (also transport stop, sometimes)
Having removed boost::function.hpp we need to replace it with gtkmm2ext/actions.h - otherwise, glibmm/refptr.h can't make sense of the type 'Gtk::ActionGroup' (go figure...)
Rename the worker functions to make it clear that their name in this
case isn't magic. These functions "are not" the waf commands. It is the
custom build context class definitions that define the i18n commands ...
which will invoke these top level worker functions which in turn invoke
the others recursively.
The bare printing of the build environment in the top level i18n command
seems to be old debug code that safely can be removed.
Regular .h files *should* be self-contained and independent of previous
includes and guarded to only include once. Make it clear which files
that *doesn't* apply for at all.
the rest from `tools/convert_boost.sh`.
* replace boost::function, boost::bind with std::function and std::bind.
This required some manual fixes, notably std::placeholders,
some static_casts<>, and boost::function::clear -> = {}.