Class PrometheusDataItemPanel<T extends PrometheusTableItem & Comparable<? super T>,G extends Enum<G>>

java.lang.Object
io.github.tonywasher.joceanus.prometheus.ui.panel.PrometheusDataItemPanel<T,G>
Type Parameters:
T - the item type
G - the goto id type
All Implemented Interfaces:
OceanusEventRegistrar.OceanusEventProvider<PrometheusDataEvent>, PrometheusItemEditParent, TethysUIComponent

public abstract class PrometheusDataItemPanel<T extends PrometheusTableItem & Comparable<? super T>,G extends Enum<G>> extends Object implements OceanusEventRegistrar.OceanusEventProvider<PrometheusDataEvent>, TethysUIComponent, PrometheusItemEditParent
Class to enable display/editing of and individual dataItem.
  • Field Details

    • TAB_DETAILS

      protected static final String TAB_DETAILS
      Details Tab Title.
    • TAB_ACCOUNT

      protected static final String TAB_ACCOUNT
      Account Tab Title.
    • TAB_WEB

      protected static final String TAB_WEB
      Web Tab Title.
    • TAB_NOTES

      protected static final String TAB_NOTES
      Notes Tab Title.
    • VERSION_READONLY

      protected static final int VERSION_READONLY
      ReadOnly EditVersion.
      See Also:
  • Constructor Details

    • PrometheusDataItemPanel

      protected PrometheusDataItemPanel(TethysUIFactory<?> pFactory, PrometheusEditSet pEditSet, MetisErrorPanel pError)
      Constructor.
      Parameters:
      pFactory - the GUI factory
      pEditSet - the edit set
      pError - the error panel
  • Method Details

    • getFactory

      protected TethysUIFactory<?> getFactory()
      Obtain the factory.
      Returns:
      the factory
    • getEventRegistrar

      public OceanusEventRegistrar<PrometheusDataEvent> getEventRegistrar()
      Description copied from interface: OceanusEventRegistrar.OceanusEventProvider
      Obtain registration object for listeners.
      Specified by:
      getEventRegistrar in interface OceanusEventRegistrar.OceanusEventProvider<T extends PrometheusTableItem & Comparable<? super T>>
      Returns:
      the registrar
    • getUnderlying

      public TethysUIComponent getUnderlying()
      Description copied from interface: TethysUIComponent
      Obtain the underlying component (if any).
      Specified by:
      getUnderlying in interface TethysUIComponent
      Returns:
      the underlying component
    • setEnabled

      public void setEnabled(boolean pEnabled)
      Description copied from interface: TethysUIComponent
      Set Enabled status.
      Specified by:
      setEnabled in interface TethysUIComponent
      Parameters:
      pEnabled - true/false
    • getFormatter

      protected OceanusDataFormatter getFormatter()
      Obtain the formatter.
      Returns:
      the formatter
    • getFieldSet

      protected PrometheusFieldSet<T> getFieldSet()
      Obtain the field Set.
      Returns:
      the FieldSet
    • getEditSet

      protected PrometheusEditSet getEditSet()
      Obtain the Update Set.
      Returns:
      the UpdateSet
    • getItem

      protected T getItem()
      Obtain the item.
      Returns:
      the item
    • getSelectedItem

      public T getSelectedItem()
      Obtain the selected item.
      Returns:
      the selected item
    • getEditVersion

      protected int getEditVersion()
      Obtain the edit version.
      Returns:
      the edit version
    • isItemDeleted

      public boolean isItemDeleted()
      Is the active item deleted.
      Returns:
      true/false
    • isNew

      public boolean isNew()
      Description copied from interface: PrometheusItemEditParent
      Is the parent new.
      Specified by:
      isNew in interface PrometheusItemEditParent
      Returns:
      true/false
    • getBaseValues

      protected MetisFieldVersionValues getBaseValues()
      Obtain the base Values.
      Returns:
      the values
    • setEditable

      public void setEditable(boolean isEditable)
      Set editable item.
      Parameters:
      isEditable - true/false
    • updateActions

      protected void updateActions()
      update the actions.
    • setItem

      public void setItem(T pItem)
      Set readOnly item.
      Parameters:
      pItem - the item
    • setNewItem

      public void setNewItem(T pItem)
      Set new item.
      Parameters:
      pItem - the item
    • isEditable

      public boolean isEditable()
      Description copied from interface: PrometheusItemEditParent
      Is the item editable?
      Specified by:
      isEditable in interface PrometheusItemEditParent
      Returns:
      true/false
    • isDeletable

      public boolean isDeletable()
      Description copied from interface: PrometheusItemEditParent
      Is the item deletable?
      Specified by:
      isDeletable in interface PrometheusItemEditParent
      Returns:
      true/false
    • refreshData

      public abstract void refreshData()
      Refresh data.
    • adjustFields

      protected abstract void adjustFields(boolean isEditable)
      Adjust Editable Fields.
      Parameters:
      isEditable - is the item editable?
    • updateField

      protected abstract void updateField(PrometheusFieldSetEvent pUpdate) throws OceanusException
      Update the field.
      Parameters:
      pUpdate - the update
      Throws:
      OceanusException - on error
    • getDataList

      public <L extends PrometheusDataList<X>, X extends PrometheusDataItem> L getDataList(MetisListKey pDataType, Class<L> pClass)
      Obtain the list for a class in base updateSet.
      Type Parameters:
      L - the list type
      X - the object type
      Parameters:
      pDataType - the data type
      pClass - the list class
      Returns:
      the list
    • isEditing

      public boolean isEditing()
      Are we editing?
      Returns:
      true/false
    • hasUpdates

      public boolean hasUpdates()
      Description copied from interface: PrometheusItemEditParent
      Does the parent have updates.
      Specified by:
      hasUpdates in interface PrometheusItemEditParent
      Returns:
      true/false
    • hasErrors

      public boolean hasErrors()
      Description copied from interface: PrometheusItemEditParent
      Does the parent have errors.
      Specified by:
      hasErrors in interface PrometheusItemEditParent
      Returns:
      true/false
    • refreshAfterUpdate

      protected void refreshAfterUpdate()
      Refresh the item after an updateSet reWind.
    • buildGoToMenu

      protected abstract void buildGoToMenu(TethysUIScrollMenu<TethysUIGenericWrapper> pMenu)
      Build goTo menu.
      Parameters:
      pMenu - the menu to build
    • createGoToEvent

      protected PrometheusGoToEvent<G> createGoToEvent(G pGoToId, Object pDetails)
      Create a GoTo event.
      Parameters:
      pGoToId - the Id of the event
      pDetails - the details of the event
      Returns:
      the action event
    • fireStateChanged

      protected void fireStateChanged()
      fire a state changed event.