2 * Copyright (C) 2010 Robert Ancell.
3 * Author: Robert Ancell <robert.ancell@canonical.com>
5 * This library is free software; you can redistribute it and/or modify it under
6 * the terms of the GNU Lesser General Public License as published by the Free
7 * Software Foundation; either version 3 of the License, or (at your option) any
8 * later version. See http://www.gnu.org/copyleft/lgpl.html the full text of the
12 #ifndef _LDM_LAYOUT_H_
13 #define _LDM_LAYOUT_H_
15 #include <glib-object.h>
19 #define LDM_TYPE_LAYOUT (ldm_layout_get_type())
20 #define LDM_LAYOUT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), LDM_TYPE_LAYOUT, LdmLayout));
21 #define LDM_LAYOUT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), LDM_TYPE_LAYOUT, LdmLayoutClass))
22 #define LDM_IS_LAYOUT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LDM_TYPE_LAYOUT))
23 #define LDM_IS_LAYOUT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LDM_TYPE_LAYOUT))
24 #define LDM_LAYOUT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), LDM_TYPE_LAYOUT, LdmLayoutClass))
26 typedef struct _LdmLayout LdmLayout;
27 typedef struct _LdmLayoutClass LdmLayoutClass;
28 typedef struct _LdmLayoutPrivate LdmLayoutPrivate;
32 GObject parent_instance;
34 LdmLayoutPrivate *priv;
37 struct _LdmLayoutClass
39 GObjectClass parent_class;
42 GType ldm_layout_get_type (void);
44 LdmLayout *ldm_layout_new (const gchar *name, const gchar *short_description, const gchar *description);
46 const gchar *ldm_layout_get_name (LdmLayout *layout);
48 const gchar *ldm_layout_get_short_description (LdmLayout *layout);
50 const gchar *ldm_layout_get_description (LdmLayout *layout);
54 #endif /* _LDM_LAYOUT_H_ */