summaryrefslogtreecommitdiff
path: root/gtk2_ardour/time_axis_view.h
AgeCommit message (Collapse)Author
2016-07-25the endless quest to plug memory leaks -- episode 379Robin Gareus
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-10Paste uses exact beats. rework _start_beats calculation in copy-with-offset ↵nick_m
ctor.
2016-07-06many changes associated with rationalizing selection flowPaul Davis
2016-06-05use, or mostly use PresentationInfo for selection status of Routes.Paul Davis
Needs extension to Surfaces, replacing GuiSelectionChanged signal concept
2016-06-05remove duplicate name_label widget from TimeAxisView (AxisView provides it)Paul Davis
2016-06-03move from PresentationInfo::global_order() to PresentationInfo::order, and ↵Paul Davis
fix up part of reordering behaviour Dragging tracks/busses in the editor *below* VCAs still does not work
2016-06-02make all TimeAxisView derived types return PresentationInfo for sortingPaul Davis
2016-06-01remove un-used name_hbox widget from TimeAxisViewPaul Davis
2016-05-31stop playing silly games with widget packing when editing a route name in ↵Paul Davis
the edito Use a FloatingTextEntry instead. All clever functionality from previous implementation has been retained.
2016-05-31make selectability of a TimeAxisView be overridablePaul Davis
2016-02-13Fix 6609: Right-click in active track name box crashesJulien ROGER
When right-clicking in the text entry, popup menu grabs focus. Consequently, the "focus out" handler is called, destroys the text entry and replaces it by the label name of the track. When menu pops up, it tries to access to a widget no longer available.
2015-05-27prevent crash when using WM close button on "new route name contains bad ↵Paul Davis
chars" dialog. The dialog would be created twice, once because the user hit enter etc. to indicate they were done editing, and once because focus left the name text entry, also indicate the end of editing. We now note that we're already processing the end of a name edit, and do nothing in that case
2015-03-19add API to select TAV height mode.Robin Gareus
preparation for further Summary and Number of visible track count fixes. * “Only Self”: don’t resize child-views (old default) * “Total Height”: distribute height equally among all visible child [automation] lanes * “Height per Lane”: given height should be applied to all sub-views.
2015-01-09fix select-all-regions-within (it used to select everything overlapped)Ben Loftis
2014-12-28apply font-scale to overall layout (rulers, track-header) - fixes #6088Robin Gareus
2014-12-18Remove internal edit mode and add "content" tool.David Robillard
2014-12-06Fix crash when resizing a track quickly.David Robillard
Triggered by resize drag an automation track very quickly upwards to shrink it to the minimum. Caused by unsigned integer underflow.
2014-12-06Support paste between automation lanes.David Robillard
Also push the increasingly unwieldly paste parameters into a context object. As with othe things, currently it is only possible to do "cross-type paste" by explicitly selecting the target track. We will need to get automation region view selection working to do better here, but at least for now it's possible to get the data over.
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-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-01retain selection on track-height changeRobin Gareus
2014-09-08Move Scroomer out of Track Selection Box:Robin Gareus
* no horiz space between Piano-Roll & Track * 1:1 mapping of note's vertical space (no border)
2014-09-06gtk style related fixes:Robin Gareus
* remove some old/unused styles * fix plugin-ui button (hover color when active) * consistent style for route buttons (and related ArdourButton updates)
2014-09-06Revert "use a gloabl size group for track-header ctrl buttons"Robin Gareus
This reverts commit 86eb72955c76575b75a2b9e535162ca7e0612bfd.
2014-09-04use a gloabl size group for track-header ctrl buttonsRobin Gareus
2014-09-04further tweaks pertaining the track-number heightRobin Gareus
2014-09-04dedicated TAV separator lineRobin Gareus
2014-09-03quick mockup of indented automation-track headersRobin Gareus
XXX: If we keep this approach, TimeAxisView::show_at() needs to be fixed. TimeAxisView::_canvas_display should draw the separator line at the top, and regions inside moved down 1px.
2014-09-02static global definition for track-header widthRobin Gareus
the track-header minimum width is defined by the name-label (IFF the 2nd row fader is not visible, but the fader is rather small by default and and grows) track-header width in almost all cases is: name-label width + width of three button (1 char each) + max size of all meters (if visible) + width of MIDI scroomer (if visible) + 2px table cellspacing (per column)
2014-08-31the return of the time_axis_vboxRobin Gareus
2014-08-31right side track-header control buttons (for non mixbus profile)Robin Gareus
2014-08-31simplify time-axis packing: consistent table layoutRobin Gareus
2014-08-30NOOP, re-indent, fix whitespaceRobin Gareus
2014-08-29red-border selection for tracks, regions, and processors. requesting commentsBen Loftis
2014-08-11shuffle packing order to accomodate midi controlsBen Loftis
2014-08-11New track header layout.Ben Loftis
Vertical alignment no longer depends on number of meters shown. Looking for comments.
2014-07-10add "fade range" operation, bound to alt-f at present by defaultPaul Davis
2014-06-22more canvas refactoring.Paul Davis
Remove Canvas::Layout, use Canvas::Container for the same purpose, move child-rendering into Item::render_children() so that it could theoretically be used by any derived type.
2014-06-21use newly factored canvas in gtk2_ardourPaul Davis
2014-02-25add ::covered_by_y_range() to TimeAxisViewPaul Davis
2013-11-03send enter events to EVERY newly entered item (ignore the bool return from ↵Paul Davis
the event handler); other canvas debugging aids;switch items_at_point() to use canvas coordinates
2013-04-15Fix dragging objects on the canvas and remove redundant canvas groupsPaul Davis
Delivery of fake motion events to the editor needed the event coordinates to be in canvas space, as they are with "real" events. Editor and other objects had many redundant groups from timbyr's work on gnomecanvas to scroll by moving groups. We don't need this anymore with cairo-canvas (though possibly a stationay background group for the canvas might be useful again one day as in the SAE logo. Its implementation would be fairly different though, since we would have to explicitly move the group on every scroll, since nothing else ever moves on scroll). Also tweaks to text item placement, and switch TimeAxisViewItem from name_pixbuf to name_text, since ArdourCanvas::Text is already "pixbuf optimized".
2013-04-12remove TimeAxisView::clip_to_viewport() and Editor::update_canvas_now() and ↵Paul Davis
Editor::flush_canvas() which should no longer be necessary with a sane canvas design
2013-04-12change frames_per_pixel to samples_per_pixelPaul Davis
2013-04-04initial commit of hand merging, plus getting "ancient" waf script to work ↵Paul Davis
correctly
2013-01-21return to the old way of editing track names, but hopefully better than it ↵Paul Davis
was. likely to be some corner case issues still and the issue of how rec-arm interacts with this git-svn-id: svn://localhost/ardour2/branches/3.0@13934 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-19completely revisit how track name editing works in the editorPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@13898 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-14more substantive reworkings of TimeAxisView::name_(entry|label) and name ↵Paul Davis
editing. better, but i can still (somehow) trigger occasional misbehaviour git-svn-id: svn://localhost/ardour2/branches/3.0@13840 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-12various tweaks to get 80% Of the way to proper use of ↵Paul Davis
TimeAxisView::name_label and TimeAxisView::name_entry. Not done yet, since the entry sometimes loses focus and cannot be hidden. git-svn-id: svn://localhost/ardour2/branches/3.0@13836 d708f5d6-7413-0410-9779-e7cbd77b26cf