[gnome-initial-setup] location: Split out into its own object file
- From: Jasper St. Pierre <jstpierre src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-initial-setup] location: Split out into its own object file
- Date: Tue, 12 Jun 2012 05:20:22 +0000 (UTC)
commit 6bc3a6fa693bbf961c44c7ab76fa29ca31d3378a
Author: Jasper St. Pierre <jstpierre mecheye net>
Date: Tue Jun 12 00:31:26 2012 -0400
location: Split out into its own object file
Start splitting everything out, so we're not #including everything.
gnome-initial-setup/Makefile.am | 4 +-
gnome-initial-setup/gis-location-page.c | 20 +++++++++++----
gnome-initial-setup/gis-location-page.h | 31 ++++++++++++++++++++++++
gnome-initial-setup/gnome-initial-setup.c | 37 +++++++++++-----------------
gnome-initial-setup/gnome-initial-setup.h | 25 +++++++++++++++++++
5 files changed, 88 insertions(+), 29 deletions(-)
---
diff --git a/gnome-initial-setup/Makefile.am b/gnome-initial-setup/Makefile.am
index b561ee9..f6de6b2 100644
--- a/gnome-initial-setup/Makefile.am
+++ b/gnome-initial-setup/Makefile.am
@@ -33,7 +33,8 @@ pw_utils_sources = pw-utils.c pw-utils.h
endif
gnome_initial_setup_SOURCES = \
- gnome-initial-setup.c \
+ gnome-initial-setup.c gnome-initial-setup.h \
+ gis-location-page.c gis-location-page.h \
panel-cell-renderer-signal.c panel-cell-renderer-signal.h \
panel-cell-renderer-mode.c panel-cell-renderer-mode.h \
panel-cell-renderer-security.c panel-cell-renderer-security.h \
@@ -54,7 +55,6 @@ included_source_files = \
gis-eula-pages.c \
gis-network-page.c \
gis-account-page.c \
- gis-location-page.c \
gis-goa-page.c \
gis-summary-page.c
diff --git a/gnome-initial-setup/gis-location-page.c b/gnome-initial-setup/gis-location-page.c
index 3db4dd0..ad4eeb4 100644
--- a/gnome-initial-setup/gis-location-page.c
+++ b/gnome-initial-setup/gis-location-page.c
@@ -1,6 +1,18 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
/* Location page {{{1 */
+#include "config.h"
+#include "gis-location-page.h"
+
+#include <glib/gi18n.h>
+#include <gio/gio.h>
+
+#include <stdlib.h>
+#include <string.h>
+
+#define DEFAULT_TZ "Europe/London"
+
static void
set_timezone_cb (GObject *source,
GAsyncResult *res,
@@ -201,16 +213,14 @@ determine_location (GtkWidget *widget,
}
#endif
-static void
-prepare_location_page (SetupData *setup)
+void
+gis_prepare_location_page (LocationData *data)
{
GtkWidget *frame, *map, *entry;
GWeatherLocation *world;
GError *error;
const gchar *timezone;
- LocationData *data = &(setup->location_data);
-
- data->setup = setup;
+ SetupData *setup = data->setup;
frame = WID("location-map-frame");
diff --git a/gnome-initial-setup/gis-location-page.h b/gnome-initial-setup/gis-location-page.h
new file mode 100644
index 0000000..e5fc77d
--- /dev/null
+++ b/gnome-initial-setup/gis-location-page.h
@@ -0,0 +1,31 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+#ifndef __GIS_LOCATION_PAGE_H__
+#define __GIS_LOCATION_PAGE_H__
+
+#include "gnome-initial-setup.h"
+
+#define GWEATHER_I_KNOW_THIS_IS_UNSTABLE
+#include <libgweather/location-entry.h>
+
+#include "cc-timezone-map.h"
+#include "timedated.h"
+
+G_BEGIN_DECLS
+
+typedef struct _LocationData LocationData;
+
+struct _LocationData {
+ SetupData *setup;
+
+ /* location data */
+ CcTimezoneMap *map;
+ TzLocation *current_location;
+ Timedate1 *dtm;
+};
+
+void gis_prepare_location_page (LocationData *data);
+
+G_END_DECLS
+
+#endif /* __GIS_LOCATION_PAGE_H__ */
diff --git a/gnome-initial-setup/gnome-initial-setup.c b/gnome-initial-setup/gnome-initial-setup.c
index bfdf474..c5f1786 100644
--- a/gnome-initial-setup/gnome-initial-setup.c
+++ b/gnome-initial-setup/gnome-initial-setup.c
@@ -1,6 +1,16 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
#include "config.h"
+
+#define GIS_COMP
+#include "gnome-initial-setup.h"
+
+#include <glib/gi18n.h>
+#include <gio/gio.h>
+
+#include <stdlib.h>
+#include <gtk/gtk.h>
+
#include <glib/gi18n.h>
#include <gio/gio.h>
@@ -15,16 +25,11 @@
#include <act/act-user-manager.h>
-#include "cc-timezone-map.h"
-#include "timedated.h"
#include "um-utils.h"
#include "um-photo-dialog.h"
#include "pw-utils.h"
#include "gdm-greeter-client.h"
-#define GWEATHER_I_KNOW_THIS_IS_UNSTABLE
-#include <libgweather/location-entry.h>
-
#define GOA_API_IS_SUBJECT_TO_CHANGE
#include <goa/goa.h>
#define GOA_BACKEND_API_IS_SUBJECT_TO_CHANGE
@@ -39,18 +44,7 @@
#include <gnome-keyring.h>
-#define DEFAULT_TZ "Europe/London"
-
-typedef struct _SetupData SetupData;
-typedef struct _LocationData LocationData;
-
-struct _LocationData {
- /* location data */
- CcTimezoneMap *map;
- TzLocation *current_location;
- Timedate1 *dtm;
- SetupData *setup;
-};
+#include "gis-location-page.h"
/* Setup data {{{1 */
struct _SetupData {
@@ -92,14 +86,10 @@ struct _SetupData {
GoaClient *goa_client;
};
-#define OBJ(type,name) ((type)gtk_builder_get_object(setup->builder,(name)))
-#define WID(name) OBJ(GtkWidget*,name)
-
#include "gis-welcome-page.c"
#include "gis-eula-pages.c"
#include "gis-network-page.c"
#include "gis-account-page.c"
-#include "gis-location-page.c"
#include "gis-goa-page.c"
#include "gis-summary-page.c"
@@ -139,7 +129,10 @@ prepare_assistant (SetupData *setup)
prepare_eula_pages (setup);
prepare_network_page (setup);
prepare_account_page (setup);
- prepare_location_page (setup);
+
+ setup->location_data.setup = setup;
+ gis_prepare_location_page (&setup->location_data);
+
prepare_online_page (setup);
prepare_summary_page (setup);
}
diff --git a/gnome-initial-setup/gnome-initial-setup.h b/gnome-initial-setup/gnome-initial-setup.h
new file mode 100644
index 0000000..fa96f1a
--- /dev/null
+++ b/gnome-initial-setup/gnome-initial-setup.h
@@ -0,0 +1,25 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+#ifndef __GNOME_INITIAL_SETUP_H__
+#define __GNOME_INITIAL_SETUP_H__
+
+#include <gtk/gtk.h>
+
+G_BEGIN_DECLS
+
+typedef struct _SetupData SetupData;
+
+/* ugly hacks ugghh */
+#ifndef GIS_COMP
+struct _SetupData {
+ GtkBuilder *builder;
+};
+#endif
+
+#define OBJ(type,name) ((type)gtk_builder_get_object(setup->builder,(name)))
+#define WID(name) OBJ(GtkWidget*,name)
+
+G_END_DECLS
+
+#endif /* __GNOME_INITIAL_SETUP_H__ */
+
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]