|
From: <br...@us...> - 2008-08-12 10:15:18
|
Revision: 3500
http://openvrml.svn.sourceforge.net/openvrml/?rev=3500&view=rev
Author: braden
Date: 2008-08-12 10:15:26 +0000 (Tue, 12 Aug 2008)
Log Message:
-----------
Use G_DEFINE_TYPE for custom GTK+ widgets.
Modified Paths:
--------------
branches/0.17/ChangeLog
branches/0.17/src/openvrml-player/filechooserdialog.cpp
branches/0.17/src/openvrml-xembed/gtkvrmlbrowser.cpp
Modified: branches/0.17/ChangeLog
===================================================================
--- branches/0.17/ChangeLog 2008-08-03 06:58:14 UTC (rev 3499)
+++ branches/0.17/ChangeLog 2008-08-12 10:15:26 UTC (rev 3500)
@@ -1,3 +1,10 @@
+2008-08-12 Braden McDaniel <br...@en...>
+
+ Use G_DEFINE_TYPE for custom GTK+ widgets.
+
+ * src/openvrml-xembed/gtkvrmlbrowser.cpp
+ * src/openvrml-player/filechooserdialog.cpp
+
2008-07-26 Braden McDaniel <br...@en...>
Fixed some potential crashes when processing coordinate, color,
Modified: branches/0.17/src/openvrml-player/filechooserdialog.cpp
===================================================================
--- branches/0.17/src/openvrml-player/filechooserdialog.cpp 2008-08-03 06:58:14 UTC (rev 3499)
+++ branches/0.17/src/openvrml-player/filechooserdialog.cpp 2008-08-12 10:15:26 UTC (rev 3500)
@@ -23,29 +23,10 @@
using namespace boost::multi_index::detail; // for scope_guard
-namespace {
- G_GNUC_INTERNAL void class_init(gpointer g_class, gpointer class_data);
- G_GNUC_INTERNAL void init(GTypeInstance * instance, gpointer g_class);
-}
+G_DEFINE_TYPE(OpenvrmlPlayerFileChooserDialog,
+ openvrml_player_file_chooser_dialog,
+ GTK_TYPE_FILE_CHOOSER_DIALOG)
-GtkType openvrml_player_file_chooser_dialog_get_type()
-{
- static GtkType type = 0;
-
- if (G_UNLIKELY(!type)) {
- type =
- g_type_register_static_simple(
- GTK_TYPE_FILE_CHOOSER_DIALOG,
- "OpenvrmlPlayerFileChooserDialog",
- sizeof (OpenvrmlPlayerFileChooserDialogClass),
- class_init,
- sizeof (OpenvrmlPlayerFileChooserDialog),
- init,
- GTypeFlags(0));
- }
- return type;
-}
-
GtkWidget * openvrml_player_file_chooser_dialog_new(GtkWindow * parent)
{
GtkWidget * const dialog =
@@ -96,17 +77,11 @@
return dialog;
}
-namespace {
+void
+openvrml_player_file_chooser_dialog_class_init(
+ OpenvrmlPlayerFileChooserDialogClass *)
+{}
- G_GNUC_INTERNAL GtkWidgetClass * parent_class;
-
- void class_init(const gpointer g_class, gpointer /* class_data */)
- {
- ::parent_class =
- static_cast<GtkWidgetClass *>(
- g_type_class_peek_parent(G_OBJECT_CLASS(g_class)));
- }
-
- void init(GTypeInstance * /* instance */, gpointer /* g_class */)
- {}
-}
+void openvrml_player_file_chooser_dialog_init(
+ OpenvrmlPlayerFileChooserDialog *)
+{}
Modified: branches/0.17/src/openvrml-xembed/gtkvrmlbrowser.cpp
===================================================================
--- branches/0.17/src/openvrml-xembed/gtkvrmlbrowser.cpp 2008-08-03 06:58:14 UTC (rev 3499)
+++ branches/0.17/src/openvrml-xembed/gtkvrmlbrowser.cpp 2008-08-12 10:15:26 UTC (rev 3500)
@@ -34,10 +34,11 @@
using namespace boost::multi_index::detail; // for scope_guard
-extern "C" {
- void gtk_vrml_browser_class_init(GtkVrmlBrowserClass * klass);
- void gtk_vrml_browser_init(GtkVrmlBrowser * vrml_browser);
+G_DEFINE_TYPE(GtkVrmlBrowser,
+ gtk_vrml_browser,
+ GTK_TYPE_VRML_BROWSER)
+extern "C" {
G_GNUC_INTERNAL gboolean gtk_vrml_browser_destroy(GtkWidget * widget,
GdkEvent * event,
gpointer data);
@@ -72,32 +73,6 @@
G_GNUC_INTERNAL gint gtk_vrml_browser_timeout_callback(gpointer ptr);
}
-GType gtk_vrml_browser_get_type()
-{
- static GType type = 0;
-
- if (!type) {
- static const GTypeInfo info = {
- sizeof (GtkVrmlBrowserClass),
- 0, // base_init
- 0, // base_finalize
- reinterpret_cast<GClassInitFunc>(gtk_vrml_browser_class_init),
- 0, // class_finalize
- 0, // class_data
- sizeof (GtkVrmlBrowser),
- 0, // n_preallocs
- reinterpret_cast<GInstanceInitFunc>(gtk_vrml_browser_init),
- 0 // value_table
- };
-
- type = g_type_register_static(GTK_TYPE_DRAWING_AREA,
- "GtkVrmlBrowser",
- &info,
- GTypeFlags(0));
- }
- return type;
-}
-
namespace {
G_GNUC_INTERNAL GdkGLConfig * gl_config;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|