X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fgtkmathview-bonobo%2Fsrc%2Fpersist-file.c;h=f1505b50cbaf7451401c20e521c5d06f829e6887;hb=88b1f433e5018ab2ee57d2f03bd50a07555b3ee3;hp=eceb4e77a31cbb5bb6a88e3b544113eefddec4f5;hpb=70f855932359e26ca89deb11c22f9c9d26154827;p=helm.git diff --git a/helm/gtkmathview-bonobo/src/persist-file.c b/helm/gtkmathview-bonobo/src/persist-file.c index eceb4e77a..f1505b50c 100644 --- a/helm/gtkmathview-bonobo/src/persist-file.c +++ b/helm/gtkmathview-bonobo/src/persist-file.c @@ -82,71 +82,23 @@ gtk_math_view_persist_file_new(GtkMathView *math_view) } static void -load_implementation(PortableServer_Servant servant,const CORBA_char *path,CORBA_Environment *ev) +load_implementation(const gchar *path,CORBA_Environment *ev) { - GtkMathViewPersistFile *file = GTK_MATH_VIEW_ -} - -Dom::Document * -gtk_math_view_bonobo_data_construct(Dom::Document *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)); - return NULL; + gboolean result; + g_assert(GTK_IS_MATH_VIEW(ev)); + result = gtk_math_view_load_uri((GtkMathView *) ev); + if(!result){ + CORBA_exception_set(ev,CORBA_USER_EXCEPTION,ex_Bonobo_Persist_WrongDataType,NULL); + return; } - - bonobo_object_add_interface(BONOBO_OBJECT(data_file), - BONOBO_OBJECT(file)); - return data_file; -} - - + return ; } - -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) +static void +save_implementation(const gchar *path,CORBA_Environment *ev) { - return 1; //return 1 on success + bonobo_exception_set(ev,"save_exception"); + bonobo_exception_add_handler_str("save_exception", + "Save option is not valid"); + return; } - -