X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fpsppire.c;h=6655a6ad5f40c68708dd17eddb8f610e89e220f6;hb=ecd26ec19e9f8a58079a1c5fa06b39484787ab7e;hp=b0de6cfa1bdfddc5a5cfc6b7d0fb4d995f5fb80c;hpb=9cb85c5eb1b0e041f4b7b7f1c5ab9cce55de524f;p=pspp-builds.git diff --git a/src/ui/gui/psppire.c b/src/ui/gui/psppire.c index b0de6cfa..6655a6ad 100644 --- a/src/ui/gui/psppire.c +++ b/src/ui/gui/psppire.c @@ -28,11 +28,13 @@ #include #include #include +#include #include #include #include #include #include +#include #include #include @@ -61,6 +63,26 @@ void create_icon_factory (void); struct source_stream *the_source_stream ; struct dataset * the_dataset = NULL; +static void +replace_dictionary (struct dictionary *d) +{ + psppire_dict_replace_dictionary (the_data_store->dict, + d); +} + + +static void +replace_flexifile (struct case_source *s) +{ + if ( NULL == s ) + psppire_case_file_replace_flexifile (the_data_store->case_file, + (struct flexifile *) flexifile_create (0)); + else + psppire_case_file_replace_flexifile (the_data_store->case_file, + (struct flexifile *) + storage_source_get_casefile (s)); +} + int main (int argc, char *argv[]) @@ -106,14 +128,15 @@ main (int argc, char *argv[]) fn_getenv_default ("STAT_INCLUDE_PATH", include_path) ); - the_dataset = create_dataset (factory); + the_dataset = create_dataset (factory, + replace_flexifile, + replace_dictionary); message_dialog_init (the_source_stream); - dictionary = - psppire_dict_new_from_dict ( - dataset_dict (the_dataset) - ); + dictionary = psppire_dict_new_from_dict ( + dataset_dict (the_dataset) + ); bind_textdomain_codeset (PACKAGE, "UTF-8"); @@ -123,6 +146,10 @@ main (int argc, char *argv[]) the_data_store = psppire_data_store_new (dictionary); + proc_set_source (the_dataset, + storage_source_create (the_data_store->case_file->flexifile) + ); + create_icon_factory (); new_data_window (NULL, NULL);