However, creating/editing gradients should be fairly easy, but to previewthem there must be support from XaAES. The minimum is to be able to specify the gradient for a single object. Then it's possible to give an approximate preview of the windows and menus.Something like ob_set_gradient( OBJECT *ob, struct xa_gradient *gradient );
That's one possibility. Another one is to do as I suggested a couple of days ago. Set a combination of flags in ob_flags to tell XaAES to treat ob_spec as a pointer to a gradient-structure where the first long of the struct contains the original ob_spec (so perhaps the indirect-flag should be set too). Then it would be possible to define gradient for every type of objects without having to add a system call.
Your suggestion is more elegant, but I don't think application developers should be encouraged to use this feature as it will break the concept of themes/skins.
Jo Even