Explanation of Overlays

I think I remember seeing a forum post about overlays and what they do, but I can’t find it. Could I get an explanation the purpose of overlays in general and what the ones the IDE specifically are for? I feel like I’m not understanding something important.

Overlays are in many ways similar to libraries in other languages.

However, unlike traditional libraries, each overlay adds in extra capabilities by building successively on top of the Core overlay. They are somewhat analogous to layers in a graphic image editing program. Similar to image layers each overlay can add more content and it may also replace content from a previous overlay.

Related coding constructs include overloading which adds additional methods with different parameters and overriding which replaces inherited methods from a superclass with a revised method in a subclass. SkookumScript now adds overlaying of whole libraries to add and replace class hierarchy over the earlier overlays.

Whenever you create SkookumScript classes or members you must specify the overlay location to place the new script files.

As you are looking at or editing script files, the Overlays widget will highlight the overlay location of the currently selected member.

See the online docs for more about overlays including their file format and the Overlay widget.

Please let us know if you have additional questions on overlays!


Excellent description. I do digital art, so the layering in images made sense. Relating it to overloading also makes sense too. Now I have a better idea where to find what I’m looking for. Btw, the new IDE is much less cluttered now that it allows filtering of inherited class members.

1 Like