Paul Davis
05b0102668
ArdourButton: if _act_on_release is true, only trigger actions/signal clicks on key release, and vice versa
...
This should really be split in separate semantics for key and button events.
Fixes a subtle but nasty bug in the EngineDialog where the change of the default focus
widget from a Gtk::Button (acts on press) to an ArdourButton (acts on release) caused
events occuring after a dialog has grabbed focus to trigger button clicks
2017-03-01 22:30:20 +01:00
Robin Gareus
3b8348f009
Implement icon-render callback in ArdourButton
2017-02-17 18:58:11 +01:00
Robin Gareus
b552ed886f
Add support for Pango Markup to ArdourButton
2016-12-10 15:54:41 +01:00
Julien "_FrnchFrgg_" RIVAUD
f108bf1373
ArdourButton: add text for measuring decoupled from display text
...
In the normal course of events, an ArdourButton requests just enough
space to display its elements. In particular the size will change when
the text does. Yet, in several cases it is better to avoid layout jittering; until now ArdourButton users manually set a static size on the button at creation time.
Introduce new API to set the text used for measuring the button size
separately from the text that will be displayed. In most cases this
enables the callers to replace
set_size_request_to_display_given_text(button, text, w, h);
where w and h were hard-coded to cater for other button elements, by
button.set_sizing_text(text);
which will make ArdourButton correctly compute the size request in all
cases with its real elements and padding. ArdourButton users can call
button.set_sizing_text("");
to get the size request depend on displayed text (which is the default).
2016-08-20 16:00:46 +02:00
Julien "_FrnchFrgg_" RIVAUD
523306036e
Make ArdourButton detect when a grab should stop being pressed
...
If for whatever reason a grab is taken (e.g. a menu popping up) while
somebody is pressing a mouse button on an ArdourButton, then the
ArdourButton will not get the mouse button release event and will look
stuck in pressed position.
The leave notify event is fired if the mouse is still on the
ArdourButton while the grab is taken, but not if the user was dragging
the mouse outside of the button.
The only reliable way is to listen for the grab_broken_event signal.
Do so.
2016-08-18 16:16:17 +02:00
Paul Davis
0fe194c90b
extend ArdourButton API to provide a new tweak for buttons with occasional text
...
Buttons with this tweak do not change their size request based on their text (or lack of it)
2016-06-14 11:47:25 -04:00
Paul Davis
ef6f0de5a3
extend ArdourButton API to allow independently setting fixed active/inactive colors
2016-06-09 16:03:14 -04:00
André Nusser
83b5bdbe95
Ctrl+shift functionality (toggle all) for plugin leds.
...
The Fader led has special behavior and is only toggled when clicked
explicitly.
2015-10-19 14:36:06 -04:00
Robin Gareus
22b07e0233
NOOP, remove trailing tabs/whitespace.
2015-10-05 16:17:49 +02:00
Robin Gareus
1d5c6104f5
replace old ArdourButton::Icon API with Gtkmm2ext.
2015-05-24 21:45:39 +02:00
Robin Gareus
c5d7685741
add vector rendition of nudge icons.
2015-05-24 20:22:50 +02:00
Robin Gareus
47eb9d3fe1
NOOP, cleanup & comments
2015-04-08 10:18:39 +02:00
Robin Gareus
de7d6a7f2c
renice transport buttons (part one)
2015-04-07 22:34:09 +02:00
Robin Gareus
d25e8f2233
update ArdourButton Icon API
2015-04-07 22:34:09 +02:00
Robin Gareus
68e3ba189e
replace two more icons w/vector drawing.
2015-04-06 18:43:18 +02:00
Robin Gareus
edb86929f5
amend 6aa6c2d, queue redraw for custom-LED change
2015-03-17 04:02:59 +01:00
Robin Gareus
28e4708825
AButton: allow to set custom LED color (for > 2 states)
2015-03-16 19:04:36 +01:00
Robin Gareus
69dc9451a7
NOOP, add a missing ‘p’
2015-03-11 20:06:41 +01:00
Paul Davis
00f604019d
add ::set_layout_font (const Pango::FontDescription&) to ArdourButton
2014-10-21 17:25:50 -04:00
Robin Gareus
cb07f0f99b
yet another button tweak..
2014-09-07 20:23:49 +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
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
98404c6e62
ardour button sizes, now [em] based.
2014-09-04 02:24:37 +02:00
Robin Gareus
a99bd28950
add "close/cross" special button
2014-09-03 22:07:25 +02:00
Ben Loftis
0ea1238479
ask TAV buttons to have square proportions
2014-09-03 11:56:31 -05:00
Robin Gareus
3814c65680
robin needs a new keyboard with unstttttuck tt.
2014-09-03 05:20:33 +02:00
Robin Gareus
d7ff2b87fb
update rec-en circle drawing, add tape-mode
2014-09-03 01:55:57 +02: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
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
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
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
b2b736d596
tweaks for the monitor section. refactoring of some buttons, using new ArdourKnob instead of VolumeController. New ArdourDisplay shows a controllables user value, and provides support for preset values (hardcoded at present). Further refactoring to come, so that ArdourWidgets are derived from a common class. Controllable now has more responsibility for scaling between internal, user, and interface (knob percent) values. This also needs more refactoring and might have some unintended consequences. tested with audio and nothing seems amiss, yet.
2014-07-18 08:47:45 -05:00
Robin Gareus
381b6848fc
repair ardour-button "fixed color mode"
2014-07-06 19:56:53 +02:00
Robin Gareus
bb2970e5e9
allow ardour button to handle focused keyboard events
2014-06-14 00:22:32 +02:00
Ben Loftis
4c2e846126
the FlatFace element is no longer relevant. instead it was being used for an inset jeweled look. changed name to match
2014-03-26 11:37:28 -05:00
harrison
b9708d5f6b
New theme for editor window using ArdourMenu
2014-03-23 18:11:42 -05:00
Robin Gareus
ab44e41dfd
change the meters into CairoWidget, add expose_area to CairoWidget::render()
2014-03-20 23:50:40 +01:00
Paul Davis
f9dbc28086
add ::on_name_changed() to ArdourButton, to use recently added ::on_name_changed() in CairoWidget
2014-03-06 09:49:00 -05:00
Paul Davis
4a915ee541
Add ArdourButton::set_fixed_colors() (equivalent to ::set_bg_colors() in Valeriy's original changes)
2014-03-06 08:05:33 -05:00
Paul Davis
b360274e34
revert 29b1e706dd and then redo separation of ArdourButton::set_colors() from ArdourButton::build_patterns.
...
More to come
2014-03-05 17:51:51 -05:00
Paul Davis
29b1e706dd
some changes to ArdourButton to allow custom colors to be set (e.g. based on track colors), via Valeriy
2014-02-14 15:32:30 -05:00
Paul Davis
37522a2f5e
revert part of 4091ff175c that caused window/sizing chaos. silly paul
2013-10-12 15:37:55 -04:00
Paul Davis
4091ff175c
1 bug fix plus padding control for ArdourButton
2013-10-12 14:56:57 -04:00
Robin Gareus
94fbfb9658
left/bottom align of labels in meterbridge
2013-07-10 15:27:08 +02:00
Robin Gareus
0276b1f69a
ardour-button: allow to rotate text
2013-07-10 15:27:06 +02:00
Paul Davis
6e337459a9
add a new Tweak to ArdourButton that makes ImplicitActive state use a solid color (the "led active" color), and adjst rec-enable buttons to use pink (like ardour2) when in this state (which means rec-enabled but not recording). and yes, this means that you can't use ImplicitUsesSolidColor with a button that also uses an LED - acceptable limitation
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13645 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-12 02:22:12 +00:00
Ben Loftis
92e5a13fd4
several theme changes. changed drawing of rounded_rectangle to be more correct. operation and feel should be more consistent. rec-mute-solo buttons are now dull until enabled. this might be debatable. otherwise if it looks weird, try loading Window->Theme Manager and clicking Restore Defaults
...
git-svn-id: svn://localhost/ardour2/branches/3.0@13611 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-06 20:48:44 +00:00