summaryrefslogtreecommitdiff
path: root/gtk2_ardour/midi_time_axis.cc
AgeCommit message (Collapse)Author
2019-08-12Fix middle-click note selectionRobin Gareus
2019-08-03Update GPL boilerplate and (C)Robin Gareus
Copyright-holder and year information is extracted from git log. git history begins in 2005. So (C) from 1998..2005 is lost. Also some (C) assignment of commits where the committer didn't use --author.
2019-07-14Remember MIDI-track note-range -- #7773Robin Gareus
Previously only manual changes of the note-range using the scroomer. The NoteRangeChanged() was ignored for implicit changes (e.g. while recording, step-entry) and automatic-fit that didn't involve a drag event.
2019-07-14Remove cruft: unused callbackRobin Gareus
2019-06-04Clarify MIDI CC menu ambiguityRobin Gareus
CCs use 0-based counting, however CC 0 and 32 (bank select) are skipped in Ardour's CC menu. This lead to some misleading enumeration. Now, group CCs by 32, skip sub-menu if there are fewer than 32 named items, and otherwise actual CC min/max numbers per named list.
2019-03-07Fix some Gtk::Menu related memory leaksRobin Gareus
A Gtk::manage()d widget will be deleted when its parent container is destroyed. Top-level context menus are not inside a container and hence need to be manually deallocated. This adds explicit delete calls for menus where there is a member variable reference to the Menu.
2017-09-24convert codebase to use Temporal for various time typesPaul Davis
2017-09-18manually fix up various cases where Gtk:Frame foo_frame had been changed to ↵Paul Davis
foo_sample
2017-09-18globally change all use of "frame" to refer to audio into "sample".Paul Davis
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode and video in order to keep the legible
2017-09-09Migrate PC dialog to RouteUI, midnam handing to RTAV.Robin Gareus
This allows to to bring up the PC dialog from Editor/Editor-Mixer & Mixer for both MIDI Tracks as well as MIDI Busses.
2017-09-09GUI part of LV2 midnam race condition fixRobin Gareus
..and support for midnam patches on MIDI Busses.
2017-09-08PatchChange Dialog: update title & refresh midnam on changeRobin Gareus
2017-09-08Patch select: apply conventions for context menus.Ben Loftis
2017-09-08Rework Patch-Change/Select DialogRobin Gareus
2017-08-24Allow to send immediate PC messages without closing the dialog.Robin Gareus
Perhaps every change should trigger a PC (without "Apply") button?!
2017-07-21Properly propagate TAV TimeSelectionRobin Gareus
2017-07-17Remove ArdourPrompter wrapperRobin Gareus
2017-07-17Remove <gtkmm.h> include from header files.Robin Gareus
2017-07-17Remove unused sources & includesRobin Gareus
2017-07-17Separate Ardour UI widgets into dedicated libraryRobin Gareus
2017-04-19Use PBD::string_to<bool> in MidiTimeAxisView classTim Mayberry
As the conversion was performed with PBD::to_string
2017-03-29Remove expensive menu for sending immediate Patch Changes, use a dialogRobin Gareus
2017-02-04rework snapnick_m
snap now fills in a struct (MusicFrame) which contins a snapped frame along with a music divisor. this gives useful information wrt magnetic snap which may or may not have rounded to an exact musical position. region position may now be set musically (using quarter notes for now). this patch fixes several problems in the current code: - dragging a list of music-locked regions now maintains correct musical offsets within the list. - splitting regions using magnetic snap works correctly (#7192) - cut drag should now work correctly with magnetic snap. - musical length of split midi regions is no longer frame based.
2016-12-23midi scrooming performance updates.nick_m
- MGR visibility is handled by update_note/hit() MRV unconditionally updates MGR events - remove MidiGhostRegion::update_range() - rename set_contents_height -> update_contents_height
2016-12-17remove channel filter status and button from MIDI track header, access via ↵Paul Davis
context menu
2016-12-06Don't assume patch-banks are populated.Robin Gareus
2016-12-06Allow to send Immediate Patch ChangesRobin Gareus
2016-11-25amend last commit.nick_m
2016-11-25midi scroomer updates streamview during drags.nick_m
2016-10-30Drop UpdateMidnam shared_ptr reference when the plugin is removedRobin Gareus
2016-10-29GUI support for plugin provided midnamRobin Gareus
2016-08-26Update CC automation menu when changing channel selectionJulien "_FrnchFrgg_" RIVAUD
2016-08-25add nascent poly-phonic pressure to automation menu for MIDI tracksPaul Davis
2016-07-14enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.hPaul Davis
2016-07-10remove reference "const int32_t&" -> const int32_t"Robin Gareus
this simplifies lua-bindings and also let's the compiler worry about constant primitive types.
2016-07-10Exact beat for added regions.nick_m
2016-07-10Paste uses exact beats. rework _start_beats calculation in copy-with-offset ↵nick_m
ctor.
2016-07-10Exact beat - provide audio->music mapping for region split.nick_m
- for those not in the know, this series provides a way to remove the temporal distortion introduced when using an audio frame-based gui for music-locked objects. In short, the gui uses an audio frame representation to move objects. It displays the object using frame_at_beat(), quantizing the time value to audio frames. This is fine until the user selects that frame but expects it to be interpreted as a beat. Thus beat_at_frame() would not produce the user-expected beat (temporal quantization error of up to 0.5 audio samples). This is one method of mapping audio time to music time accurately.
2016-07-10Make some musical operations on music-locked regions operate in beats.nick_m
- use exact beats to determine frame position. - see comments in tempo.cc for more. - this hasn't been done for split yet, but dragging and trimming are supported.
2016-06-05tweak API of SelectablePaul Davis
2016-06-05fix initialization in MidiTimeAxisViewPaul Davis
This is another "most derived" class and so needs to initialize the SessionHandlePtr virtual base class
2016-02-13Fix 6031: Fix inactive MIDI track headers when reloading sessionJulien ROGER
Update the visual state of MidiTimeAxisView accordingly to its route in MidiTimeAxisView::set_route()
2015-12-02Disable scrolling in the dropdown menus of midi region heads.André Nusser
Instead pass it to the canvas as proposed by x42 in #6143.
2015-10-05NOOP, remove trailing tabs/whitespace.Robin Gareus
2015-10-04globally remove all trailing whitespace from ardour code base.Paul Davis
Paul Davis was responsible for introducing almost all of this.
2015-09-16Use ARDOUR_UI_UTILS::set_tooltip rather than via ARDOUR_UI::set_tipTim Mayberry
This removes the direct dependence on ARDOUR_UI/Gtk_UI for setting tooltips. Removes inclusion of ardour_ui.h from 16 files.
2015-08-15Highlight note in piano roll - #6510Robin Gareus
2015-06-17More _reversible_command() auditing in the gui.nick_m
- try to keep begin/commit pairs in the same file where possible.
2015-03-29Fix mute of MIDI tracks with channel forcing.David Robillard
This moves MIDI channel filtering into a reusable class and moves filtering to the source, rather than modifying the buffer afterwards. This is necessary so that the playlist trackers reflect the emitted notes (and thus are able to stop them in situations like mute). As a perk, this is also faster because events are just dropped on read, rather than pushed into a buffer then later removed (which is very slow). Really hammering on mute or solo still seems to produce stuck notes occasionally (perhaps related to multiple-on warnings). I am not yet sure why, but occasional beats always.
2015-03-25Fix some strings incorrectly marked for translation.nick_m
My apologies to translators.