static EAddrConduitCfg * addrconduit_load_configuration (guint32 pilot_id) { EAddrConduitCfg *c; GnomePilotConduitManagement *management; GnomePilotConduitConfig *config; gchar *address, prefix[256]; g_snprintf (prefix, 255, "/gnome-pilot.d/e-address-conduit/Pilot_%u/", pilot_id); c = g_new0 (EAddrConduitCfg,1); g_assert (c != NULL); c->pilot_id = pilot_id; management = gnome_pilot_conduit_management_new ("e_address_conduit", GNOME_PILOT_CONDUIT_MGMT_ID); g_object_ref_sink (management); config = gnome_pilot_conduit_config_new (management, pilot_id); g_object_ref_sink (config); if (!gnome_pilot_conduit_config_is_enabled (config, &c->sync_type)) c->sync_type = GnomePilotConduitSyncTypeNotSet; g_object_unref (config); g_object_unref (management); /* Custom settings */ gnome_config_push_prefix (prefix); if (!e_book_get_addressbooks (&c->source_list, NULL)) c->source_list = NULL; if (c->source_list) { c->source = e_pilot_get_sync_source (c->source_list); if (!c->source) c->source = e_source_list_peek_source_any (c->source_list); if (c->source) { g_object_ref (c->source); } else { g_object_unref (c->source_list); c->source_list = NULL; } } c->secret = gnome_config_get_bool ("secret=FALSE"); address = gnome_config_get_string ("default_address=business"); if (!strcmp (address, "business")) c->default_address = E_CONTACT_ADDRESS_WORK; else if (!strcmp (address, "home")) c->default_address = E_CONTACT_ADDRESS_HOME; else if (!strcmp (address, "other")) c->default_address = E_CONTACT_ADDRESS_OTHER; g_free (address); c->last_uri = gnome_config_get_string ("last_uri"); gnome_config_pop_prefix (); return c; }
static EMemoConduitCfg * memoconduit_load_configuration (guint32 pilot_id) { EMemoConduitCfg *c; GnomePilotConduitManagement *management; GnomePilotConduitConfig *config; gchar prefix[256]; g_snprintf (prefix, 255, "/gnome-pilot.d/e-memo-conduit/Pilot_%u/", pilot_id); c = g_new0 (EMemoConduitCfg,1); g_assert (c != NULL); c->pilot_id = pilot_id; management = gnome_pilot_conduit_management_new ("e_memo_conduit", GNOME_PILOT_CONDUIT_MGMT_ID); g_object_ref_sink (management); config = gnome_pilot_conduit_config_new (management, pilot_id); g_object_ref_sink (config); if (!gnome_pilot_conduit_config_is_enabled (config, &c->sync_type)) c->sync_type = GnomePilotConduitSyncTypeNotSet; g_object_unref (config); g_object_unref (management); /* Custom settings */ gnome_config_push_prefix (prefix); if (!e_cal_get_sources (&c->source_list, E_CAL_SOURCE_TYPE_JOURNAL, NULL)) c->source_list = NULL; if (c->source_list) { c->source = e_pilot_get_sync_source (c->source_list); if (!c->source) c->source = e_source_list_peek_source_any (c->source_list); if (c->source) { g_object_ref (c->source); } else { g_object_unref (c->source_list); c->source_list = NULL; } } c->secret = gnome_config_get_bool ("secret=FALSE"); c->priority = gnome_config_get_int ("priority=3"); c->last_uri = gnome_config_get_string ("last_uri"); gnome_config_pop_prefix (); return c; }
static GtkWidget * vcard_getwidget (EImport *ei, EImportTarget *target, EImportImporter *im) { GtkWidget *vbox, *selector; ESource *primary; ESourceList *source_list; /* FIXME Better error handling */ if (!e_book_client_get_sources (&source_list, NULL)) return NULL; vbox = gtk_vbox_new (FALSE, FALSE); selector = e_source_selector_new (source_list); e_source_selector_show_selection (E_SOURCE_SELECTOR (selector), FALSE); gtk_box_pack_start (GTK_BOX (vbox), selector, FALSE, TRUE, 6); primary = g_datalist_get_data(&target->data, "vcard-source"); if (primary == NULL) { primary = e_source_list_peek_source_any (source_list); g_object_ref (primary); g_datalist_set_data_full ( &target->data, "vcard-source", primary, (GDestroyNotify) g_object_unref); } e_source_selector_set_primary_selection ( E_SOURCE_SELECTOR (selector), primary); g_object_unref (source_list); g_signal_connect ( selector, "primary_selection_changed", G_CALLBACK (primary_selection_changed_cb), target); gtk_widget_show_all (vbox); return vbox; }
static void init_widgets(char *path) { GtkWidget *vbox, *hbox, *dialog; icalcomponent_kind kind; icalcomponent *subcomp; GtkWidget *selector, *label; ESourceList *source_list; ESource *primary; GtkWidget *scrolled; ICalImporterData *icidata = g_malloc0(sizeof(*icidata)); GtkWidget *icon, *button; char *label_str = NULL; char *markup; g_return_if_fail ( path != NULL); dialog = gtk_dialog_new_with_buttons (_("Import ICS"), NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, NULL); icidata->window = dialog; g_signal_connect (dialog, "response", G_CALLBACK (dialog_response_cb), icidata); vbox = GTK_DIALOG(dialog)->vbox; hbox = gtk_hbox_new (FALSE, FALSE); label = gtk_label_new(NULL); gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 6); icidata->icalcomp = get_icalcomponent_from_file (path); subcomp = icalcomponent_get_inner(icidata->icalcomp); kind = icalcomponent_isa (subcomp); if (kind == ICAL_VTODO_COMPONENT ) { e_cal_get_sources (&source_list, E_CAL_SOURCE_TYPE_TODO, NULL); label_str = _("Select Task List"); icidata->source_type = E_CAL_SOURCE_TYPE_TODO; } else if ( kind == ICAL_VEVENT_COMPONENT) { e_cal_get_sources (&source_list, E_CAL_SOURCE_TYPE_EVENT, NULL); label_str = _("Select Calendar"); icidata->source_type = E_CAL_SOURCE_TYPE_EVENT; } markup = g_markup_printf_escaped ("<b>%s</b>", label_str); gtk_label_set_markup (GTK_LABEL (label), markup); g_free (markup); hbox = gtk_hbox_new (FALSE, FALSE); gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 6); gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 6); selector = e_source_selector_new (source_list); e_source_selector_show_selection (E_SOURCE_SELECTOR (selector), FALSE); scrolled = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW (scrolled), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); gtk_container_add((GtkContainer *)scrolled, selector); gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolled), GTK_SHADOW_IN); hbox = gtk_hbox_new (FALSE, FALSE); gtk_box_pack_start (GTK_BOX (hbox), scrolled, TRUE, TRUE, 6); gtk_box_pack_start (GTK_BOX (vbox), hbox, TRUE, TRUE, 6); icidata->selector = selector; /* FIXME What if no sources? */ primary = e_source_list_peek_source_any (source_list); e_source_selector_set_primary_selection (E_SOURCE_SELECTOR (selector), primary); g_object_unref (source_list); hbox = gtk_hbox_new (FALSE, FALSE); icon = e_icon_factory_get_image ("stock_mail-import", E_ICON_SIZE_MENU); gtk_box_pack_start (GTK_BOX(hbox), icon, FALSE, FALSE, 6); label = gtk_label_new_with_mnemonic (_("_Import")); gtk_box_pack_start (GTK_BOX(hbox), label, FALSE, FALSE, 6); gtk_widget_show(label); button = gtk_button_new (); gtk_container_add (GTK_CONTAINER (button), hbox); gtk_dialog_add_action_widget (GTK_DIALOG (dialog), button, GTK_RESPONSE_OK); gtk_widget_grab_focus (button); gtk_window_set_default_size (GTK_WINDOW (dialog), 210,340); gtk_widget_show_all (dialog); gtk_dialog_run (GTK_DIALOG (dialog)); gtk_widget_destroy (dialog); }