We think it’s great that you’re experimenting with building your own container component. This is arguably one of the most challenging things you can do in an Ignition module. We do not have any publicly available examples at the moment, nor do we have any current plans to release any due to the complexity and time requirements of the task. However, we will gladly try and provide some useful information that may help.
Paul is correct, the main thing you need to do is to register your container component with the InteractionRegistry. The container is merely a component, but a component with a special design implementation as well as rules of interaction and layout.
Typically you will have:
- A Designer version of your container component (DesignerCustomContainer)
- A design delegate (CustomContainerDesignDelegate extends ContainerDesignDelegate) which implements designer type behaviors and interactions. You will want to set the
isContainer member as true.
- Your delegate registered with the InteractionRegistry (InteractionRegistry.registerInteractionDelegates)
isContainer = true in ComponentMeta set to true to aid in some Designer selection behavior to say the least.
Hopefully that helps.