Changes in Request API
Gary Kramlich
grim at reaperworld.com
Thu Nov 15 20:16:03 EST 2007
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Sadrul H Chowdhury wrote:
> With the new 'hint' stuff, I believe we are going to need a major
> version bump, since we change the signature of functions in
> PurpleRequestUiOps. I think we should undo the changes before the next
> release, or do some magic using the paddings to accommodate the
> change, instead of bumping the major right now, especially since there
> are a number of defects/tasks targeted to happen for 3.0.0.
>
> Also, with the addition of 'hint', and the (account, who,
> conversation) tuple added a while back, we now require the use of 4
> extra parameters that the UI may not care about (eg. Finch). At the
> same time, we may find more stuff useful for other UIs later. So
> instead of creating new _with_stuff functions with new parameters (I
> don't know about others, but I don't like using functions with
> uncountable number of parameters), perhaps we should consider some
> common approach like:
>
>
> struct {
> PurpleAccount *account;
> const char *who;
> PurpleBuddy *buddy;
> PurpleConversation *conv;
> } PurpleLotsOfData;
>
> struct {
> PurpleLotsOfData data;
> const char *hint;
> } PurpleLotsOfDataRequest;
>
> purple_request_fields_with_lots_of_data(...)
>
>
> We can also have some util functions on PurpleLotsOfData, for example:
> "purple_lots_of_data_get_buddy" can return the 'buddy' if not NULL,
> otherwise find the buddy using the other data available (account, who,
> conv), etc. We can also consider including 'user_data' in
> PurpleLotsOfData, in which case we will need some easy way of creating
> and disposing PurpleLotsOfData. We may also want to use some better
> term, like PurpleContext or something.
>
> I don't have any complete plan of the whole thing yet. It'd be good to
> have some discussions/ideas about this.
>
> Sadrul
Sounds like we need gobject_[gs]et_data or just need a hashtable...
- --
Gary Kramlich <grim at reaperworld.com>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFHPO9Tdf4lmqisgDIRArEcAJwK4HlJ10xD2NjKI9px6ET6Dkh5lgCghkVQ
kpGiHnfwW3XBmGput69pKWI=
=IHrO
-----END PGP SIGNATURE-----
More information about the Devel
mailing list