X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fgtkmathview-bonobo%2Fsrc%2Fcontrol-factory.c;h=c0bda201bcefd77b14edeb89f87cff614d71f83f;hb=88b1f433e5018ab2ee57d2f03bd50a07555b3ee3;hp=3b24af7eee564c84fde850aa7ac92fd6e6bf6d2f;hpb=f7b2e35a7bdadb4fdf0e640428e694703ddf67a5;p=helm.git diff --git a/helm/gtkmathview-bonobo/src/control-factory.c b/helm/gtkmathview-bonobo/src/control-factory.c index 3b24af7ee..c0bda201b 100644 --- a/helm/gtkmathview-bonobo/src/control-factory.c +++ b/helm/gtkmathview-bonobo/src/control-factory.c @@ -267,3 +267,65 @@ notify_property_bag(GtkMathView *math_view,gpointer data) //bonobo_property_bag_notify_listeners(prop_bag,); } + +/* +GtkMathViewPresistFile * +gtk_math_view_bonobo_data_construct(gchar *data_file) +{ + BonoboObject *retval; + BonoboPersistFile *file; + + file = bonobo_persist_file_new(gtk_math_view_load_from_file, + gtk_math_view_save_to_file, + "OAFIID:GNOME_MATH_VIEW_FILE_Control", + data_file); + + if(file == NULL) + { + bonobo_object_unref(BONOBO_OBJECT (data_file)); + g_warning("gtk_math_view_bonobo_data_construct:unable to create a new file"); + return NULL; + } + + bonobo_object_add_interface(BONOBO_OBJECT(data_file), + BONOBO_OBJECT(file)); + return data_file; +} + +static gint +gtk_math_view_bonobo_load_from_file(BonoboPresistFile *pf, + const CORBA_char *filename, + CORBA_Environment *ev, + void *closure) +{ + Bonobo_PersistStream ps = closure; + BonoboStream *stream; + + g_return_val_if_fail (data != NULL, -1); + //FIXME: controllo del tipo di dato in input + + stram = bonobo_stream_open( + BONOBO_IO_DRIVER_FS, + filename,Bonobo_STORAGE_READ, + 0); + if(!stream) + return 0; + + //FIXME:I have to extract content type from file + + + Bonobo_PersistStream_load(ps, type, ev); + + return 1; //return 1 on success +} + +static gint +gtk_math_view_bonobo_save_to_file(BonoboPresistFile *pf, + const CORBA_char *filename, + CORBA_Environment *ev, + void *closure) +{ + return 1; //return 1 on success +}*/ + +