I am looking for a tutor for module development

Since you've played with Swing, I presume you've gathered that Swing is really a layer cake, where JComponents are nested within other JComponents as needed to yield the desired appearance/behavior. So yes, you can embed anything you find in the Ignition JavaDocs that is any kind of subclass of JComponent. Some notes:

  • Your user-accessible component must implement the VisionComponent interface in order to be added to any Vision container. Extending AbstractVisionComponent pulls that in for you, but you can extend some other Swing object if you implement that interface yourself.

  • Nothing nested within your component will be exposed to users automatically, except that they can call .getComponent() with integers to traverse your inner hierarchy. You should expose getters/setters on the main component that delegate to your inner components intelligently.

  • Ignition won't layout your inner components. You should use MigLayout to place and scale your inner components as the user manipulates the main component's size.

  • You don't have to use inner components for everything--you can paint visual details as you please.

  • There are optional interfaces for supporting custom properties and/or custom methods. Save that for later. (:

2 Likes