[gtk/matthiasc/for-master: 18/22] viewport: Drop shadow-type
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/matthiasc/for-master: 18/22] viewport: Drop shadow-type
- Date: Fri, 17 Apr 2020 04:35:04 +0000 (UTC)
commit 30abcf9e82ddee9ff27cf16ab4b89b61fc10bff9
Author: Matthias Clasen <mclasen redhat com>
Date: Thu Apr 16 23:58:01 2020 -0400
viewport: Drop shadow-type
We were only using this as a boolean, so change it
to a boolean property named has-frame.
docs/reference/gtk/gtk4-sections.txt | 4 +-
gtk/gtkviewport.c | 72 ++++++++++++++++++------------------
gtk/gtkviewport.h | 6 +--
gtk/ui/gtkplacesview.ui | 4 +-
gtk/ui/gtkprintunixdialog.ui | 8 ++--
5 files changed, 47 insertions(+), 47 deletions(-)
---
diff --git a/docs/reference/gtk/gtk4-sections.txt b/docs/reference/gtk/gtk4-sections.txt
index a5213f04f2..83abf7645f 100644
--- a/docs/reference/gtk/gtk4-sections.txt
+++ b/docs/reference/gtk/gtk4-sections.txt
@@ -3843,8 +3843,8 @@ gtk_list_store_get_type
<TITLE>GtkViewport</TITLE>
GtkViewport
gtk_viewport_new
-gtk_viewport_set_shadow_type
-gtk_viewport_get_shadow_type
+gtk_viewport_set_has_frame
+gtk_viewport_get_has_frame
<SUBSECTION Standard>
GTK_VIEWPORT
GTK_IS_VIEWPORT
diff --git a/gtk/gtkviewport.c b/gtk/gtkviewport.c
index fafdfb7eb4..c5a78c7f9b 100644
--- a/gtk/gtkviewport.c
+++ b/gtk/gtkviewport.c
@@ -75,7 +75,8 @@ struct _GtkViewportPrivate
{
GtkAdjustment *hadjustment;
GtkAdjustment *vadjustment;
- GtkShadowType shadow_type;
+
+ guint has_frame : 1;
/* GtkScrollablePolicy needs to be checked when
* driving the scrollable adjustment values */
@@ -94,7 +95,7 @@ enum {
PROP_VADJUSTMENT,
PROP_HSCROLL_POLICY,
PROP_VSCROLL_POLICY,
- PROP_SHADOW_TYPE
+ PROP_HAS_FRAME
};
@@ -255,13 +256,12 @@ gtk_viewport_class_init (GtkViewportClass *class)
g_object_class_override_property (gobject_class, PROP_VSCROLL_POLICY, "vscroll-policy");
g_object_class_install_property (gobject_class,
- PROP_SHADOW_TYPE,
- g_param_spec_enum ("shadow-type",
- P_("Shadow type"),
- P_("Determines how the shadowed box around the viewport
is drawn"),
- GTK_TYPE_SHADOW_TYPE,
- GTK_SHADOW_IN,
- GTK_PARAM_READWRITE|G_PARAM_EXPLICIT_NOTIFY));
+ PROP_HAS_FRAME,
+ g_param_spec_boolean ("has-frame",
+ P_("Has frame"),
+ P_("Whether to draw a frame"),
+ TRUE,
+ GTK_PARAM_READWRITE|G_PARAM_EXPLICIT_NOTIFY));
gtk_widget_class_set_css_name (widget_class, I_("viewport"));
}
@@ -299,8 +299,8 @@ gtk_viewport_set_property (GObject *object,
g_object_notify_by_pspec (object, pspec);
}
break;
- case PROP_SHADOW_TYPE:
- gtk_viewport_set_shadow_type (viewport, g_value_get_enum (value));
+ case PROP_HAS_FRAME:
+ gtk_viewport_set_has_frame (viewport, g_value_get_boolean (value));
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
@@ -331,8 +331,8 @@ gtk_viewport_get_property (GObject *object,
case PROP_VSCROLL_POLICY:
g_value_set_enum (value, priv->vscroll_policy);
break;
- case PROP_SHADOW_TYPE:
- g_value_set_enum (value, priv->shadow_type);
+ case PROP_HAS_FRAME:
+ g_value_set_boolean (value, priv->has_frame);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
@@ -350,7 +350,7 @@ gtk_viewport_init (GtkViewport *viewport)
gtk_widget_set_overflow (widget, GTK_OVERFLOW_HIDDEN);
- priv->shadow_type = GTK_SHADOW_IN;
+ priv->has_frame = TRUE;
priv->hadjustment = NULL;
priv->vadjustment = NULL;
@@ -442,50 +442,50 @@ viewport_set_adjustment (GtkViewport *viewport,
}
/**
- * gtk_viewport_set_shadow_type:
+ * gtk_viewport_set_has_frame:
* @viewport: a #GtkViewport.
- * @type: the new shadow type.
+ * @has_frame: whether to draw a visible frame
*
- * Sets the shadow type of the viewport.
+ * Sets whether to draw a visible frame around the viewport
**/
void
-gtk_viewport_set_shadow_type (GtkViewport *viewport,
- GtkShadowType type)
+gtk_viewport_set_has_frame (GtkViewport *viewport,
+ gboolean has_frame)
{
GtkViewportPrivate *priv = gtk_viewport_get_instance_private (viewport);
g_return_if_fail (GTK_IS_VIEWPORT (viewport));
- if ((GtkShadowType) priv->shadow_type != type)
- {
- priv->shadow_type = type;
+ if (priv->has_frame == has_frame)
+ return;
- if (type != GTK_SHADOW_NONE)
- gtk_widget_add_css_class (GTK_WIDGET (viewport), GTK_STYLE_CLASS_FRAME);
- else
- gtk_widget_remove_css_class (GTK_WIDGET (viewport), GTK_STYLE_CLASS_FRAME);
+ priv->has_frame = has_frame;
- g_object_notify (G_OBJECT (viewport), "shadow-type");
- }
+ if (priv->has_frame)
+ gtk_widget_add_css_class (GTK_WIDGET (viewport), GTK_STYLE_CLASS_FRAME);
+ else
+ gtk_widget_remove_css_class (GTK_WIDGET (viewport), GTK_STYLE_CLASS_FRAME);
+
+ g_object_notify (G_OBJECT (viewport), "has-frame");
}
/**
- * gtk_viewport_get_shadow_type:
+ * gtk_viewport_get_has_frame:
* @viewport: a #GtkViewport
*
- * Gets the shadow type of the #GtkViewport. See
- * gtk_viewport_set_shadow_type().
+ * Gets whether the viewport has a visible frame.
+ * See gtk_viewport_set_has_frame().
*
- * Returns: the shadow type
+ * Returns: %TRUE if the viewport has a visible frame
**/
-GtkShadowType
-gtk_viewport_get_shadow_type (GtkViewport *viewport)
+gboolean
+gtk_viewport_get_has_frame (GtkViewport *viewport)
{
GtkViewportPrivate *priv = gtk_viewport_get_instance_private (viewport);
- g_return_val_if_fail (GTK_IS_VIEWPORT (viewport), GTK_SHADOW_NONE);
+ g_return_val_if_fail (GTK_IS_VIEWPORT (viewport), TRUE);
- return priv->shadow_type;
+ return priv->has_frame;
}
static void
diff --git a/gtk/gtkviewport.h b/gtk/gtkviewport.h
index f034c4c055..0ad9472356 100644
--- a/gtk/gtkviewport.h
+++ b/gtk/gtkviewport.h
@@ -51,10 +51,10 @@ GtkWidget* gtk_viewport_new (GtkAdjustment *hadjustment,
GtkAdjustment *vadjustment);
GDK_AVAILABLE_IN_ALL
-void gtk_viewport_set_shadow_type (GtkViewport *viewport,
- GtkShadowType type);
+void gtk_viewport_set_has_frame (GtkViewport *viewport,
+ gboolean has_frame);
GDK_AVAILABLE_IN_ALL
-GtkShadowType gtk_viewport_get_shadow_type (GtkViewport *viewport);
+gboolean gtk_viewport_get_has_frame (GtkViewport *viewport);
G_END_DECLS
diff --git a/gtk/ui/gtkplacesview.ui b/gtk/ui/gtkplacesview.ui
index eb0d524c55..729454b97d 100644
--- a/gtk/ui/gtkplacesview.ui
+++ b/gtk/ui/gtkplacesview.ui
@@ -153,7 +153,7 @@
<property name="min-content-height">200</property>
<child>
<object class="GtkViewport">
- <property name="shadow-type">none</property>
+ <property name="has-frame">0</property>
<child>
<object class="GtkListBox" id="recent_servers_listbox">
<property name="selection-mode">none</property>
@@ -189,7 +189,7 @@
<property name="vexpand">1</property>
<child>
<object class="GtkViewport">
- <property name="shadow-type">none</property>
+ <property name="has-frame">0</property>
<child>
<object class="GtkListBox" id="listbox">
<property name="selection-mode">none</property>
diff --git a/gtk/ui/gtkprintunixdialog.ui b/gtk/ui/gtkprintunixdialog.ui
index cd3801b3e6..71adf7c602 100644
--- a/gtk/ui/gtkprintunixdialog.ui
+++ b/gtk/ui/gtkprintunixdialog.ui
@@ -977,7 +977,7 @@
<property name="hexpand">1</property>
<child>
<object class="GtkViewport" id="viewport1">
- <property name="shadow-type">none</property>
+ <property name="has-frame">0</property>
<child>
<object class="GtkGrid" id="image_quality_table">
<property name="row-spacing">6</property>
@@ -1007,7 +1007,7 @@
<property name="hscrollbar-policy">never</property>
<child>
<object class="GtkViewport" id="viewport2">
- <property name="shadow-type">none</property>
+ <property name="has-frame">0</property>
<child>
<object class="GtkGrid" id="color_table">
<property name="row-spacing">6</property>
@@ -1037,7 +1037,7 @@
<property name="hscrollbar-policy">never</property>
<child>
<object class="GtkViewport" id="viewport3">
- <property name="shadow-type">none</property>
+ <property name="has-frame">0</property>
<child>
<object class="GtkGrid" id="finishing_table">
<property name="row-spacing">6</property>
@@ -1067,7 +1067,7 @@
<property name="hscrollbar-policy">never</property>
<child>
<object class="GtkViewport" id="viewport4">
- <property name="shadow-type">none</property>
+ <property name="has-frame">0</property>
<child>
<object class="GtkBox" id="advanced_vbox">
<property name="orientation">vertical</property>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]