Reorganized GcalApplication source-file.
Connected settings to GcalWindow property.
This commit is contained in:
+49
-27
@@ -37,9 +37,14 @@ struct _GcalApplicationPrivate
|
|||||||
GtkCssProvider *provider;
|
GtkCssProvider *provider;
|
||||||
};
|
};
|
||||||
|
|
||||||
static void gcal_application_startup (GApplication *app);
|
static void gcal_application_finalize (GObject *object);
|
||||||
|
|
||||||
|
static void gcal_application_activate (GApplication *app);
|
||||||
|
|
||||||
|
static void gcal_application_startup (GApplication *app);
|
||||||
|
|
||||||
static void gcal_application_set_app_menu (GApplication *app);
|
static void gcal_application_set_app_menu (GApplication *app);
|
||||||
|
|
||||||
static void gcal_application_show_about (GSimpleAction *simple,
|
static void gcal_application_show_about (GSimpleAction *simple,
|
||||||
GVariant *parameter,
|
GVariant *parameter,
|
||||||
gpointer user_data);
|
gpointer user_data);
|
||||||
@@ -49,6 +54,45 @@ static void gcal_application_quit (GSimpleAction *simple,
|
|||||||
|
|
||||||
G_DEFINE_TYPE (GcalApplication, gcal_application, GTK_TYPE_APPLICATION);
|
G_DEFINE_TYPE (GcalApplication, gcal_application, GTK_TYPE_APPLICATION);
|
||||||
|
|
||||||
|
static void
|
||||||
|
gcal_application_class_init (GcalApplicationClass *klass)
|
||||||
|
{
|
||||||
|
GApplicationClass *application_class;
|
||||||
|
GObjectClass *object_class;
|
||||||
|
|
||||||
|
application_class = G_APPLICATION_CLASS (klass);
|
||||||
|
application_class->activate = gcal_application_activate;
|
||||||
|
application_class->startup = gcal_application_startup;
|
||||||
|
|
||||||
|
object_class = G_OBJECT_CLASS (klass);
|
||||||
|
object_class->finalize = gcal_application_finalize;
|
||||||
|
|
||||||
|
g_type_class_add_private ((gpointer) klass, sizeof(GcalApplicationPrivate));
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
gcal_application_init (GcalApplication *self)
|
||||||
|
{
|
||||||
|
self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self,
|
||||||
|
GCAL_TYPE_APPLICATION,
|
||||||
|
GcalApplicationPrivate);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
gcal_application_finalize (GObject *object)
|
||||||
|
{
|
||||||
|
GcalApplicationPrivate *priv;
|
||||||
|
|
||||||
|
g_return_if_fail (GCAL_IS_APPLICATION (object));
|
||||||
|
priv = GCAL_APPLICATION (object)->priv;
|
||||||
|
|
||||||
|
if (priv->settings != NULL)
|
||||||
|
g_clear_object (&(priv->settings));
|
||||||
|
|
||||||
|
if (G_OBJECT_CLASS (gcal_application_parent_class)->finalize != NULL)
|
||||||
|
G_OBJECT_CLASS (gcal_application_parent_class)->finalize (object);
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gcal_application_activate (GApplication *application)
|
gcal_application_activate (GApplication *application)
|
||||||
{
|
{
|
||||||
@@ -56,7 +100,9 @@ gcal_application_activate (GApplication *application)
|
|||||||
priv = GCAL_APPLICATION (application)->priv;
|
priv = GCAL_APPLICATION (application)->priv;
|
||||||
|
|
||||||
if (priv->window != NULL)
|
if (priv->window != NULL)
|
||||||
gtk_window_present (GTK_WINDOW (priv->window));
|
{
|
||||||
|
gtk_window_present (GTK_WINDOW (priv->window));
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
priv->window = gcal_window_new (GCAL_APPLICATION (application));
|
priv->window = gcal_window_new (GCAL_APPLICATION (application));
|
||||||
@@ -75,31 +121,6 @@ gcal_application_activate (GApplication *application)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
gcal_application_init (GcalApplication *self)
|
|
||||||
{
|
|
||||||
self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self,
|
|
||||||
GCAL_TYPE_APPLICATION,
|
|
||||||
GcalApplicationPrivate);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
gcal_application_finalize (GObject *object)
|
|
||||||
{
|
|
||||||
G_OBJECT_CLASS (gcal_application_parent_class)->finalize (object);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
gcal_application_class_init (GcalApplicationClass *klass)
|
|
||||||
{
|
|
||||||
G_APPLICATION_CLASS (klass)->activate = gcal_application_activate;
|
|
||||||
G_APPLICATION_CLASS (klass)->startup = gcal_application_startup;
|
|
||||||
|
|
||||||
G_OBJECT_CLASS (klass)->finalize = gcal_application_finalize;
|
|
||||||
|
|
||||||
g_type_class_add_private ((gpointer) klass, sizeof(GcalApplicationPrivate));
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gcal_application_startup (GApplication *app)
|
gcal_application_startup (GApplication *app)
|
||||||
{
|
{
|
||||||
@@ -181,6 +202,7 @@ gcal_application_quit (GSimpleAction *simple,
|
|||||||
g_application_quit (app);
|
g_application_quit (app);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Public API */
|
||||||
GcalApplication*
|
GcalApplication*
|
||||||
gcal_application_new (void)
|
gcal_application_new (void)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user