6b019a4953
Move UIConfiguration Singleton into UIConfiguration header
...
This removes the direct dependence on ardour_ui.h from 39 files
2015-09-16 16:55:17 -04:00
45d487f16e
Move ARDOUR_UI::ui_scale into UIConfiguration class
2015-09-16 16:55:17 -04:00
fc1e7dbb55
Move DPIReset and ColorsChanged signals into UIConfiguration
2015-09-16 16:55:17 -04:00
9c6a821c67
prevent crash when using WM close button on "new route name contains bad 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-05-27 19:34:11 -04:00
b38ab89d92
clean up GUI scaling
2015-04-22 21:40:43 +02:00
0c468dc379
add more contexts for SLA.
2015-04-05 00:44:03 +02:00
f1ce87a699
add API to select TAV height mode.
...
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-03-19 21:47:34 +01:00
11cfdd4c6d
remove use of TimeRectangle
2015-02-11 21:59:38 -05:00
9e0cd98ad4
fix select-all-regions-within (it used to select everything overlapped)
2015-01-09 12:21:10 -06:00
c14f6c59db
apply font-scale to overall layout (rulers, track-header) - fixes #6088
2014-12-28 15:01:49 +01:00
21f5859981
fix double-free/crash at session close
2014-12-19 21:30:22 +01:00
2145fd2973
next 2 modifiers
2014-12-15 10:46:15 -05:00
56ca52651e
fix up requested color names everywhere.
...
Thank <deity> for emacs ... space-uncamelcase-word-at-point FTW
2014-12-14 16:15:38 -05:00
48a7a11974
initial pass to replace all UIConfiguration::get_XXXXXX() calls with UIConfiguration::color(name).
...
IMPORTANT: names have not been downcased and spaced yet, so many colors are not found
2014-12-14 12:27:07 -05:00
89be7ae58c
Fix crash on quit when in a non-route time axis.
2014-12-06 22:43:06 -05:00
09bd88c9df
Fix crash when resizing a track quickly.
...
Triggered by resize drag an automation track very quickly upwards to shrink it
to the minimum. Caused by unsigned integer underflow.
2014-12-06 22:43:06 -05:00
6b3a8915f3
add abort() to non-reached code
...
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-11-14 11:30:08 +01:00
4260d0ca0e
use new canvas colors header as necessary
2014-11-07 14:24:27 -05:00
555ceba876
various positional fixes for TimeAxisView, including moving the separator line to the bottom, and keeping it in the same coordinate space as the TAV group
2014-11-05 19:45:23 -05:00
f1e6b28ab7
use ArdourCanvas::TimeRectangle for regions, notes, markers
2014-11-03 21:48:08 -05:00
90825340c9
move start of a time axis view back to 0.0 on the x-axis, not 1.0
2014-11-03 21:48:08 -05:00
45b7a03b7b
retain selection on track-height change
2014-11-01 16:54:52 +01:00
ba4d1cd1c1
remove "canvasvar_" from all functions related to obtaining values from ARDOUR_UI::config()
2014-10-21 22:58:58 -04:00
ff5b658bc2
fix TAV text-entry size.
...
for now: no round corners, gtk-entry + its frame
packing messes things up
2014-09-09 00:05:14 +02:00
b9f0751438
Move Scroomer out of Track Selection Box:
...
* no horiz space between Piano-Roll & Track
* 1:1 mapping of note's vertical space (no border)
2014-09-08 18:43:08 +02:00
1bb6fd752c
special case track-header buttons
2014-09-07 20:23:49 +02:00
4912409a8d
gtk style related fixes:
...
* remove some old/unused styles
* fix plugin-ui button (hover color when active)
* consistent style for route buttons
(and related ArdourButton updates)
2014-09-06 12:49:57 +02:00
028346d412
Revert "use a gloabl size group for track-header ctrl buttons"
...
This reverts commit 86eb72955c
.
2014-09-06 03:36:01 +02:00
4c12a01b62
re-order TAV widget packing:
...
allow to resize automation tracks on the indent handle, too
2014-09-05 00:13:53 +02:00
86eb72955c
use a gloabl size group for track-header ctrl buttons
2014-09-04 23:21:05 +02:00
2651bc7e10
NOOP, fix indent
2014-09-04 21:12:50 +02:00
4dbfbb6edb
fix c4be8c2a67
2014-09-04 21:03:07 +02:00
dc02625b56
further tweaks pertaining the track-number height
2014-09-04 20:11:44 +02:00
c4be8c2a67
when track selection changes, cancel any and all name editing
2014-09-04 13:57:05 -04:00
795451a697
Trick 17: share separator + border:
...
This effectively adds a line after the last track.
2014-09-04 18:08:45 +02:00
cb05e3a21d
dedicated TAV separator line
2014-09-04 17:01:28 +02:00
70358639de
Revert "cont'd work on automation-track headers (amend ba53af1c5
)"
...
This reverts commit beb5e3e777
.
2014-09-04 16:14:01 +02:00
dea4b27ca6
update number label geometry
...
the number label can be significantly wider than other
ctrl buttons and does not lend itself or be 'square'.
2014-09-04 03:09:38 +02:00
beb5e3e777
cont'd work on automation-track headers (amend ba53af1c5
)
...
now that the separator line is at the top,
offset region-contents y0 by 1px.
2014-09-03 20:48:20 +02:00
ba53af1c50
quick mockup of indented automation-track headers
...
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-03 15:03:35 +02:00
b184df3286
static global definition for track-header width
...
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-09-02 18:12:39 +02:00
88df9c28a6
fix static initialization of Gtk::SizeGroup
2014-09-02 05:14:26 +02:00
423f6e3445
fix track-header hide/show
2014-08-31 22:24:26 +02:00
154621978a
track-header fader tweaks:
...
* align height to button-height.
* align width to label text-entry
* increase min width
2014-08-31 21:32:22 +02:00
0b1ee476ed
proper 1px track separator
2014-08-31 20:08:38 +02:00
f7e5d4eba2
the return of the time_axis_vbox
2014-08-31 19:43:32 +02:00
e3d982a66e
set initial TAV style
2014-08-31 18:51:04 +02:00
098a698052
right side track-header control buttons (for non mixbus profile)
2014-08-31 16:12:43 +02:00
f6da7c67ab
experiment with track-selection box shadow
2014-08-31 08:08:36 +02:00
19b212334a
remove (unused) separator, update TAV height calc.
2014-08-31 07:12:00 +02:00
9c59b21bb6
simplify time-axis packing: consistent table layout
2014-08-31 07:11:24 +02:00
36c4704df9
revert parts of bf13bf63
, change track-header color on selection
2014-08-30 21:44:47 +02:00
bf13bf6385
red-border selection for tracks, regions, and processors. requesting comments
2014-08-29 17:16:32 -05:00
5c1a561325
change packing so number_label shares space with name_label
2014-08-11 15:08:57 -05:00
b41df8e120
shuffle packing order to accomodate midi controls
2014-08-11 14:44:12 -05:00
bf034f48ce
New track header layout.
...
Vertical alignment no longer depends on number of meters shown.
Looking for comments.
2014-08-11 12:59:42 -05:00
d0bc4b55fa
scroll up/down by tracks uses top edge as "focal point"; fix some other nasty code details
2014-07-14 12:36:51 -04:00
19ff353665
fix edges of selection rects in time axis views to lie correctly within bounds of the time axis view
2014-06-27 10:18:11 -04:00
a3c378cf62
move utility functions into a dedicated namespace
2014-06-25 21:47:54 +02:00
6a5d805b38
more canvas refactoring.
...
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-22 11:41:05 -04:00
0796ccfb65
use newly factored canvas in gtk2_ardour
2014-06-21 11:44:22 -04:00
8419248a94
fix naming of selection rect-related items
2014-06-18 21:02:51 -04:00
7a0b2e1c18
fix scrolling behaviour in track headers (event was stolen by rulers because event coordinates made it look as if the event happened there)
2014-06-13 14:27:59 -04:00
684d45c0cc
restored track height adjustment using alt-scroll on track headers
2014-06-12 17:21:41 -04:00
d36afa6b8b
forward scroll events from track control headers to the canvas, to get consistent scroll behaviour (whatever that behaviour is)
2014-06-09 10:02:38 -04:00
e0533e9dd7
more profound changes to canvas scrolling, in particular find appropriate ScrollGroup for Canvas::{window,canvas}_to_{canvas,window}()
2014-06-03 16:13:12 -04:00
200a67fba8
most of the support for save/restore of visible track count
2014-03-25 10:33:18 -04:00
65b4308c84
first pass at quantizing vertical scroll to whole tracks.
...
Dragging regions vertically does the quantization BUT speed control is lacking and the region ends up on
a track that is still invisible ... to be fixed as the sun rises.
2014-03-21 07:02:32 -04:00
9df3157dfc
big rework of scrolling, horizontal part considered almost 100% done.
...
Many more changes than I would typically like in a single commit, but this was all very intertwined.
Vertical scrolling using track-stepping still to follow.
2014-03-20 13:29:45 -04:00
aff595c739
add ::covered_by_y_range() to TimeAxisView
2014-02-25 21:53:04 -05:00
19bd344c33
indentation
2014-01-10 11:56:15 -05:00
08b485db75
send enter events to EVERY newly entered item (ignore the bool return from the event handler); other canvas debugging aids;switch items_at_point() to use canvas coordinates
2013-11-03 10:07:00 -05:00
90e282c450
work around sparse motion notification events when tooltips are disabled
...
fixes http://tracker.ardour.org/view.php?id=5174
2013-08-08 15:23:10 -04:00
580520b12f
fix conflicts caused by meterbridge merge
2013-07-11 09:11:53 -04:00
525cb6b4a7
some sort-of-deep fixes to get autoscroll/vertical scroll to work properly for cairocanvas
2013-07-10 19:10:06 -04:00
146fca3674
light up track seperator
2013-07-11 01:07:38 +02:00
4b39813d69
display separator on newly created tracks.
2013-07-11 00:38:43 +02:00
aabe526df2
update track-header layout - proper padding around meters
2013-07-10 15:27:06 +02:00
066b385c68
adjust padding of meters in time-axis view (still using border bg color)
2013-07-10 15:27:03 +02:00
3031a99364
Merge branch 'master' into cairocanvas
2013-06-25 22:24:47 -04:00
21914c884e
Make scroll-wheel modifier keys consistent in main editor window.
...
Add constants for the keyboard modifiers that should be used for vertical
zoom, horizontal zoom, and horizontal scrolling in the main editor window,
and use these where appropriate rather than using Keyboard::PrimaryModifier
and friends directly.
2013-06-21 20:13:44 +01:00
7de31d5a41
use virtual bool canvas_group_event () in TimeAxisViewItems to get suitably delegatable/inherited event handling
2013-04-25 16:06:12 -04:00
6f664c1f67
many pervasive changes primarily related to waveform drawing, particular content-dragging, colors, and more
2013-04-24 15:42:14 -04:00
d1a05240ef
fix clamping of line and rect coordinates to avoid issues with cairo when drawing way outside a surface's dimensions; move various coordinate methods down to Canvas, because they don't require GTK information; make visible_area() a Canvas virtual method so that we don't have to cast to call it
2013-04-17 10:53:17 -04:00
96eee9e7a1
change UIConfig to use accessor/setter methods like RCConfig so that ParameterChanged methods can actually be emitted; add variable (over a small range) background shading for all TimeAxisViewItems
2013-04-16 23:46:22 -04:00
7e19053b88
Fix dragging objects on the canvas and remove redundant canvas groups
...
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-15 13:50:05 -04:00
af4539f857
a few changes to fix region dragging, all related to coordinate system handling, which is now much simpler with the new canvas; more debugging output when asked for
2013-04-15 10:38:12 -04:00
4e9108cd1e
remove TimeAxisView::clip_to_viewport() and Editor::update_canvas_now() and Editor::flush_canvas() which should no longer be necessary with a sane canvas design
2013-04-12 18:01:44 -04:00
b05968fb4e
change frames_per_pixel to samples_per_pixel
2013-04-12 11:31:50 -04:00
4258a34912
change all frame_to_pixel and pixel_to_frame to sample_to_pixel and pixel_to_sample
2013-04-12 11:15:45 -04:00
ecfd2a7455
remove all unit-based methods from (Public)Editor; rationalize Editor::event_frame() to clearly identify whether the passed-in GdkEvent has window units or canvas units (the latter will be true for all events that are handled by the canvas and then passed to Editor
2013-04-12 11:09:49 -04:00
204da61f98
remove incorrect merge of cairocanvas patch that stopped most tracks from displaying; add more debugging info
2013-04-10 14:42:36 -04:00
19bd641915
commit immediately post linking
2013-04-04 18:45:27 -04:00
aaea166135
initial commit of hand merging, plus getting "ancient" waf script to work correctly
2013-04-04 00:32:52 -04:00
80b11d93ee
reinstate shift-tab behaviour (move to prev track/bus) when editing track/bus names ( #5298 )
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13982 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-23 20:33:16 +00:00
a1d5d6f444
make height of name_label and name_entry the same to avoid button wierdness while track name editing; fix crash caused by nested calls to end_name_edit()
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13936 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-21 01:37:44 +00:00
e34470b7bd
return to the old way of editing track names, but hopefully better than it 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-21 00:12:06 +00:00
0ebad4279b
Fix label in route rename dialog.
...
Colon seems most consistent, the separate space is to fix the spacing in the dialog while re-using the existing translation string 'New name:'.
git-svn-id: svn://localhost/ardour2/branches/3.0@13924 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-20 07:37:20 +00:00
f4f0dd6637
completely revisit how track name editing works in the editor
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13898 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-19 15:27:04 +00:00
00cba5aa3b
more substantive reworkings of TimeAxisView::name_(entry|label) and name 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-14 21:46:32 +00:00