summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2018-10-02 21:27:55 +0200
committerRobin Gareus <robin@gareus.org>2018-10-02 21:28:49 +0200
commite01582dd9a66623690eb1e8ebba3c2c2850d05cb (patch)
treec70bff8df556d736410ef7947bf3be25cd72e4ac
parent54f0f37c52caf5452f3f4275a5b334069b1ef785 (diff)
Prepare a boxy, no round borders, button-style
-rw-r--r--libs/gtkmm2ext/cairo_widget.cc8
-rw-r--r--libs/gtkmm2ext/gtkmm2ext/cairo_widget.h3
-rw-r--r--libs/widgets/ardour_button.cc2
3 files changed, 12 insertions, 1 deletions
diff --git a/libs/gtkmm2ext/cairo_widget.cc b/libs/gtkmm2ext/cairo_widget.cc
index 4cf3fc3ae6..7741de86ca 100644
--- a/libs/gtkmm2ext/cairo_widget.cc
+++ b/libs/gtkmm2ext/cairo_widget.cc
@@ -34,6 +34,7 @@
static const char* has_cairo_widget_background_info = "has_cairo_widget_background_info";
bool CairoWidget::_flat_buttons = false;
+bool CairoWidget::_boxy_buttons = false;
bool CairoWidget::_widget_prelight = true;
sigc::slot<void,Gtk::Widget*> CairoWidget::focus_handler;
@@ -543,6 +544,13 @@ CairoWidget::set_flat_buttons (bool yn)
}
void
+CairoWidget::set_boxy_buttons (bool yn)
+{
+ _boxy_buttons = yn;
+}
+
+
+void
CairoWidget::set_widget_prelight (bool yn)
{
_widget_prelight = yn;
diff --git a/libs/gtkmm2ext/gtkmm2ext/cairo_widget.h b/libs/gtkmm2ext/gtkmm2ext/cairo_widget.h
index 6d8c1f5d55..cc70e9bce1 100644
--- a/libs/gtkmm2ext/gtkmm2ext/cairo_widget.h
+++ b/libs/gtkmm2ext/gtkmm2ext/cairo_widget.h
@@ -85,7 +85,9 @@ public:
uint32_t background_color ();
static void set_flat_buttons (bool yn);
+ static void set_boxy_buttons (bool yn);
static bool flat_buttons() { return _flat_buttons; }
+ static bool boxy_buttons() { return _boxy_buttons; }
static void set_widget_prelight (bool yn);
static bool widget_prelight() { return _widget_prelight; }
@@ -132,6 +134,7 @@ protected:
bool _need_bg;
static bool _flat_buttons;
+ static bool _boxy_buttons;
static bool _widget_prelight;
bool _grabbed;
diff --git a/libs/widgets/ardour_button.cc b/libs/widgets/ardour_button.cc
index 145d46d94c..b80e993db4 100644
--- a/libs/widgets/ardour_button.cc
+++ b/libs/widgets/ardour_button.cc
@@ -257,7 +257,7 @@ ArdourButton::render (Cairo::RefPtr<Cairo::Context> const& ctx, cairo_rectangle_
uint32_t text_color;
uint32_t led_color;
- const float corner_radius = std::max(2.f, _corner_radius * UIConfigurationBase::instance().get_ui_scale());
+ const float corner_radius = _boxy_buttons ? 0 : std::max(2.f, _corner_radius * UIConfigurationBase::instance().get_ui_scale());
if (_update_colors) {
set_colors ();