[Xfce4-commits] r22598 - xfmedia/branches/experimental/src
Brian Tarricone
kelnos at xfce.org
Tue Aug 1 02:40:13 UTC 2006
Author: kelnos
Date: 2006-08-01 02:40:12 +0000 (Tue, 01 Aug 2006)
New Revision: 22598
Modified:
xfmedia/branches/experimental/src/xfmedia-application.c
Log:
turn XfmediaApplication into a singleton
Modified: xfmedia/branches/experimental/src/xfmedia-application.c
===================================================================
--- xfmedia/branches/experimental/src/xfmedia-application.c 2006-08-01 02:27:19 UTC (rev 22597)
+++ xfmedia/branches/experimental/src/xfmedia-application.c 2006-08-01 02:40:12 UTC (rev 22598)
@@ -38,7 +38,9 @@
static void xfmedia_application_init(XfmediaApplication *application);
static void xfmedia_application_finalize(GObject *obj);
+static XfmediaApplication *g_application = NULL;
+
G_DEFINE_TYPE(XfmediaApplication, xfmedia_application, G_TYPE_OBJECT)
@@ -69,21 +71,26 @@
}
g_free(application->priv);
+
+ G_OBJECT_CLASS(xfmedia_application_parent_class)->finalize(obj);
}
XfmediaApplication *
-xfmedia_application_new()
+xfmedia_application_get()
{
- return g_object_new(XFMEDIA_TYPE_APPLICATION, NULL);
+ if(!g_application)
+ g_application = g_object_new(XFMEDIA_TYPE_APPLICATION, NULL));
+
+ return g_application;
}
void
-xfmedia_application_quit(XfmediaApplication *application)
+xfmedia_application_quit()
{
- g_return_if_fail(XFMEDIA_IS_APPLICATION(application));
+ g_return_if_fail(XFMEDIA_IS_APPLICATION(g_application));
- g_object_unref(G_OBJECT(application));
+ g_object_unref(G_OBJECT(g_application));
exit(0);
}
More information about the Xfce4-commits
mailing list