[glade] Move GladeWidgetAdaptor code for GtkTextBuffer into it's own C file



commit d309a32a679a0e102c22df2f45d4cceecc1e3e13
Author: Tristan Van Berkom <tristan van berkom gmail com>
Date:   Sat May 4 15:09:16 2013 +0900

    Move GladeWidgetAdaptor code for GtkTextBuffer into it's own C file

 plugins/gtk+/Makefile.am             |    1 +
 plugins/gtk+/glade-gtk-text-buffer.c |   85 ++++++++++++++++++++++++++++++++++
 plugins/gtk+/glade-gtk.c             |   63 -------------------------
 po/POTFILES.in                       |    1 +
 4 files changed, 87 insertions(+), 63 deletions(-)
---
diff --git a/plugins/gtk+/Makefile.am b/plugins/gtk+/Makefile.am
index 9ce20c4..6fb8eb0 100644
--- a/plugins/gtk+/Makefile.am
+++ b/plugins/gtk+/Makefile.am
@@ -62,6 +62,7 @@ libgladegtk_la_SOURCES =              \
        glade-gtk-recent-chooser-menu.c \
        glade-gtk-switch.c              \
        glade-gtk-table.c               \
+       glade-gtk-text-buffer.c         \
        glade-gtk-tool-button.c         \
        glade-gtk-tool-item.c           \
        glade-gtk-tool-item-group.c     \
diff --git a/plugins/gtk+/glade-gtk-text-buffer.c b/plugins/gtk+/glade-gtk-text-buffer.c
new file mode 100644
index 0000000..bda4e4a
--- /dev/null
+++ b/plugins/gtk+/glade-gtk-text-buffer.c
@@ -0,0 +1,85 @@
+/*
+ * glade-gtk-text-buffer.c - GladeWidgetAdaptor for GtkTextBuffer
+ *
+ * Copyright (C) 2013 Tristan Van Berkom
+ *
+ * Authors:
+ *      Tristan Van Berkom <tristan van berkom gmail com>
+ *
+ * This library is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public 
+ * License along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <config.h>
+#include <glib/gi18n-lib.h>
+#include <gladeui/glade.h>
+
+static void
+glade_gtk_text_buffer_changed (GtkTextBuffer * buffer, GladeWidget * gbuffy)
+{
+  const gchar *text_prop = NULL;
+  GladeProperty *prop;
+  gchar *text = NULL;
+
+  g_object_get (buffer, "text", &text, NULL);
+
+  if ((prop = glade_widget_get_property (gbuffy, "text")))
+    {
+      glade_property_get (prop, &text_prop);
+
+      if (g_strcmp0 (text, text_prop))
+        glade_command_set_property (prop, text);
+    }
+  g_free (text);
+}
+
+void
+glade_gtk_text_buffer_post_create (GladeWidgetAdaptor * adaptor,
+                                   GObject * object, GladeCreateReason reason)
+{
+  GladeWidget *gbuffy;
+
+  gbuffy = glade_widget_get_from_gobject (object);
+
+  g_signal_connect (object, "changed",
+                    G_CALLBACK (glade_gtk_text_buffer_changed), gbuffy);
+}
+
+void
+glade_gtk_text_buffer_set_property (GladeWidgetAdaptor * adaptor,
+                                    GObject * object,
+                                    const gchar * id, const GValue * value)
+{
+  GladeWidget *gwidget = glade_widget_get_from_gobject (object);
+  GladeProperty *property = glade_widget_get_property (gwidget, id);
+
+  if (!strcmp (id, "text"))
+    {
+      g_signal_handlers_block_by_func (object, glade_gtk_text_buffer_changed,
+                                       gwidget);
+
+      if (g_value_get_string (value))
+        gtk_text_buffer_set_text (GTK_TEXT_BUFFER (object),
+                                  g_value_get_string (value), -1);
+      else
+        gtk_text_buffer_set_text (GTK_TEXT_BUFFER (object), "", -1);
+
+      g_signal_handlers_unblock_by_func (object, glade_gtk_text_buffer_changed,
+                                         gwidget);
+
+    }
+  else if (GPC_VERSION_CHECK
+           (glade_property_get_class (property), gtk_major_version, gtk_minor_version + 1))
+    GWA_GET_CLASS (G_TYPE_OBJECT)->set_property (adaptor, object, id, value);
+}
diff --git a/plugins/gtk+/glade-gtk.c b/plugins/gtk+/glade-gtk.c
index f2b69d2..ce343fc 100644
--- a/plugins/gtk+/glade-gtk.c
+++ b/plugins/gtk+/glade-gtk.c
@@ -80,69 +80,6 @@ glade_gtk_init (const gchar * name)
 
 
 
-
-
-/* ----------------------------- GtkTextBuffer ------------------------------ */
-static void
-glade_gtk_text_buffer_changed (GtkTextBuffer * buffer, GladeWidget * gbuffy)
-{
-  const gchar *text_prop = NULL;
-  GladeProperty *prop;
-  gchar *text = NULL;
-
-  g_object_get (buffer, "text", &text, NULL);
-
-  if ((prop = glade_widget_get_property (gbuffy, "text")))
-    {
-      glade_property_get (prop, &text_prop);
-
-      if (g_strcmp0 (text, text_prop))
-        glade_command_set_property (prop, text);
-    }
-  g_free (text);
-}
-
-void
-glade_gtk_text_buffer_post_create (GladeWidgetAdaptor * adaptor,
-                                   GObject * object, GladeCreateReason reason)
-{
-  GladeWidget *gbuffy;
-
-  gbuffy = glade_widget_get_from_gobject (object);
-
-  g_signal_connect (object, "changed",
-                    G_CALLBACK (glade_gtk_text_buffer_changed), gbuffy);
-}
-
-
-void
-glade_gtk_text_buffer_set_property (GladeWidgetAdaptor * adaptor,
-                                    GObject * object,
-                                    const gchar * id, const GValue * value)
-{
-  GladeWidget *gwidget = glade_widget_get_from_gobject (object);
-  GladeProperty *property = glade_widget_get_property (gwidget, id);
-
-  if (!strcmp (id, "text"))
-    {
-      g_signal_handlers_block_by_func (object, glade_gtk_text_buffer_changed,
-                                       gwidget);
-
-      if (g_value_get_string (value))
-        gtk_text_buffer_set_text (GTK_TEXT_BUFFER (object),
-                                  g_value_get_string (value), -1);
-      else
-        gtk_text_buffer_set_text (GTK_TEXT_BUFFER (object), "", -1);
-
-      g_signal_handlers_unblock_by_func (object, glade_gtk_text_buffer_changed,
-                                         gwidget);
-
-    }
-  else if (GPC_VERSION_CHECK
-           (glade_property_get_class (property), gtk_major_version, gtk_minor_version + 1))
-    GWA_GET_CLASS (G_TYPE_OBJECT)->set_property (adaptor, object, id, value);
-}
-
 /* ----------------------------- GtkTextView ------------------------------ */
 static gboolean
 glade_gtk_text_view_stop_double_click (GtkWidget * widget,
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 060cf65..2f0eb43 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -90,6 +90,7 @@ plugins/gtk+/glade-gtk-radio-menu-item.c
 plugins/gtk+/glade-gtk-recent-chooser-menu.c
 plugins/gtk+/glade-gtk-switch.c
 plugins/gtk+/glade-gtk-table.c
+plugins/gtk+/glade-gtk-text-buffer.c
 plugins/gtk+/glade-gtk-tool-button.c
 plugins/gtk+/glade-gtk-tool-item.c
 plugins/gtk+/glade-gtk-tool-item-group.c


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