[anjuta] debug-manager: don't use deprecated functions in DmaSparseView



commit 3c8a6239d41f6c62725e8f55b7c924f2ebba9c74
Author: Carl-Anton Ingmarsson <ca ingmarsson gmail com>
Date:   Thu May 16 11:57:09 2013 +0200

    debug-manager: don't use deprecated functions in DmaSparseView
    
    Also remove some unused variables, make the DmaSparseView buffer a property
    and create the private structure using g_type_class_add_private()

 plugins/debug-manager/chunk_view.c  |    2 -
 plugins/debug-manager/disassemble.c |   12 +----
 plugins/debug-manager/sparse_view.c |   71 +++++++++++++++++------------------
 plugins/debug-manager/sparse_view.h |    1 -
 4 files changed, 37 insertions(+), 49 deletions(-)
---
diff --git a/plugins/debug-manager/chunk_view.c b/plugins/debug-manager/chunk_view.c
index 8c310d0..f5fcd95 100644
--- a/plugins/debug-manager/chunk_view.c
+++ b/plugins/debug-manager/chunk_view.c
@@ -181,13 +181,11 @@ static void
 dma_chunk_view_class_init (DmaChunkViewClass * klass)
 {
        GObjectClass *gobject_class;
-       GtkWidgetClass   *widget_class;
        GtkTextViewClass *text_view_class;
 
        g_return_if_fail (klass != NULL);
        
        gobject_class = G_OBJECT_CLASS (klass);
-       widget_class = GTK_WIDGET_CLASS (klass);
        text_view_class = GTK_TEXT_VIEW_CLASS (klass);
        parent_class = GTK_WIDGET_CLASS (g_type_class_peek_parent (klass));
        
diff --git a/plugins/debug-manager/disassemble.c b/plugins/debug-manager/disassemble.c
index f96b3dd..027652c 100644
--- a/plugins/debug-manager/disassemble.c
+++ b/plugins/debug-manager/disassemble.c
@@ -682,13 +682,9 @@ dma_disassembly_view_instance_init (DmaSparseView *view)
 static void
 dma_disassembly_view_class_init (DmaDisassemblyViewClass *klass)
 {
-       DmaSparseViewClass* view_class;
-       
        g_return_if_fail (klass != NULL);
-       
+
        parent_class = (DmaSparseViewClass*) g_type_class_peek_parent (klass);
-       
-       view_class = DMA_SPARSE_VIEW_CLASS (klass);
 }
 
 static GType
@@ -725,13 +721,11 @@ dma_disassembly_view_new_with_buffer (DmaDebuggerQueue *debugger, DmaSparseBuffe
 {
        DmaDisassemblyView *view;
 
-       view = g_object_new (DMA_DISASSEMBLY_VIEW_TYPE, NULL);
+       view = g_object_new (DMA_DISASSEMBLY_VIEW_TYPE, "buffer", buffer, NULL);
        g_assert (view != NULL);
 
        view->debugger = debugger;
-       
-       dma_sparse_view_set_sparse_buffer (DMA_SPARSE_VIEW(view), buffer);      
-               
+
        return view;
 }
        
diff --git a/plugins/debug-manager/sparse_view.c b/plugins/debug-manager/sparse_view.c
index 718dbab..9ae6a38 100644
--- a/plugins/debug-manager/sparse_view.c
+++ b/plugins/debug-manager/sparse_view.c
@@ -67,6 +67,7 @@
 
 enum {
        PROP_0,
+       PROP_BUFFER,
        PROP_SHOW_LINE_NUMBERS,
        PROP_SHOW_LINE_MARKERS,
 };
@@ -652,7 +653,6 @@ dma_sparse_view_paint_margin (DmaSparseView *view,
                                                          cairo_t *cr)
 {
        GtkTextView *text_view;
-       GdkWindow *win;
        PangoLayout *layout;
        gint y1, y2;
        gint y, height;
@@ -675,9 +675,6 @@ dma_sparse_view_paint_margin (DmaSparseView *view,
 
                return;
        }
-       
-       win = gtk_text_view_get_window (text_view,
-                                       GTK_TEXT_WINDOW_LEFT);  
 
        
        /* FIXME */
@@ -763,15 +760,8 @@ dma_sparse_view_paint_margin (DmaSparseView *view,
                        g_snprintf (str, sizeof (str),"0x%0*lX", margin_length, (long unsigned int)address);
                        pango_layout_set_markup (layout, str, -1);
 
-                       gtk_paint_layout (gtk_widget_get_style (GTK_WIDGET (view)),
-                                         cr,
-                                         gtk_widget_get_state (GTK_WIDGET (view)),
-                                         FALSE,
-                                         GTK_WIDGET (view),
-                                         NULL,
-                                         text_width + 2, 
-                                         pos,
-                                         layout);
+                       gtk_render_layout (gtk_widget_get_style_context (GTK_WIDGET (view)),
+                                          cr, text_width + 2, pos, layout);
                }
 
                /* Display marker */
@@ -898,7 +888,12 @@ dma_sparse_view_notify_vadjustment (DmaSparseView *view,
 void
 dma_sparse_view_set_sparse_buffer (DmaSparseView *view, DmaSparseBuffer *buffer)
 {
-       view->priv->buffer = buffer;
+       g_return_if_fail (DMA_IS_SPARSE_VIEW (view));
+       g_return_if_fail (DMA_IS_SPARSE_BUFFER (buffer));
+
+       g_clear_object (&view->priv->buffer);
+       view->priv->buffer = g_object_ref (buffer);
+
        if (view->priv->vadjustment != NULL)
        {
                gtk_adjustment_set_upper (view->priv->vadjustment, dma_sparse_buffer_get_upper 
(view->priv->buffer));
@@ -1088,6 +1083,9 @@ dma_sparse_view_set_property (GObject *object,guint prop_id, const GValue *value
     
        switch (prop_id)
        {
+               case PROP_BUFFER:
+                       dma_sparse_view_set_sparse_buffer (view, g_value_get_object (value));
+                       break;
                case PROP_SHOW_LINE_NUMBERS:
                        dma_sparse_view_set_show_line_numbers (view, g_value_get_boolean (value));
                        break;
@@ -1111,6 +1109,9 @@ dma_sparse_view_get_property (GObject *object, guint prop_id, GValue *value, GPa
     
        switch (prop_id)
        {
+               case PROP_BUFFER:
+                       g_value_set_object (value, view->priv->buffer);
+                       break;
                case PROP_SHOW_LINE_NUMBERS:
                        g_value_set_boolean (value, dma_sparse_view_get_show_line_numbers (view));
                        break;
@@ -1131,13 +1132,10 @@ dma_sparse_view_get_property (GObject *object, guint prop_id, GValue *value, GPa
 static void
 dma_sparse_view_dispose (GObject *object)
 {
-       DmaSparseView *view;
+       DmaSparseView *view = DMA_SPARSE_VIEW (object);
+
+       g_clear_object (&view->priv->buffer);
 
-       g_return_if_fail (object != NULL);
-       g_return_if_fail (DMA_IS_SPARSE_VIEW (object));
-       
-       view = DMA_SPARSE_VIEW (object);
-       
        G_OBJECT_CLASS (dma_sparse_view_parent_class)->dispose (object);
 }
 
@@ -1157,8 +1155,6 @@ dma_sparse_view_finalize (GObject *object)
        
        dma_sparse_view_free_marker (view);
 
-       g_free (view->priv);
-
        G_OBJECT_CLASS (dma_sparse_view_parent_class)->finalize (object);
 }
 
@@ -1170,7 +1166,8 @@ dma_sparse_view_init (DmaSparseView *view)
 {
        PangoFontDescription *font_desc;
        
-       view->priv = g_new0 (DmaSparseViewPrivate, 1);  
+       view->priv = G_TYPE_INSTANCE_GET_PRIVATE (view, DMA_SPARSE_VIEW_TYPE,
+                                                 DmaSparseViewPrivate);
        
        view->priv->buffer = NULL;
 
@@ -1198,7 +1195,7 @@ dma_sparse_view_init (DmaSparseView *view)
                                                                      MIN_NUMBER_WINDOW_WIDTH);
        
        font_desc = pango_font_description_from_string ("Monospace 10");
-       gtk_widget_modify_font (GTK_WIDGET (view), font_desc);
+       gtk_widget_override_font (GTK_WIDGET (view), font_desc);
        pango_font_description_free (font_desc);
        
        dma_sparse_view_initialize_marker (view);
@@ -1230,7 +1227,17 @@ dma_sparse_view_class_init (DmaSparseViewClass * klass)
        widget_class->draw = dma_sparse_view_draw;      
        
        text_view_class->move_cursor = dma_sparse_view_move_cursor;
-       
+
+       g_type_class_add_private (klass, sizeof (DmaSparseViewPrivate));
+
+       g_object_class_install_property (gobject_class,
+                                        PROP_BUFFER,
+                                        g_param_spec_object ("buffer",
+                                                              "Buffer",
+                                                              "The DmaSparseBuffer that is displayed",
+                                                      DMA_SPARSE_BUFFER_TYPE,
+                                                              G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
+
        g_object_class_install_property (gobject_class,
                                         PROP_SHOW_LINE_NUMBERS,
                                         g_param_spec_boolean ("show_line_numbers",
@@ -1245,7 +1252,7 @@ dma_sparse_view_class_init (DmaSparseViewClass * klass)
                                                               _("Show Line Markers"),
                                                               _("Whether to display line marker pixbufs"),
                                                               FALSE,
-                                                              G_PARAM_READWRITE));     
+                                                              G_PARAM_READWRITE));
 }
 
 /* Creation and Destruction
@@ -1256,18 +1263,8 @@ dma_sparse_view_new_with_buffer (DmaSparseBuffer *buffer)
 {
        GtkWidget *view;
 
-       view = g_object_new (DMA_SPARSE_VIEW_TYPE, NULL);
+       view = g_object_new (DMA_SPARSE_VIEW_TYPE, "buffer", buffer, NULL);
        g_assert (view != NULL);
 
-       dma_sparse_view_set_sparse_buffer (DMA_SPARSE_VIEW(view), buffer);
-       dma_sparse_buffer_get_iterator_at_address (buffer, &(DMA_SPARSE_VIEW (view))->priv->start, 0);
-
        return view;
 }
-       
-void
-dma_sparse_view_free (DmaSparseView *view)
-{
-       g_object_unref (view);
-}
-
diff --git a/plugins/debug-manager/sparse_view.h b/plugins/debug-manager/sparse_view.h
index 3de88d1..e971cf8 100644
--- a/plugins/debug-manager/sparse_view.h
+++ b/plugins/debug-manager/sparse_view.h
@@ -57,7 +57,6 @@ struct _DmaSparseViewClass
 GType dma_sparse_view_get_type (void);
 
 GtkWidget *dma_sparse_view_new_with_buffer (DmaSparseBuffer *buffer);
-void dma_sparse_view_free (DmaSparseView *view);
 
 void dma_sparse_view_set_show_line_numbers (DmaSparseView *view, gboolean show);
 gboolean dma_sparse_view_get_show_line_numbers (DmaSparseView *view);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]