forked from AuroraMiddleware/gtk
label: Remove gadget
This commit is contained in:
parent
82a4bcf824
commit
aad7e2d509
@ -55,7 +55,6 @@
|
|||||||
#include "gtkwidgetprivate.h"
|
#include "gtkwidgetprivate.h"
|
||||||
#include "gtkwindow.h"
|
#include "gtkwindow.h"
|
||||||
#include "gtkcssnodeprivate.h"
|
#include "gtkcssnodeprivate.h"
|
||||||
#include "gtkcsscustomgadgetprivate.h"
|
|
||||||
#include "gtkwidgetprivate.h"
|
#include "gtkwidgetprivate.h"
|
||||||
|
|
||||||
#include "a11y/gtklabelaccessibleprivate.h"
|
#include "a11y/gtklabelaccessibleprivate.h"
|
||||||
@ -253,7 +252,6 @@ struct _GtkLabelPrivate
|
|||||||
GtkLabelSelectionInfo *select_info;
|
GtkLabelSelectionInfo *select_info;
|
||||||
GtkWidget *mnemonic_widget;
|
GtkWidget *mnemonic_widget;
|
||||||
GtkWindow *mnemonic_window;
|
GtkWindow *mnemonic_window;
|
||||||
GtkCssGadget *gadget;
|
|
||||||
|
|
||||||
PangoAttrList *attrs;
|
PangoAttrList *attrs;
|
||||||
PangoAttrList *markup_attrs;
|
PangoAttrList *markup_attrs;
|
||||||
@ -537,7 +535,7 @@ static void gtk_label_drag_gesture_update (GtkGestureDrag *gesture,
|
|||||||
GtkLabel *label);
|
GtkLabel *label);
|
||||||
|
|
||||||
static GtkSizeRequestMode gtk_label_get_request_mode (GtkWidget *widget);
|
static GtkSizeRequestMode gtk_label_get_request_mode (GtkWidget *widget);
|
||||||
static void gtk_label_measure_ (GtkWidget *widget,
|
static void gtk_label_measure (GtkWidget *widget,
|
||||||
GtkOrientation orientation,
|
GtkOrientation orientation,
|
||||||
int for_size,
|
int for_size,
|
||||||
int *minimum,
|
int *minimum,
|
||||||
@ -545,15 +543,6 @@ static void gtk_label_measure_ (GtkWidget *widget,
|
|||||||
int *minimum_baseline,
|
int *minimum_baseline,
|
||||||
int *natural_baseline);
|
int *natural_baseline);
|
||||||
|
|
||||||
static void gtk_label_measure (GtkCssGadget *gadget,
|
|
||||||
GtkOrientation orientation,
|
|
||||||
int for_size,
|
|
||||||
int *minimum,
|
|
||||||
int *natural,
|
|
||||||
int *minimum_baseline,
|
|
||||||
int *natural_baseline,
|
|
||||||
gpointer unused);
|
|
||||||
|
|
||||||
static GtkBuildableIface *buildable_parent_iface = NULL;
|
static GtkBuildableIface *buildable_parent_iface = NULL;
|
||||||
|
|
||||||
G_DEFINE_TYPE_WITH_CODE (GtkLabel, gtk_label, GTK_TYPE_WIDGET,
|
G_DEFINE_TYPE_WITH_CODE (GtkLabel, gtk_label, GTK_TYPE_WIDGET,
|
||||||
@ -613,7 +602,7 @@ gtk_label_class_init (GtkLabelClass *class)
|
|||||||
widget_class->popup_menu = gtk_label_popup_menu;
|
widget_class->popup_menu = gtk_label_popup_menu;
|
||||||
widget_class->focus = gtk_label_focus;
|
widget_class->focus = gtk_label_focus;
|
||||||
widget_class->get_request_mode = gtk_label_get_request_mode;
|
widget_class->get_request_mode = gtk_label_get_request_mode;
|
||||||
widget_class->measure = gtk_label_measure_;
|
widget_class->measure = gtk_label_measure;
|
||||||
|
|
||||||
class->move_cursor = gtk_label_move_cursor;
|
class->move_cursor = gtk_label_move_cursor;
|
||||||
class->copy_clipboard = gtk_label_copy_clipboard;
|
class->copy_clipboard = gtk_label_copy_clipboard;
|
||||||
@ -1327,14 +1316,6 @@ gtk_label_init (GtkLabel *label)
|
|||||||
priv->mnemonic_window = NULL;
|
priv->mnemonic_window = NULL;
|
||||||
|
|
||||||
priv->mnemonics_visible = TRUE;
|
priv->mnemonics_visible = TRUE;
|
||||||
|
|
||||||
priv->gadget = gtk_css_custom_gadget_new_for_node (gtk_widget_get_css_node (GTK_WIDGET (label)),
|
|
||||||
GTK_WIDGET (label),
|
|
||||||
gtk_label_measure,
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
NULL);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -3232,8 +3213,6 @@ gtk_label_finalize (GObject *object)
|
|||||||
gtk_label_clear_links (label);
|
gtk_label_clear_links (label);
|
||||||
g_free (priv->select_info);
|
g_free (priv->select_info);
|
||||||
|
|
||||||
g_clear_object (&priv->gadget);
|
|
||||||
|
|
||||||
G_OBJECT_CLASS (gtk_label_parent_class)->finalize (object);
|
G_OBJECT_CLASS (gtk_label_parent_class)->finalize (object);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3325,7 +3304,7 @@ gtk_label_update_layout_width (GtkLabel *label)
|
|||||||
{
|
{
|
||||||
GtkAllocation allocation;
|
GtkAllocation allocation;
|
||||||
|
|
||||||
gtk_css_gadget_get_content_allocation (priv->gadget, &allocation, NULL);
|
gtk_widget_get_content_allocation (GTK_WIDGET (label), &allocation);
|
||||||
|
|
||||||
pango_layout_set_width (priv->layout, allocation.width * PANGO_SCALE);
|
pango_layout_set_width (priv->layout, allocation.width * PANGO_SCALE);
|
||||||
}
|
}
|
||||||
@ -3633,22 +3612,16 @@ gtk_label_get_preferred_size (GtkWidget *widget,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gtk_label_measure (GtkCssGadget *gadget,
|
gtk_label_measure (GtkWidget *widget,
|
||||||
GtkOrientation orientation,
|
GtkOrientation orientation,
|
||||||
int for_size,
|
int for_size,
|
||||||
int *minimum,
|
int *minimum,
|
||||||
int *natural,
|
int *natural,
|
||||||
int *minimum_baseline,
|
int *minimum_baseline,
|
||||||
int *natural_baseline,
|
int *natural_baseline)
|
||||||
gpointer unused)
|
|
||||||
{
|
{
|
||||||
GtkWidget *widget;
|
GtkLabel *label = GTK_LABEL (widget);
|
||||||
GtkLabel *label;
|
GtkLabelPrivate *priv = gtk_label_get_instance_private (label);
|
||||||
GtkLabelPrivate *priv;
|
|
||||||
|
|
||||||
widget = gtk_css_gadget_get_owner (gadget);
|
|
||||||
label = GTK_LABEL (widget);
|
|
||||||
priv = label->priv;
|
|
||||||
|
|
||||||
if (orientation == GTK_ORIENTATION_VERTICAL && for_size != -1 && priv->wrap)
|
if (orientation == GTK_ORIENTATION_VERTICAL && for_size != -1 && priv->wrap)
|
||||||
{
|
{
|
||||||
@ -3660,22 +3633,6 @@ gtk_label_measure (GtkCssGadget *gadget,
|
|||||||
gtk_label_get_preferred_size (widget, orientation, minimum, natural, minimum_baseline, natural_baseline);
|
gtk_label_get_preferred_size (widget, orientation, minimum, natural, minimum_baseline, natural_baseline);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
gtk_label_measure_ (GtkWidget *widget,
|
|
||||||
GtkOrientation orientation,
|
|
||||||
int for_size,
|
|
||||||
int *minimum,
|
|
||||||
int *natural,
|
|
||||||
int *minimum_baseline,
|
|
||||||
int *natural_baseline)
|
|
||||||
{
|
|
||||||
gtk_css_gadget_get_preferred_size (GTK_LABEL (widget)->priv->gadget,
|
|
||||||
orientation,
|
|
||||||
for_size,
|
|
||||||
minimum, natural,
|
|
||||||
minimum_baseline, natural_baseline);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
get_layout_location (GtkLabel *label,
|
get_layout_location (GtkLabel *label,
|
||||||
gint *xp,
|
gint *xp,
|
||||||
@ -3706,9 +3663,9 @@ get_layout_location (GtkLabel *label,
|
|||||||
req_width = logical.width;
|
req_width = logical.width;
|
||||||
req_height = logical.height;
|
req_height = logical.height;
|
||||||
|
|
||||||
gtk_css_gadget_get_content_allocation (priv->gadget,
|
gtk_widget_get_content_allocation (widget, &allocation);
|
||||||
&allocation,
|
|
||||||
&baseline);
|
baseline = gtk_widget_get_allocated_baseline (widget);
|
||||||
|
|
||||||
x = floor (allocation.x + xalign * (allocation.width - req_width) - logical.x);
|
x = floor (allocation.x + xalign * (allocation.width - req_width) - logical.x);
|
||||||
|
|
||||||
@ -3777,11 +3734,6 @@ gtk_label_size_allocate (GtkWidget *widget,
|
|||||||
|
|
||||||
GTK_WIDGET_CLASS (gtk_label_parent_class)->size_allocate (widget, allocation);
|
GTK_WIDGET_CLASS (gtk_label_parent_class)->size_allocate (widget, allocation);
|
||||||
|
|
||||||
gtk_css_gadget_allocate (priv->gadget,
|
|
||||||
allocation,
|
|
||||||
gtk_widget_get_allocated_baseline (widget),
|
|
||||||
&clip);
|
|
||||||
|
|
||||||
if (priv->layout)
|
if (priv->layout)
|
||||||
gtk_label_update_layout_width (label);
|
gtk_label_update_layout_width (label);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user