summaryrefslogtreecommitdiffstats
path: root/sync/src/sync_main.c
diff options
context:
space:
mode:
Diffstat (limited to 'sync/src/sync_main.c')
-rw-r--r--sync/src/sync_main.c80
1 files changed, 61 insertions, 19 deletions
diff --git a/sync/src/sync_main.c b/sync/src/sync_main.c
index dcfbaa7..7881145 100644
--- a/sync/src/sync_main.c
+++ b/sync/src/sync_main.c
@@ -16,6 +16,7 @@
#include "sync_evo2_item.h"
#include "sync_file_item.h"
#include "sync_syncml_item.h"
+#include "sync_syncml_server_item.h"
#if 0
static gboolean
sync_clean_backup (SyncData *data)
@@ -104,6 +105,26 @@ sync_animate (SyncData *data)
}
static void
+sync_server_started_cb (SyncGroup *group)
+{
+ g_message ("Server started sync");
+}
+
+static void
+sync_server_finished_cb (SyncGroup *group)
+{
+ g_message ("Server finished sync");
+ sync_group_autostart (group);
+}
+
+static void
+sync_server_failed_cb (SyncGroup *group, const gchar *error)
+{
+ g_warning ("Server sync failed");
+ sync_group_autostart (group);
+}
+
+static void
sync_started_cb (SyncCollection *collection, SyncData *data)
{
GtkWidget *widget = glade_xml_get_widget (
@@ -179,46 +200,51 @@ sync_item_activated_cb (GtkIconView *iconview, GtkTreePath *arg1,
&iter, COL_NAME, &name, COL_TYPE, &type, -1);
switch (type) {
- SyncItem *item;
+ SyncItem *item, *item2;
SyncGroup *group;
gchar *path;
case TYPE_SYNCML:
+ path = g_strdup_printf (TEMP_PATH,
+ g_getenv ("HOME"));
+ item2 = sync_file_item_new ("Test", path);
+ g_free (path);
+
/* Contacts SyncML item */
- item = sync_syncml_item_new ("Mobical",
- "http://www.mobical.net/sync/server",
- CONTACTS, "Cwiiis", "2e9tp2", "con");
+ item = sync_syncml_item_new ("Server",
+ "http://localhost:8080",
+ CONTACTS, "", "", "card");
group = sync_group_new_with_items (
- data->local_item, item);
+ item2, item);
sync_collection_add_group (data->collection,
group);
g_object_unref (group);
g_object_unref (item);
/* Events SyncML item */
- item = sync_syncml_item_new ("Mobical",
- "http://www.mobical.net/sync/server",
- EVENTS, "Cwiiis", "2e9tp2", "cal");
+/* item = sync_syncml_item_new ("Server",
+ "http://localhost:8080",
+ EVENTS, "", "", "cal");
group = sync_group_new_with_items (
- data->local_item, item);
+ item2, item);
sync_collection_add_group (data->collection,
group);
g_object_unref (group);
- g_object_unref (item);
+ g_object_unref (item);*.
/* Todo SyncML item */
- item = sync_syncml_item_new ("Mobical",
- "http://www.mobical.net/sync/server",
- TODO, "Cwiiis", "2e9tp2", "task");
+/* item = sync_syncml_item_new ("Server",
+ "http://localhost:8080",
+ TODO, "", "", "cal");
group = sync_group_new_with_items (
- data->local_item, item);
+ item2, item);
sync_collection_add_group (data->collection,
group);
g_object_unref (group);
- g_object_unref (item);
+ g_object_unref (item);*/
/* TODO: Check if notes sync works? */
-
+ g_object_unref (item2);
break;
case TYPE_FILE:
path = g_strdup_printf (TEMP_PATH,
@@ -367,6 +393,7 @@ main (int argc, char **argv)
GtkIconTheme *icon_theme;
gint width = 0, height = 0;
SyncData data;
+ SyncItem *server_item;
gtk_init (&argc, &argv);
glade_init ();
@@ -407,7 +434,22 @@ main (int argc, char **argv)
/* Create local sync-item and sync collection */
data.collection = sync_collection_new ();
data.local_item = sync_evo2_item_new ("Local", NULL, NULL, NULL);
-
+
+ /* Create and start server */
+ server_item = sync_syncml_server_item_new ("Server", "", "",
+ 8080, "card", "cal", "note");
+ data.server_group = sync_group_new_with_items (
+ server_item, data.local_item);
+ g_object_unref (server_item);
+ /* TODO: Conflicts? */
+ g_signal_connect (G_OBJECT (data.server_group), "started",
+ G_CALLBACK (sync_server_started_cb), NULL);
+ g_signal_connect (G_OBJECT (data.server_group), "finished",
+ G_CALLBACK (sync_server_finished_cb), NULL);
+ g_signal_connect (G_OBJECT (data.server_group), "failed",
+ G_CALLBACK (sync_server_failed_cb), NULL);
+ sync_group_autostart (data.server_group);
+
/* Insert some items for testing (TODO: look at loading groups later) */
gtk_list_store_insert_with_values (GTK_LIST_STORE (data.model), &iter,
G_MAXINT, COL_NAME, "SyncML Test", COL_TYPE, TYPE_SYNCML,
@@ -417,7 +459,7 @@ main (int argc, char **argv)
COL_PIXBUF, data.backup_icon, -1);
/* Insert preset items */
- gtk_list_store_insert_with_values (GTK_LIST_STORE (data.model), &iter,
+/* gtk_list_store_insert_with_values (GTK_LIST_STORE (data.model), &iter,
G_MAXINT, COL_NAME, "Backup", COL_TYPE, TYPE_BACKUP,
COL_PIXBUF, data.backup_icon, -1);
gtk_list_store_insert_with_values (GTK_LIST_STORE (data.model), &iter,
@@ -425,7 +467,7 @@ main (int argc, char **argv)
COL_PIXBUF, data.restore_icon, -1);
gtk_list_store_insert_with_values (GTK_LIST_STORE (data.model), &iter,
G_MAXINT, COL_NAME, "Add target...", COL_TYPE, TYPE_ADD_NEW,
- COL_PIXBUF, data.add_icon, -1);
+ COL_PIXBUF, data.add_icon, -1);*/
/* TODO: Avahi detection of local sync servers? */
/* TODO: Bluetooth scanning? */