Class QueryConfigPanel

java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
com.inductiveautomation.reporting.designer.api.QueryConfigPanel
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible
Direct Known Subclasses:
AlarmJournalQueryConfigPanel, NamedQueryConfigPanel, PrepStmtQueryConfigPanel, SimpleSqlQueryConfigPanel, TagCalculationQueryConfigPanel, TagHistorianQueryConfigPanel

public abstract class QueryConfigPanel extends JPanel
This class must be extended by authors of new query types. It's created by the query's QueryConfigFactory
Since:
7.8.0
See Also:
  • Constructor Details

    • QueryConfigPanel

      protected QueryConfigPanel(LayoutManager layoutManager)
  • Method Details

    • createSidebarPanel

      public com.google.common.base.Optional<JPanel> createSidebarPanel()
      Allows the query panel to inject its own property panel that will be put in the right hand side of the editor underneath the data key and above the nested query tree.
    • getConfigObject

      public abstract QueryConfig getConfigObject()

      Implement this to return a new query config that will be saved in the report resource. The class you use for this must be:

      • In Common Scope (because it's used in designer and gateway
      • Traditionally java.io.Serializable
      • Ignition's bean-style XML serializable (public, empty ctor and getter/setters

      Make sure to make new copies of your query config object each time; don't mutate and re-use an existing instance of your config object.

    • dispose

      public void dispose()
      Ensures that the panel is properly disposed if the designer tears down the owning workspace in order to open a new project. Child classes should override this to unregister, unsubscribe, or dispose of any references to resources this panel is holding on to.