Re: [gtk-list] Re: gtk slowness?



On Mon, 9 Feb 1998, Jay Painter wrote:

> > hm, who is in charge for such a proposal?
> > i'm curious (extremely), in what way do you plan to change the signal
> > emission system?
> > hm, there are so mmuch things involved with signal handling/object methods
> > that i'll better shut up now and wait until i see what you have in mind.
> > but please extend on this jay!
> 
> It's not my proposal/idea, Quartic and Miguel are working on it.  The
> basic idea is to eliminate the widget-defigned signal marshalling by
> having fixed callback arguments.  Somthing like:
> 
> generic_gtk_callback (GtkWidget * widget, 
>                       gint signal_type,
>                       gpointer * data,
>                       gpointer * pointer_to_args_struct)
> 
> this makes creating signals easier, and allows the connecting of multiple
> signals to the same signal handler.  The signal handler can decide how to
> handle the signal based on it's signal_type.

hm, marius already added something similar to this.

typedef void (*GtkCallbackMarshal) (GtkObject *object,
                                    gpointer data,
                                    int n_args,
                                    GtkArg *args);
typedef void (*GtkDestroyNotify) (gpointer data);
gint   gtk_signal_connect_interp          (GtkObject           *object,
                                           gchar               *name,
                                           GtkCallbackMarshal   func,
                                           gpointer             data,
                                           GtkDestroyNotify     destroy_func,
                                           gint                 after);

the *_interp calls get all the arguments passed and can handle them
appropriately.
it doesn't have the signals identified by the widget-id pair but by widget-name
pairs, but other than that i don't see a difference or even advantage over the
existing implementation.

> 
> Regards,
> Jay
> 

---
ciaoTJ



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