summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_canvas.cc
AgeCommit message (Collapse)Author
2020-04-17when re-entering the track canvas in internal edit mode, ensure that kbd ↵Paul Davis
focus is set
2020-04-14Drag/Drop import region to where it was droppedRobin Gareus
Previously only drag/drop to existing tracks used the target time-position and files imported as new tracks using the drop-zone were placed at 00:00:00:00.
2019-11-09Preview video frame when draggingRobin Gareus
2019-11-09Add convenience methods to test for active dragsRobin Gareus
2019-09-26Fix cursor icon over region-bar (use trim)Robin 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-08-01(Source List) merge fixesBen Loftis
2019-08-01(Source List) Fix drag-n-drop.Ben Loftis
2019-05-13Fix a bug for drag and drop from nautilus/dolphin (more spectific format ↵Jean-Marie Favreau
first in the list of possible inputs)
2019-04-13NO-OP: whitespaceRobin Gareus
This fixes mostly <tab> after <space> and similar <tab> not used for indenting as well as some related code alignment issues.
2018-11-28NO-OP: Clarify function nameRobin Gareus
2018-11-28Use central method to check for engine where requiredRobin Gareus
These are generally places where tracks/busses are created or port connections change.
2018-02-24NO-OP: whitespaceRobin Gareus
- remove trailing whitespace - remove space after opening brackets and before closing brackets - add space around operators - do not use '//' for multi-line comments, do not use "//" on line-start to comment-out code breaking indenting (-Wmisleading-indent) - do add a single space after comment-start /*{SPACE}... or //{SPACE}... - reserve duplicate whitespace " " for alignment, remove other duplicate whitespace - use established "TODO" and "XXX" (highlighted keywords) - remove equal-sign series "====" (those indicate merge conflicts)
2018-02-09new_grid: Rewrite of Snap and Grid. (squashed commit)Ben Loftis
Separate Snap from Grid. Lots of naming changes. Multiple simultaneous snap options allowed. Grid is one of the possible Snap options. Grid uses the same data as the rulers. Replace complicated tempo_lines with simple grid_lines. The Grid is zoom-scale-sensitive along with the rulers. If you are zoomed out, grid becomes coarser.
2018-02-09new_snap: Snapped Cursor ( squashed commit )Ben Loftis
Snapped Cursor is a line that follows the edit point, and indicates where the operation will occur. This replaces and extends the line that appears with the Cut tool. New associated preferences: snap_threshold and show_snap_cursor.
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-08-26Editor zoom: add zoom_to_extents()Ben Loftis
2017-08-26Editor zooming: Config preference to define how much zooming will be easily ↵Ben Loftis
allowed beyond the session_ui_extents()
2017-08-26Editor zooming:Ben Loftis
Add config setting for playhead-scroll-speed. Default to 100% for now, but for new users we might later default it to something slower. If you want to scroll quickly, it is preferred to zoom out first, then scroll.
2017-08-26Editor zooming:Ben Loftis
New function session_gui_extents() reports the extents of all playlists. ToDo: include region playlists, when they become available. also: slow-down autoscroll (ToDo: make a config variable for this)
2017-07-17Clean up library inheritance (colors.h, utils.h)Robin Gareus
make libwidget independent of libcanvas. Confine basics to pbd and gtkmm2ext.
2017-07-01NO-OP whitespace (updated GH PR #357)Thomas Brand
2017-06-26Changes to Editor::visual_changer to support Item/Canvas::prepare_for_renderTim Mayberry
This is necessary to allow calculation of correct intersection of visible canvas area and items for the new Item::prepare_for_render() API. samples_per_pixel must be set first to calculate the new horizontal canvas position in Editor::set_horizontal_position and then WaveView::set_samples_per_pixel will eventually call WaveView::prepare_for_render for those items that are visible on the new canvas position at the new position. Or if there is not a change to zoom state then call Canvas::prepare_for_render explicitly. Also changes so that each method is only called once during Editor::visual_changer
2017-06-26Coalesce visual changes to canvas/items and allow canvas to renderTim Mayberry
First visual change will be processed as normal and then blocked until the canvas renders the change. If further visual changes need processing then Editor::pre_render callback will schedule another expose/redraw/render. This prevents an issue where idle_visual_changer is called many times in response to events(keys/motion/etc) but the canvas does not get a chance to render any but the last one which results in a big pause/jump. This results in a more responsive canvas and in particular a smoother and more predictable zooming experience.
2017-03-21Use NSGLView backed main editor canvasRobin Gareus
2017-02-15simplify arguments to Editor::sensitize_the_right_region_actions()Paul Davis
2017-02-15use leave/enter from track canvas to be the primary driver of region action ↵Paul Davis
sensitivity This works for context menus also, because GTK sends us leave/enter notify events when they appear.
2017-02-09NO-OP: whitespace conversionPaul Davis
2017-02-09when considering whether or not to autoscroll teh canvas, first translate ↵Paul Davis
allocation boundary into toplevel coordinates
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-16add arguments (unusued) to control whether or not SMF tempo map is used ↵Paul Davis
during import
2016-12-14GUI changes to allow user to specify how/if to use SMF track/instrument ↵Paul Davis
names during import
2016-10-17Performance: store NoteBase UIConfiguration colors between config changes.nick_m
Cumulative time in percent while wiggling the tempo lines rapidly. Before: MidiRegionview::update_sustained 12.02 NoteBase::base_color 6.43 MidiGhostRegion::update_note 3.12 Note::set 1.27 TempoMap::frame_at_quarter_note 0.59 _dynamic_cast 0.13 After: MidiRegionview::update_sustained 10.49 MidiGhostRegion::update_note 5.57 Note::set 2.52 TempoMap::frame_at_quarter_note 1.13 NoteBase::base_color 0.17 _dynamic_cast 0.17
2016-07-14enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.hPaul Davis
2016-04-13get editor controls layout/midi track header/scroomer to be the correct heightPaul Davis
Using is_mapped() is wrong, since if the editor was not visible (i.e. program has not yet shown the editor "tab", then _group_tabs will have is_visible() == true but is_mapped() == false
2016-03-19reset autoscroll speed to minimum when scrolling stopsColin Fletcher
Reset the autoscroll counter when scrolling stops, and correct the check when vertical autoscrolling is permitted for whether scrolling has stopped.
2016-02-22change GTKOSX macro constant to use __APPLE__ insteadPaul Davis
2016-02-22remove all trace of SAE from source code.Paul Davis
This had become incoherent over time, and posed a development hazard and burden going forward
2016-02-22replicate the remove-all-trailing whitespace commit(s) in masterPaul Davis
2016-02-22cleanup various merge conflict resolution errors/omissionsPaul Davis
2016-02-22first compilable version of tabbable design.Paul Davis
I would have loved to split this apart, but there are just so many interrelated changes, it makes little sense and would be a huge effort that would break future git bisect use because so many intermediate commits would not compile
2015-12-06Fix inoperative keyboard modifiers when leaving autoscroll.nick_m
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-16Move UIConfiguration Singleton into UIConfiguration headerTim Mayberry
This removes the direct dependence on ardour_ui.h from 39 files
2015-09-16Move DPIReset and ColorsChanged signals into UIConfigurationTim Mayberry
2015-08-05add synth when drag/drop importing .mid - fixes #6474Robin Gareus
2015-07-16merge fixBen Loftis
2015-06-28show selection trim cursors in Range modeBen Loftis
2015-06-21Mkae automation line / gain line cursors consistent.nick_m