Sven Neumann wrote:
you are not mistaken. GObject interfaces are very similar to Java interfaces (as far as my knowledge of Java goes) and they can have a default implementation. The only drawback is that there is no way for a derived interface to chain up to the parent implementation. In GIMP-1.3 we have solved this problem by making the defaul implementation a public function so that derived interfaces can call it from their implementation. If you are interested, have a look at the gimp/app/config directory. Salut, Sven
If you wanted to chain up, could you do something like this to the the functions to chain to?
GTypeInterface* foo=g_type_interface_peek(instance_class,iface_type); MyIterface* default_interface_impl = g_object_new(foo, . . .); or to get the implementation of a parent instance type: GTypeInterface* foo=g_type_interface_peek_parent(instance_class,iface_type); MyIterface* parent_interface_impl = g_object_new(foo, ...);