Label troep
[sgc.git] / config.c
blob28481cc4a490ec6016a3be5ea09c94585efb0e95
1 #include "sgc.h"
3 void configOpen() {
4 GKeyFile *config = g_key_file_new();
5 if (g_key_file_load_from_file(config, CONFIGFILE, G_KEY_FILE_NONE, NULL)) {
6 gchar *last;
7 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(glade_xml_get_widget(xml, "checkmenuitemBeforeHum")), g_key_file_get_boolean(config, "before", "hum", NULL));
8 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(glade_xml_get_widget(xml, "checkmenuitemBeforeVoice")), g_key_file_get_boolean(config, "before", "voice", NULL));
9 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(glade_xml_get_widget(xml, "checkmenuitemExampleHum")), g_key_file_get_boolean(config, "example", "hum", NULL));
10 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(glade_xml_get_widget(xml, "checkmenuitemExampleVoice")), g_key_file_get_boolean(config, "example", "voice", NULL));
11 if ((last = g_key_file_get_string(config, "wordlist", "last", NULL)) == NULL || (g_access(last, F_OK) != 0)) {
12 gchar *currentDir = g_get_current_dir();
13 g_free(last);
14 last = g_build_filename(currentDir, TESTFILE, NULL);
15 fileOpen(last);
16 fileSave(last);
17 g_free(currentDir);
20 fileOpen(last);
21 gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(glade_xml_get_widget(xml, "filechooserdialogWordlist")), last);
22 g_free(last);
24 g_key_file_free(config);
27 void configSave() {
28 gchar *output;
29 GKeyFile *config = g_key_file_new();
30 g_key_file_set_boolean(config, "before", "hum", gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(glade_xml_get_widget(xml, "checkmenuitemBeforeHum"))));
31 g_key_file_set_boolean(config, "before", "voice", gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(glade_xml_get_widget(xml, "checkmenuitemBeforeVoice"))));
32 g_key_file_set_boolean(config, "example", "hum", gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(glade_xml_get_widget(xml, "checkmenuitemExampleHum"))));
33 g_key_file_set_boolean(config, "example", "voice", gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(glade_xml_get_widget(xml, "checkmenuitemExampleVoice"))));
34 g_key_file_set_string(config, "wordlist", "last", file);
36 output = g_key_file_to_data(config, NULL, NULL);
37 if (output != NULL)
38 g_file_set_contents(CONFIGFILE, output, -1, NULL);
40 g_free(output);
41 g_key_file_free(config);