summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor.cc
AgeCommit message (Collapse)Author
2015-02-28prepare saving video-export settings.Robin Gareus
* migrate dialog from Editor to UI. * make it a WM proxied window * prepare applying state after construction..
2015-02-07Properly deallocate memory when clearing selection_op_history andnick_m
before XMLNode*s. Improve some comments.
2015-02-05Clean up Session's _current_trans when aborting a drag.nick_m
2015-02-05Make redo action insensitive after new command.nick_m
Don't erroneously send first_move more than once after autoscroll drag.
2015-01-11remove track-selection requirement so fit_selected_tracks works as coded. ↵Ben Loftis
change name to fit-selection. remove action to zoom (both axes) because this can trivially be accomplished by clicking (f)it and (z)oom sequentially, and it frees a keybinding. remaining bug: Fitting a selection of MIDI regions doesnt work right
2015-01-11clean up whitespace & debug output in 44203ceRobin Gareus
2015-01-11Fix AutomationTrackItem rubberband click thinking it was unhandled.nick_m
Fix several other cases where a single mouse click could cause several (not nested) selection ops. Fix missing selection memento for midi notes and midi commands. Rename some variables. Fix random style issues.
2015-01-08change Split menu entry to say Split/Separate (it was already doing that ↵Ben Loftis
anyway). also fix a bug so you can drag the playhead and split at the playhead location
2015-01-08missing parenthesisBen Loftis
2015-01-08make MouseTool tooltips more consistentBen Loftis
2015-01-07Start step entry at playhead.David Robillard
2015-01-07Fix internal/external snap type restoration.David Robillard
2015-01-07Draw beat sudivisions according to snap setting.David Robillard
2015-01-07Factor out grid beat divisions.David Robillard
2015-01-07now that regions and range selections are exclusive, the separate actions to ↵Ben Loftis
set ranges or zoom to selections are redundant. save some menu entries and keybindings by consolidating them. also consolidate some code with new function get_selection_extents(). as a side-effect, this checkin fixes the assert failure in play_with_preroll
2015-01-07MusicalTime => Beats.David Robillard
2015-01-02Add automation track control points to undo history (and selection_op history).nick_m
2015-01-02Fix previous commit.nick_m
2015-01-02Make editor undo/redo actions sensitive at appropriate times.nick_m
2015-01-02Separate selection operations into their own temporary history mechanism.nick_m
The user can now replay *all* earlier selection operations until the next session undo/redo command, or the completion of a new operation. Nothing relating to selection ops is stored, and selection operation history is begun on first idle. Selection operation history is fundamentally different from the history of operations which act on a selection in terms of both their viewport and the amount of information required to replay them. WRT undo, the user of a selection op doesn't care about the viewport state at the beginning of an op, but rather that at the end of the previous one.
2015-01-01Move Timers/Timeouts from ARDOUR_UI into functions in timers.h and use ↵Tim Mayberry
PBD::Timers
2014-12-30rename "Convert to Region In-Place" to "Separate" since it is known by that ↵Paul Davis
name elsehwere and in the code
2014-12-28MIDI transform dialog.David Robillard
2014-12-28apply font-scale to overall layout (rulers, track-header) - fixes #6088Robin Gareus
2014-12-25Context menu for applying edits to note selection.David Robillard
2014-12-23Fix cursor update on nested entry.David Robillard
For example, if you're in a note and something about the mode changes, it's the underlying region context that needs to change. So, seems we need a stack of entry contexts to deal with this sort of thing. Switching in/out of smart mode still doesn't update immediately because we don't have the y-coordinate needed to update it.
2014-12-23fix slow behaviour when changing visible track height in ↵Paul Davis
Editor::set_visible_track_count()
2014-12-22move all (G)UI related configuration parameters into UIConfiguration, not ↵Paul Davis
RCConfiguration
2014-12-20Fix various cursor problems.David Robillard
Add a new scoped cursor system that makes it much harder to screw up and end up with stick cursors and so on.
2014-12-18Move object tool to "grab" tool (key g).David Robillard
Makes all tools under the left hand and eliminates the need for toggling.
2014-12-18Remove mouse mode toggling.David Robillard
2014-12-18Restore snap when switching to/from internal.David Robillard
2014-12-18Make tools toggle-like by switching to last mode.David Robillard
2014-12-18Remove internal edit mode and add "content" tool.David Robillard
2014-12-18Add editor selection state to session history via a SelectionMemento, whichnick_m
combines selection related editor properties with the current editor selection. The related editor properties are: mouse mode, zoom setting, left frame of the canvas, y origin of the canvas. Selection state now includes region views (storing the underlying region id) and time. This patch also fixes a region mute undo bug.
2014-12-17Fix potential crash when right clicks go astray.David Robillard
This should be impossible, since nothing but an audio region should have a fade to begin with, but just doing nothing in this case does no harm.
2014-12-14fix up requested color names everywhere.Paul Davis
Thank <deity> for emacs ... space-uncamelcase-word-at-point FTW
2014-12-14initial pass to replace all UIConfiguration::get_XXXXXX() calls with ↵Paul Davis
UIConfiguration::color(name). IMPORTANT: names have not been downcased and spaced yet, so many colors are not found
2014-12-09add set-session-extents-from-edit-rangeBen Loftis
2014-12-07Unify gain and draw tools.David Robillard
There might be a few special cases lingering around from attempts at magic tool business, but this seems to work fine as far as I can tell.
2014-11-22Wrap MusicalTime in a class.David Robillard
This lets us get a more explicit handle on time conversions, and is the main step towards using actual beat:tick time and getting away from floating point precision problems.
2014-11-18Fix edit point selector on Mixbus.David Robillard
2014-11-16Support cut/copy/paste of several regions and lines at once.David Robillard
The idea here is to do the reasonable thing, and copy objects of some type (e.g. MIDI region, gain line) to tracks with a matching type. The user can override this with a track selection, which will be used straight-up. Lost: ability to copy/paste lines across types, e.g. gain to pan. This is often questionable, but sometimes useful, so we will need to implement some sort of "greedy mode" to make it possible. Implementation simple, but not sure what to do. Perhaps this should only be possible if one automation track is explicitly (i.e. via track selection) involved, and the types are at least compatible-ish?
2014-11-16Add "maybe" rounding modes for rounding only if necessary.David Robillard
2014-11-16Use an enum for RoundMode instead of magic numbers.David Robillard
No functional changes in this one (for easier auditing), but towards having round up/down only if necessary modes, rather than kludging around that situation with a double round as we do currently.
2014-11-17NULL pointer dereference?Robin Gareus
2014-11-15round control-scroll offsets towards zeroRobin Gareus
fixes MCU "Locate called for negative sample position"
2014-11-14Implement "multi-paste" for notes, regions, and automation.David Robillard
The idea here is that pasting several times to the same location doesn't make sense. Instead, the paste is appended past the last paste, snapped to the grid. This make it simple to replicate a given section a number of times, simply by copying once and pasting several times. This behaviour only appears when successive pastes are done to the same location (whatever the edit point is). When the paste point changes, the "multi-paste" state is reset. Boots 'n cats 'n boots 'n cats.
2014-11-14add abort() to non-reached codeRobin Gareus
This cleans up a lot of false-positives in static analysis and also helps compilers to optimize code paths in general. (tagging the fatal stingstream operator as ‘noreturn’ is far less trivial)
2014-10-29fix typo in 58fec98aRobin Gareus
the documentation was correct: “GTK+ uses G_PRIORITY_HIGH_IDLE + 10 for resizing operations, and G_PRIORITY_HIGH_IDLE + 20 for redrawing operations.” but the priority for the idle visual changer was wrong. fixes, follow-playhead and zoom/scrolling under load (no idle)