Commit graph

163 commits

Author SHA1 Message Date
Robin Gareus
aa769c9096 fix ArdourButton initialization 2014-09-06 12:48:21 +02:00
Robin Gareus
dfecb06946 optimize button expose/resize 2014-09-06 03:22:31 +02:00
Robin Gareus
a07dc44b4d remove pixel based Button LED diameter setting
Diameter is calculated depending on font-scaling.
Besides, all explicit calls simply set the default
value, anyway. If some API is needed in the future,
it should set the diameter in [em].
2014-09-06 02:08:59 +02:00
Robin Gareus
6f30c1fddb optimize button pattern cache
We really should statically cache patterns
as done in PixFader and Meters (Cairo's cache is
not nearly large enough)
2014-09-06 02:04:59 +02:00
Robin Gareus
fb473475c3 remove cruft 2014-09-06 00:42:10 +02:00
Robin Gareus
4a00bdf04a fundamentally change ArdourButton PangoLayout handling
This fixes issues where button text was set during static
initialization where the widget style was not yet available,
and a lot of related issues where the text was set
before style.
2014-09-06 00:41:56 +02:00
Robin Gareus
dcb495676f never change button element name.
changing the name overrides font style.
2014-09-05 23:44:30 +02:00
Robin Gareus
42ef3cab32 no more button text position rounding
For all non-grouped buttons, size request takes
care of assigning a proper geometry.
2014-09-05 23:43:09 +02:00
Robin Gareus
50d3afd965 further button size polish 2014-09-05 17:40:34 +02:00
Robin Gareus
f08b67da8c fix typo 2014-09-04 23:26:14 +02:00
Robin Gareus
4030fe2b66 and some more button px tweaks 2014-09-04 23:16:18 +02:00
Robin Gareus
86ffa35f84 separate button text-height -> button-height factor, bump to 1.3[em] 2014-09-04 20:11:45 +02:00
Robin Gareus
d717a0680a properly centered text..
..at the risk of blurring some text with
some fonts when the text is shifted by 0.5px.
2014-09-04 18:12:46 +02:00
Robin Gareus
dc4ee8196f fix LED active area 2014-09-04 15:06:42 +02:00
Robin Gareus
98404c6e62 ardour button sizes, now [em] based. 2014-09-04 02:24:37 +02:00
Ben Loftis
0d4460b736 merge fix 2014-09-03 15:26:33 -05:00
Ben Loftis
a9d19c9720 actively recording track-arm button is red, not pink 2014-09-03 15:26:33 -05:00
Robin Gareus
11a376031f amend a99bd289 (button x-axis padding) 2014-09-03 22:17:25 +02:00
Robin Gareus
a99bd28950 add "close/cross" special button 2014-09-03 22:07:25 +02:00
Robin Gareus
a2a399d6f9 tweak button size request 2014-09-03 22:06:45 +02:00
Robin Gareus
ba3eb177c7 clean up rec-en circle math and limit the max radius of it 2014-09-03 22:05:53 +02:00
Ben Loftis
0ea1238479 ask TAV buttons to have square proportions 2014-09-03 11:56:31 -05:00
Robin Gareus
e9ff578f3a amend prev commit (Ardour button radii) 2014-09-03 15:26:54 +02:00
Robin Gareus
b0660b3e7d Update Ardour Button radii.
This is effectively a noop. Decrease default radius,
only add to radius (for outline), never subtract to avioid
negative numbers.
2014-09-03 15:21:19 +02:00
Robin Gareus
d7ff2b87fb update rec-en circle drawing, add tape-mode 2014-09-03 01:55:57 +02:00
Ben Loftis
930e6eecf8 stroke black circle on top of rec circle 2014-09-02 15:57:08 -05:00
Ben Loftis
bc16da5b5a micro tweaks to ArdourButton corners 2014-09-02 15:16:37 -05:00
Robin Gareus
1592d04828 one off, special case rec-en button for now. (circle may need tweaking)
In the long run we want a class hierarchy:
CairoWidget
-> ArdourWidget
-> ArdourLabel
-> ArdourButton
-> SpecialArdourButton(s)
2014-09-02 20:43:15 +02:00
Robin Gareus
29b7cb4a05 ArdourButton: prepare for [em] based padding 2014-09-02 19:23:18 +02:00
Robin Gareus
936cb05989 update dropdown triangle 2014-08-30 18:26:03 +02:00
Robin Gareus
f5533213c0 fix some compiler warnings 2014-08-30 02:26:36 +02:00
Robin Gareus
926d4eb36e remove cruft 2014-08-30 01:43:10 +02:00
Robin Gareus
4efa0fd77c ArdourButton align text to full pixels 2014-08-30 01:43:10 +02:00
Ben Loftis
bf13bf6385 red-border selection for tracks, regions, and processors. requesting comments 2014-08-29 17:16:32 -05:00
Robin Gareus
65e1760446 Ardour button, proper cairo fill+stroke px alignments
rounded rectangles are cairo_arc() path,
for line strokes, offset by .5.

This patch also includes two small related style tweaks:
* Gtkmm2ext::Selected line color & thickness
* 'grabbed' line color & thickness
2014-08-29 23:02:35 +02:00
Robin Gareus
78b9f65632 explicit Button inactive state.
Ideally large parts of ArdourButton would become ArdourLabel,
which in turn is used by ArdourButton
2014-08-29 21:08:49 +02:00
Robin Gareus
083620beb8 ArdourButton: suppress visible response if no action is defined.
This fixes issues where the button is used as Label
(currently track-numbers and meterbridge track-name)
2014-08-29 20:20:37 +02:00
Ben Loftis
39e2223fee yet another ArdourButton action tweak 2014-08-28 15:29:18 -05:00
Ben Loftis
a4bda23bba remove offset from icons when button is pushed 2014-08-28 14:29:49 -05:00
Ben Loftis
7306568634 More fixes to ArdourButton actions.
Optionally allow events to fallthrough to parents, in particular for the DnDVBox case.
Also allow the number_label to operate as a track selector.
2014-08-28 14:25:19 -05:00
Ben Loftis
3f297f7dab Fix ArdourButton event sequence.
Always give ArdourButton a chance to handle Press or Release events if you override them.
This allows ArdourButtons to do the "Pressed" animation
And it now correctly eats the event so button clicks don't select the channelstrip.
2014-08-28 10:31:57 -05:00
Ben Loftis
3cc19c2cce brighten post-fader redirects, and change redirect leds to blue 2014-08-28 08:58:26 -05:00
Ben Loftis
e7a15027e8 refactor flat_buttons into cairowidget, and add a canvas-like convenience function for setting cairo color with a Gtk::Color 2014-08-27 10:55:01 -05:00
Ben Loftis
74f313dd6b Rationalize ArdourButton and lots of associated theming issues.
ArdourButtons now have a "pushed" animation.
The gradient is now implemented in the button, rather than providing 2 colors in the theme, which was burdensome.
Lots of code cleanup in ArdourButton.  Removed several unnecessary flags.
Refactor more stuff into route_ui.
2014-08-22 11:51:20 -05:00
Ben Loftis
f3d524deb7 Yet another attempt to standardize button heights.
Use the same string for all ArdourButtons to define the height.
Height can still vary if you use a different font, though.
2014-08-13 10:57:04 -05:00
Ben Loftis
61c66afd4c Revert previous select-strips-under-mouse behavior
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-24 11:28:31 -05:00
Ben Loftis
fc305cb217 if a button has an icon, dont draw text as well 2014-07-14 10:28:50 -05:00
Ben Loftis
492c933a69 fix the visible_tracks_selector to show * when user tweaks a track height. various experimental tweaks to visible_tracks_selector and a new zoom_preset_selector for Mixbus. 2014-07-14 10:08:55 -05:00
Robin Gareus
381b6848fc repair ardour-button "fixed color mode" 2014-07-06 19:56:53 +02:00
Robin Gareus
a3c378cf62 move utility functions into a dedicated namespace 2014-06-25 21:47:54 +02:00