13
0
Commit Graph

89 Commits

Author SHA1 Message Date
John Emmas
d2cb383965 MSVC changes to support the new code modules (Tabbable API stuff) 2021-02-24 14:32:23 +00:00
02ba5a7cd1
Remove unused Tabbable tab_title (3/3) 2021-02-23 17:30:26 +01:00
d264cbb21b
Prepare for Tabbable API change (1/3) 2021-02-23 17:22:22 +01:00
6f28d71729
ArdourButton: add flags to force boxy/flat style
Add flags ForceBoxy, ForceFlat for the rectab track header grid
2021-02-22 01:00:06 +01:00
8497298d73
Custom themable frame container
As opposed to Gtk::Frame, this allows the background color of
the content, inside the frame to be set and follows Ardour theme
options.
2021-02-22 01:00:03 +01:00
f91cb13cce
Facilitate callbacks when Tab is detached/attached 2021-02-22 01:00:01 +01:00
d05572e14a
Fix round-corner backround of insensitive ArdourWidgets
ArdourButton draws a custom insensitive background, using
the color "gtk_background". This can conflict with gtk's
insensitive background color when using round-corners.
2021-02-14 22:53:18 +01:00
162b6426d7
Fix fader font-size
This partially reverts 2abf9c66a4. The layout
of faders widgets is not persistent and re-created as needed.
2021-02-03 20:14:22 +01:00
74566fc006
Add "+" icon 2021-01-30 16:47:44 +01:00
2abf9c66a4
Fix size-request that rely on Pango::Layout
A Pango::Layout created by Gtk::Widget::get_pango_context ()
does not have any font set. The Font is inherited from the
layout's context.

The actual font is set when the layout is used in
on_expose_event() via get_window ()->create_cairo_context ().

In some cases we rely on the font-size to calculate the widget's
size before rendering. At this point in time there is no drawing
context from which to inherit the style.

Furthermore, even after a call to `ensure_style()` in the c'tor
of a Widget get_font() simply returns the default value.

All Widgets that rely an Pango::Layout font size during
size-requests have to explicitly set the font.

This fixes various overlarge buttons with the initial default layout.
2021-01-30 02:23:35 +01:00
42ac0f1d64
ArdourButton: Render text on pixel boundaries
This fixes some occasional blurry font display when text
was rendered to non-integer pixel positions.
2021-01-27 18:33:03 +01:00
70ad205bc1
Separate static widget theme into abstract class
This allow the style to be used in classed that are not
directly derived from Ardour's CairoWidget, notably
container widgets or plugin UIs.
2021-01-26 23:37:54 +01:00
e78de225d4
ArdourButton: LED-sized buttons w/o LED
This is useful for consistent layout in the recorder Window,
where Buttons are either push-buttons or LED toggle-buttons.
2021-01-25 19:18:56 +01:00
959f83244e
Fix ArdourButton text-align when button size grows
This is mainly relevant when the button is placed inside a
Gtk::SizeGroup.
2021-01-21 02:19:06 +01:00
8b5737b8d2
Increase precision of numeric dB entry
This follows 5a41ca8fdf and df1e6fda2d.
Even though this kind of precision is rarely needed, rounding
to a single digit is inconsistent with various places that display
more than one digit, or allow more accurate control.
2020-08-01 09:57:18 +02:00
5a41ca8fdf
Amend df1e6fda2d, limit digits for numeric dB entry 2020-07-22 23:18:51 +02:00
df1e6fda2d
Fix SliderController numeric entry to use dB for gain 2020-07-22 21:43:14 +02:00
5ff3453b30
Update Ardour*Spacer to use theme color 2020-07-21 04:42:07 +02:00
e8e143bb32
Add a horizontal separator widget 2020-07-21 04:41:16 +02:00
001072e7d0
Implement ArdourKnob visual sensitivity 2020-07-21 02:18:39 +02:00
618c7a6bf2 tweak Prompter API to allow skipping the default "Cancel" button 2020-05-18 16:04:41 -06:00
b36e6b8341
Optimize drawing of buttons with changing text
When a button has a fixed size, there's no need to call queue_resize().
This fixes an issue with the ArdourClock info displays when slaved.
The Timecode and Delta display text changes in small intervals and
caused excessive CPU load due to GUI size-requests + redraws.
2020-05-12 13:22:11 +02:00
b258ad792e force provision of "menu-name" for all WindowProxy objects, and thus Tabbables
Actions for hide/show/attach/detach tabbables use hard-coded names which are not
translated. Using Tabbable/WindowProxy::name() to lookup the action will fail,
since the name can be translated. This changes just removes the option to not
provide a menu-name when creating these objects, and uses the name menu-name
when looking up an action by name
2020-05-01 14:33:47 -06:00
c2b25b453e
Emit signal when dropdown changes via scroll-wheel
This fixes Virtual-keyboard velocity selection when scrolling
to numbers that are not explicitly in the menu-list.

(hopefully this does not introduce some recursive signals
for other ArdourDropdowns, fingers crossed).
2020-04-20 00:36:37 +02:00
5f1431aeda fix ArdourFader to use contrasting_text_color() for text, based on relevant bg color 2020-04-09 17:12:40 -06:00
f24cabe9e9
Fix rotary control knob mapping
This fixes an issue with Foldback strips pan controls being inverted.
2020-04-07 00:37:30 +02:00
5c3f49ef2b
Fix icon-tool
tape-rec icon was removed in a4d7b45fe, also re-order icons to
retain grouping per line when using the icon render util
2020-03-23 01:18:55 +01:00
a4d7b45fe0 remove destructive/tape mode tracks 2020-03-17 16:31:49 -06:00
4416530929
Tweak ArdorIcon display-tool & re-order icons
* add option to render a border
* group icons (assume 7x7 grid)
2020-02-22 21:40:35 +01:00
06b2eb1c27
Explicitly use OSX
Previously this was inherited via PBD.

On MacOS/X,  this adds
  "-undefined dynamic_lookup -flat_namespace"
and various "-framework .." options to linkflags

Without this flag, .dylibs fail to link usually because
of missing `-lintl` (Undefined symbols: "_libintl_dgettext")

On other systems this is a NO-OP:
CFLAGS_OSX, CXXFLAGS_OSX and LINKFLAGS_OSX
are only set on the darwin platform.
2020-01-25 04:07:41 +01:00
David Runge
2e9ac80e99
Towards waf python 2+3 support 2020-01-25 04:07:37 +01:00
bca825e515
NO-OP: whitespace 2020-01-14 00:52:24 +01:00
08a9368adf
Allow calling Dropdown::set_active from a signal handler
This breaks a potential recursion when set_active() is called
from activate_item(). See also 88fc22610
2019-10-21 14:58:59 +02:00
88fc226107
Add API to set select item from ArdourDropdown
This fixes an issue with scroll-wheel control which uses `get_active()`.
It work around an issue with gtkmm:

 const MenuItem* get_active () const
 void set_active (guint index)

and MenuList::activate_item() not emitting activate_item().
2019-10-20 21:21:57 +02:00
2c33d31bbb
NO-OP: whitespace 2019-10-10 23:59:05 +02:00
42df310c6f
Add "List/Browse" vector icon 2019-10-10 23:58:49 +02:00
e0d5c1426c
NO-OP: fix some Wimplicit-fallthrough
gcc can recognize various regexps in comments. Since C++17 provides
[[fallthrough]], using /* fallthrough */ consistently seems
appropriate until we switch to C++17.

see also https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html
2019-09-18 17:37:54 +02:00
9c752c249d
Add new icons: hide, prev/next 2019-09-12 23:36:25 +02:00
7b3ca486a4
Allow to un-set custom Ardour-button colors 2019-09-01 16:57:48 +02:00
46bbe83400
Changing active-state needs no color lookup
Colors and patterns are cached, independent of active-state.
This didn't used to be the case in the distant ArdourButton past.
2019-09-01 16:52:24 +02:00
7f2bfa362f
Cont'd icon tweaks
* unify line-width calculation
* thin line-width, approximate thickness of
  glyph stroke width at same UI scale
* don't use outlines (except main tool buttons)
  This fixes issues of generic buttons with bright-theme
* pixel align some lines
2019-08-27 18:03:57 +02:00
b01f6ead8b
Reduce girth of "plus" icon 2019-08-27 00:00:29 +02:00
b4addaaa0a
Tweak icon_strip_width icon lines to align to pixels 2019-08-26 23:34:20 +02:00
646aded4f2
Add some scaleable "Latency" icon 2019-08-26 22:44:11 +02:00
09a71b4392
Allow Icon + Text on ArdourButton
Allow placing an icon left of some text in Ardour-button.
This also tweaks some spacing and alignment of Icons when
a LED toggle indicator is used.
2019-08-26 16:04:22 +02:00
e6e407f573
Tweak icon line widths
Scale line-width of all icons, some were left at 1px regardless
of scaling factor.
2019-08-26 16:01:19 +02:00
000d331ea1
NO-OP: cleanup
* remove unused code
* replace "default" to check for switch() enum completeness
2019-08-23 15:50:26 +02:00
f1c29a9324
Re-order enum, use "NoIcon" as sentinel 2019-08-23 15:49:25 +02:00
a0d53b81b9
Update plugin-ui related icons 2019-08-22 21:03:07 +02:00
dfa93e0b17
Tweak Ardourbutton: support (VectorIcon | Indicator) 2019-08-21 01:25:34 +02:00