Re: [mlview-list] Plugin subsystem for mlview 0.9



Hello,

Whell, when I tried to tla get mlview--extensible--0.9--patch-1, it appeared
that this patch-1 was corrupted. Tla couldn't get it, or merge anything
from it.

I managed to get the changeset, and apply the patch in my tree by hand,
using cp and patch.

The good news is that your patch has been commited in
mlview--main--0.9--patch-20 :-).

The bad news is that  you can hardly star-merge stuffs between
mlview--main--0.9 and mlview--extensible--0.9 now.
I think the best option is to manage to work from what we have
in mlview--main--0.9 now. If you have some non-commited stuffs pending in
mlview--extensible--0.9, let me know. We will see how we can move
that code in mlview--main--0.9 quickly.

I made some changes to the patch just to make it comply more with
the other parts of the app and also to fix some bugs here and there.

Here is the log of what I did:

	  don't expose PluginManager in AppContext.h. Instead, make it be
	  a private member of mlview::App.

	  Control *when* the plugins are going to get loaded, that is,
	  call PluginManager::load_all_plugins_from_default_plugins_dir(),
	  at the end of App::App(), when the MlView application is correctly
	  initialized.

	  in mlview-plugin-descriptor.h and mlview-plugin.h
	  Make the classes respect the canonical form of mlview classes, i.e
	  only one member, declaration of assignment operator, copy constructor, etc,
	  don't expose any member data, only accesors.

	  in mlview-plugin-descriptor.cc:
	  replace if (!condition) goto error ; by THROW_IF_FAIL (condition) ;
	  replace char* by safer UString.

	  in mlview-plugin-manager.cc and other files
	  don't do catch (...) only and don't do it without tracing.

	  removed mlview-safe-ptr-object-utils.h, move its content into
	  mlview-safe-ptr-utils.h

	  remove the entry concerning plugins from main-menu-bar.xml because
	  the ExtensionMenuAction is not defined. This fixes all the
	  warnings thrown by GtkUIManager when he loaded that file.
	  That entry can be put back when the matching Action is defined.

Other than that, the patch looks good to me.

Man, having plugins in MlView now is really good news ! Okay, there is
still some code missing to make it be fully fonctionnal, but I like what
I am seeing so far :-)

Thank you for your time, and keep up the good work !

Cheers,

Dodji.

On Wed, Aug 03, 2005 at 10:33:02AM +0200, Nicolas Centa wrote:
> Hello,
>         
>         The initial revision of a plugin subsystem for
> mlview 0.9 is in my archive at http://arch.duckcorp.org/happypeng/2005-mlview/
> in mlview--extensible--0.9. There are still potential bugs etc. but it should
> work (an example is in tests/firstplugin.cc, tests/firstplugin.xml, and the 
> application will automatically load whatever is in {prefix}/lib/mlview/plugins).
>             I'll try to write some documentation. I'll have no Internet connection
> next week so I'll improve the thing and make some commits when I come back.
> 
>      Bye,
> 
> Nicols Centa
> _______________________________________________
> Mlview-list mailing list
> Mlview-list gnome org
> http://mail.gnome.org/mailman/listinfo/mlview-list



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]