[Goodies-commits] r5437 - xfbib/branches/gobject/src

David Gustafsson tssj at xfce.org
Tue Sep 23 13:54:30 CEST 2008


Author: tssj
Date: 2008-09-23 11:54:30 +0000 (Tue, 23 Sep 2008)
New Revision: 5437

Added:
   xfbib/branches/gobject/src/xfbib-state.c
   xfbib/branches/gobject/src/xfbib-state.h
Log:
Doh...Alsa have to add the source files.


Added: xfbib/branches/gobject/src/xfbib-state.c
===================================================================
--- xfbib/branches/gobject/src/xfbib-state.c	                        (rev 0)
+++ xfbib/branches/gobject/src/xfbib-state.c	2008-09-23 11:54:30 UTC (rev 5437)
@@ -0,0 +1,97 @@
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+#include <gtk/gtk.h>
+
+#include "xfbib-state.h"
+
+struct _XfbibState
+{
+	GObject parent;
+	XfbibElements *elements;
+	gchar *filename;
+	GtkWidget *window;
+};
+
+typedef struct _XfbibStateClass
+{
+	GObjectClass parent;
+} XfbibStateClass;
+
+static void xfbib_state_class_init(XfbibStateClass *klass);
+
+static void xfbib_state_init(XfbibState *instance);
+static void xfbib_state_finalize(GObject *obj);
+
+static XfbibState *xfbib_state_singleton = NULL;
+
+G_DEFINE_TYPE(XfbibState, xfbib_state, G_TYPE_OBJECT)
+
+static void
+xfbib_state_class_init(XfbibStateClass *klass)
+{
+	GObjectClass *object_class = (GObjectClass *)klass;
+	object_class->finalize = xfbib_state_finalize;
+}
+
+static void
+xfbib_state_init(XfbibState *instance)
+{
+}
+
+static void
+xfbib_state_finalize(GObject *obj)
+{
+	G_OBJECT_CLASS(xfbib_state_parent_class)->finalize(obj);
+}
+
+XfbibState *
+xfbib_state_new()
+{
+	XfbibState *state;
+	
+	if (xfbib_state_singleton == NULL) {
+		state = g_object_new(XFBIB_TYPE_STATE, NULL);
+		xfbib_state_singleton = g_object_ref(G_OBJECT(state));
+	} else {
+		state = g_object_ref(G_OBJECT(xfbib_state_singleton));
+	}
+
+	return state;
+}
+
+void xfbib_state_set_filename(XfbibState *state, gchar *filename)
+{
+	g_return_if_fail(XFBIB_IS_STATE(state));
+	state->filename = g_strdup(filename);
+}
+
+gchar *xfbib_state_get_filename(XfbibState *state)
+{
+	g_return_val_if_fail(XFBIB_IS_STATE(state), NULL);
+	return state->filename;
+}
+
+void xfbib_state_set_bibtex_elements(XfbibState *state, XfbibElements *elements)
+{
+	g_return_if_fail(XFBIB_IS_STATE(state));
+	state->elements = elements;
+}
+
+XfbibElements *xfbib_state_get_bibtex_elements(XfbibState *state)
+{
+	g_return_val_if_fail(XFBIB_IS_STATE(state), NULL);
+	return state->elements;
+}
+
+void xfbib_state_set_window(XfbibState *state, GtkWidget *window)
+{
+	g_return_if_fail(XFBIB_IS_STATE(state));
+	state->window = window;
+}
+
+GtkWidget *xfbib_state_get_window(XfbibState *state)
+{
+	g_return_val_if_fail(XFBIB_IS_STATE(state), NULL);
+	return state->window;
+}

Added: xfbib/branches/gobject/src/xfbib-state.h
===================================================================
--- xfbib/branches/gobject/src/xfbib-state.h	                        (rev 0)
+++ xfbib/branches/gobject/src/xfbib-state.h	2008-09-23 11:54:30 UTC (rev 5437)
@@ -0,0 +1,31 @@
+#ifndef __XFBIB_STATE_H
+#define __XFBIB_STATE_H
+
+#include <glib-object.h>
+#include "xfbib-elements.h"
+
+#define XFBIB_TYPE_STATE             (xfbib_state_get_type())
+#define XFBIB_STATE(obj)             (G_TYPE_CHECK_INSTANCE_CAST((obj), XFBIB_TYPE_STATE, XfbibState))
+#define XFBIB_IS_STATE(obj)          (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFBIB_TYPE_STATE))
+#define XFBIB_STATE_CLASS(klass)     (G_TYPE_CHECK_CLASS_CAST((klass), XFBIB_TYPE_STATE, XfbibStateClass))
+#define XFBIB_IS_STATE_CLASS(klass)  (G_TYPE_CHECK_CLASS_TYPE((klass), XFBIB_TYPE_STATE))
+#define XFBIB_STATE_GET_CLASS(obj)   (G_TYPE_INSTANCE_GET_CLASS((obj), XFBIB_TYPE_STATE, XfbibStateClass))
+
+G_BEGIN_DECLS
+
+typedef struct _XfbibState         XfbibState;
+
+GType xfbib_state_get_type() G_GNUC_CONST;
+
+XfbibState *xfbib_state_new();
+void xfbib_state_set_bibtex_elements(XfbibState *, XfbibElements *);
+XfbibElements *xfbib_state_get_bibtex_elements(XfbibState *);
+void xfbib_state_set_filename(XfbibState *, gchar *);
+gchar *xfbib_state_get_filename(XfbibState *);
+void xfbib_state_set_window(XfbibState *, GtkWidget *);
+GtkWidget *xfbib_state_get_window(XfbibState *);
+
+G_END_DECLS
+
+#endif //__XFBIB_STATE_H
+




More information about the Goodies-commits mailing list