6 gchar
* checkpinyin(gchar
*pinyin
) {
8 g_ascii_strdown(pinyin
, -1);
9 g_strcanon(pinyin
, "#012345abcdefghijklmnopqrstuvwxyz\n", '-');
10 result
= g_strsplit(pinyin
, "-", MAXTESTS
* 2);
12 pinyin
= g_strjoinv(NULL
, result
);
17 gtk_list_store_clear(GTK_LIST_STORE(liststore
));
18 treevalid
= gtk_tree_model_get_iter_first(GTK_TREE_MODEL(liststore
), &mainIter
);
22 void setBase(gchar
*newbase
) {
28 void setFile(gchar
*newfile
) {
35 void fileOpen(gchar
*filename
) {
36 gchar
**testList
= NULL
;
42 if (g_file_get_contents(filename
, &contents
, &length
, NULL
) != FALSE
) {
44 gchar
*processed
= checkpinyin(contents
);
46 testList
= g_strsplit(processed
, "\n", MAXTESTS
);
47 while ( testList
[i
] != NULL
) {
48 if (g_str_has_prefix (testList
[i
], "#")) {
49 /* Voeg commentaar toe ofzo */
51 add_entry(testList
[i
]);
57 if (testList
== NULL
) {
58 testList
= g_strsplit("xu1\nci2", "\n", MAXTESTS
);
64 gtk_window_set_title(GTK_WINDOW(glade_xml_get_widget(xml
, "windowWordlist")), filename
);
66 setBase(g_path_get_dirname(filename
));
67 setFile(g_strdup(filename
));
69 treevalid
= gtk_tree_model_get_iter_first(GTK_TREE_MODEL(liststore
), &mainIter
);
74 void fileSave(gchar
*filename
) {
75 if (treevalid
== TRUE
&& filename
!= NULL
) {
79 /* Get first row in list store */
80 valid
= gtk_tree_model_get_iter_first(GTK_TREE_MODEL(liststore
), &iter
);
83 GString
*contents
= g_string_new("");
84 if (contents
!= NULL
) {
88 gtk_tree_model_get(GTK_TREE_MODEL(liststore
), &iter
, COL_TEXT
, &string
, -1);
89 contents
= g_string_append(contents
, string
);
90 contents
= g_string_append(contents
, "\r\n");
92 valid
= gtk_tree_model_iter_next(GTK_TREE_MODEL(liststore
), &iter
);
96 g_file_set_contents(filename
, contents
->str
, -1, NULL
);
98 g_string_free(contents
, true);