Not sure if this will be of much help, but as far as icons go I used this to generate my custom icons
~~~~~~~~~~~~~~~~~~~~~~~~~~~
| dir files theme |
dir := '/home/peter/prog/dynacase/icons' asFileReference.
files := (dir allFiles select: [ :each | each extension = 'png' ]) collect: [ :each | each base ].
theme := ThemeIcons current.
files do: [ :each | theme createIconMethodsFromFile: each directory: dir ]
~~~~~~~~~~~~~~~~~~~~~~~~~~~
This generates xyIconContents and xyIcon in current ThemeIcons. So you could probably check the implementation of createIconMethodsFromFile:directory: and bend it to your needs.
Peter