/** * gtk_source_map_set_view: * @map: a #GtkSourceMap * @view: a #GtkSourceView * * Sets the view that @map will be doing the mapping to. * * Since: 3.18 */ void gtk_source_map_set_view (GtkSourceMap *map, GtkSourceView *view) { GtkSourceMapPrivate *priv; g_return_if_fail (GTK_SOURCE_IS_MAP (map)); g_return_if_fail (view == NULL || GTK_SOURCE_IS_VIEW (view)); priv = gtk_source_map_get_instance_private (map); if (priv->view == view) { return; } if (priv->view != NULL) { disconnect_view (map); } if (view != NULL) { connect_view (map, view); } g_object_notify_by_pspec (G_OBJECT (map), pspecs[PROP_VIEW]); }
static void ide_line_change_gutter_renderer_dispose (GObject *object) { IdeLineChangeGutterRenderer *self = (IdeLineChangeGutterRenderer *)object; disconnect_view (IDE_LINE_CHANGE_GUTTER_RENDERER (object)); g_clear_pointer (&self->lines, g_array_unref); G_OBJECT_CLASS (ide_line_change_gutter_renderer_parent_class)->dispose (object); }
static void gtk_source_map_destroy (GtkWidget *widget) { GtkSourceMap *map = GTK_SOURCE_MAP (widget); GtkSourceMapPrivate *priv; priv = gtk_source_map_get_instance_private (map); disconnect_buffer (map); disconnect_view (map); g_clear_object (&priv->css_provider); g_clear_pointer (&priv->font_desc, pango_font_description_free); GTK_WIDGET_CLASS (gtk_source_map_parent_class)->destroy (widget); }
static void ide_line_change_gutter_renderer_notify_view (IdeLineChangeGutterRenderer *self) { disconnect_view (self); connect_view (self); }