Hi Carlos, Carlos Nieves Ónega writes: > [...] > Attached is the patch, if you want to take a look. >
A few comments on your patch that looks good to me overall: - are g_get_object/toplevel_from_object_smob() really required? Firstly, the smob structure is public. Secondly since they are often used one after the other it duplicates the assertion. And finally if an error occur, the error message will display "get_object/toplevel_from_object_smob" as the source and these functions are unknown from user. I would then suggest putting the assertion in g_add_attrib() and let it get fields of the structure without these accessors. - please remove Ales old comment in g_print_object_smob() as evaluation is indeed stopped after first failure. - in system-gschemrc, I would recommend the definition of a variable for the details of the attributes and modify add-default-pin-attributes accordingly: (define default-pin-attributes '(("pintype" "unknown" #f ()) ("pinlabel" "unknown" #t (value)) ...)) (define (add-default-pin-attributes object) (for-each (lambda (a) (apply add-attribute-to-object object a)) default-pin-attributes)) The user can change default-pin-attributes without rewritting its own hook function. - your patch is adding a useless blank line in hooks_and_scheme.txt between 'Inparameter' and 'Outparameter' of set-attribute-value!. Regards, Patrick