summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor.h
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-11Editor::sample_to_pixel() always returns an integer value, but it should use ↵Paul Davis
explicit rounding
2015-02-05Clean up Session's _current_trans when aborting a drag.nick_m
2015-01-16Put playhead on top of everything.David Robillard
Achieve this by adding a new hscroll group just for cursors. That requires a slightly smarter window_to_canvas() to deal with overlapping sensitive scroll groups. New rule is that scroll groups can overlap, but the most sensitive one found from the top down will be chosen to translate coordinates. This basically means don't overlap scroll groups with different sensitivities. In the presence of scroll groups, having a canvas-wide window_to_canvas() and/or canvas_to_window() fundamentally makes no sense. At some point in the glorious future we should kill those and use only item-relative coordinate translation.
2015-01-12Fix broken whitespace (noop).David Robillard
2015-01-12Remove unused vertical scroll group.David Robillard
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-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-07Start step entry at playhead.David Robillard
2015-01-07Fix internal/external snap type restoration.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-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.
2014-12-29Fix internal select all.David Robillard
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-24Add instrument selector to import dialog.David Robillard
Idea here is for importing large multi-track MIDI files to be immediately listenable upon play without tediously adding a ton of instrument plugins manually.
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-22consolidate zoom-to-range and zoom-to-regions into: zoom-to-selection. ↵Ben Loftis
ToDo: zoom to selection of midi notes, control points, tracks(?)
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-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-11tweaks to minsec and timecode ruler display, especially at very high zoom.Paul Davis
Imported from work on Tracks done in Tel Aviv, November 2014
2014-12-09add set-session-extents-from-edit-rangeBen Loftis
2014-12-07Fix alignment of automation paste.David Robillard
Preserve alignment between notes and control points when doing an internal copy/paste of both. Relative alignment between points on multi-paste is still not preserved. Both behaviours here are actually useful, perhaps a modifier...
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-12-06Add legatize and remove overlap MIDI operations.David Robillard
We're going to need the ability to apply MIDI edit operations to a note/control selection soon...
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-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-10-24port changes to ARDOUR::Location and ARDOUR::Locations APIs from Tracks to ↵Paul Davis
Ardour. Fixes deadlocks caused by mutex on Locations list, and clarifies the purposes and uses of the class-level and object-level change-related signals.
2014-10-21remove mouse zoom mode; bind z to zoom-to-rangePaul Davis
2014-10-16add tearoff reattach for the editorPaul Davis
2014-09-19use new ARDOUR::Location signals in GUIPaul Davis
Conflicts: gtk2_ardour/editor_markers.cc
2014-09-17add action and menu item to control use of skip playbackPaul Davis
2014-07-28alternate layout with a full-height editor-mixer, for mixbusBen Loftis
2014-07-24Revert previous select-strips-under-mouse behaviorBen Loftis
However, keep the path for deletions in the editor-mixer via _entered_mixer_strip TODO: if nothing was deleted, assume the user was trying to delete something in the editor instead Show selected plugins by a red border TODO: more work on the selection model for plugins and mixer strips
2014-07-23Allow deletion of processors in editor_mixer_strip by pointing and pressing ↵Ben Loftis
Delete This had to be hacked because the editor_mixer strip is on the editor and doesnt respond to mixer keybindings. Also force the gain intry to lose focus if the user leaves the mixer strip. this will probably solve some long-standing complaints. although perhaps a more elegant solution is possible.
2014-07-23holding Primary(ctrl/cmd) allows user to make noncontiguous strip selectionsBen Loftis
2014-07-23Add some new zoom-to-selection actions, so zoom tool is less needed.Ben Loftis
Reverse order of items in the zoom menus to match Ardour. Consolidate the extra zoom math into a function; this fixes a problem in zoom-to-session.
2014-07-15add Editor::trackviews_height() convenience function to determine height of ↵Paul Davis
trackview area of canvas; use to help fix set_visible_track_count(); don't consider hidden tracks in that function; add "Selected" to that selector menu
2014-07-14scroll up/down by tracks uses top edge as "focal point"; fix some other ↵Paul Davis
nasty code details
2014-07-14fix the visible_tracks_selector to show * when user tweaks a track height. ↵Ben Loftis
various experimental tweaks to visible_tracks_selector and a new zoom_preset_selector for Mixbus.
2014-07-10add "fade range" operation, bound to alt-f at present by defaultPaul Davis