In the last video we looked at the Custom Object Editor that we created using RTTI and FireMonkey Styles. In this video we are going to look at taking this form, and moving it to another project. We will touch on Interfaces and using Interfaces to define a contract that, when we want to use it, we implement on whatever class wishes to support the interface; We also touch on Object Attributes and how they are used by they Custom Object Editor to define another type of contract that allows the editor to learn about an object at run time and change its behaviour accordingly.