Class ActionTable<R>
- java.lang.Object
-
- org.apache.wicket.Component
-
- org.apache.wicket.MarkupContainer
-
- org.apache.wicket.markup.html.WebMarkupContainer
-
- org.apache.wicket.markup.html.panel.Panel
-
- com.inductiveautomation.ignition.gateway.web.components.ConfigPanel
-
- com.inductiveautomation.ignition.gateway.web.components.actions.ActionTable<R>
-
- All Implemented Interfaces:
java.io.Serializable,java.lang.Iterable<org.apache.wicket.Component>,org.apache.wicket.event.IEventSink,org.apache.wicket.event.IEventSource,org.apache.wicket.IConverterLocator,org.apache.wicket.markup.html.IHeaderContributor,org.apache.wicket.request.component.IRequestableComponent,org.apache.wicket.util.IHierarchical<org.apache.wicket.Component>,org.apache.wicket.util.io.IClusterable
- Direct Known Subclasses:
UserSourceEditPage.GroupActionTable,UserSourceEditPage.UserActionTable
public abstract class ActionTable<R> extends ConfigPanel
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected classActionTable.AddActionprotected classActionTable.DeleteActionprotected classActionTable.EditActionstatic interfaceActionTable.IField<R>Represents a field that will be turned into a table column in this action table.
-
Field Summary
Fields Modifier and Type Field Description protected IConfigPageconfigPageprotected java.util.List<ActionTable.IField<R>>fields-
Fields inherited from class com.inductiveautomation.ignition.gateway.web.components.ConfigPanel
feedback, returnPanel
-
-
Constructor Summary
Constructors Constructor Description ActionTable(IConfigPage configPage, java.lang.String id, java.lang.String titleKey)ActionTable(IConfigPage configPage, java.lang.String id, java.lang.String titleKey, org.apache.wicket.model.IModel<java.util.List<R>> model)Creates a RecordActionTable using a custom model to list the records
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract voidaddActions(org.apache.wicket.markup.repeater.RepeatingView view)Provides a hook to add record actions, like "Add new.." to the bottom of the panel.protected abstract voidaddInstanceActions(org.apache.wicket.markup.repeater.RepeatingView view, R record)Provides an opportunity to add any actions that deal with specific item instances.protected org.apache.wicket.ComponentcreateFooter(java.lang.String id)Override this to add a footer componentprotected org.apache.wicket.model.IModel<java.util.List<R>>createModel()protected ConfigPanelgetActionParentPanel()Returns the panel that will be used by actions as the parent.protected java.lang.StringgetCalculatedFieldDisplayValue(java.lang.Object value)protected java.util.List<ActionTable.IField<R>>getFields()protected intgetInstanceActionMaxRowCount()Returns the maximum number of instance actions per row.protected abstract java.util.List<R>getItems()Load the items that get listed by this action tableprotected java.lang.StringgetNoRowsKey()Return a bundle key for the message to display when there are no rows to display.protected voidinitComponents(ActionTable.IField<R>... fieldsArr)Subclasses MUST call this to initialize the UI-
Methods inherited from class com.inductiveautomation.ignition.gateway.web.components.ConfigPanel
getHelpResourceKey, getHelpTopicId, getMenuLocation, getMenuPath, getTipLabelKey, getTipLabelModel, getTitleKey, getTitleModel, initTitleArea, isEscapeHtmlInTipLabel, isFeedbackEnabled, isTitleVisible, log, renderHead
-
Methods inherited from class org.apache.wicket.markup.html.WebMarkupContainer
getWebApplication, getWebPage, getWebRequest, getWebResponse, getWebSession
-
Methods inherited from class org.apache.wicket.MarkupContainer
add, addOrReplace, autoAdd, contains, get, get, getAssociatedMarkup, getAssociatedMarkupStream, getMarkup, getMarkupType, internalAdd, internalInitialize, iterator, iterator, onAfterRenderChildren, onComponentTagBody, onRender, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderNext, replace, setDefaultModel, size, swap, toString, toString, visitChildren, visitChildren, visitChildren, visitChildren
-
Methods inherited from class org.apache.wicket.Component
add, addStateChange, afterRender, beforeRender, canCallListenerInterface, checkComponentTag, checkComponentTagAttribute, checkHierarchyChange, clearOriginalDestination, configure, continueToOriginalDestination, debug, detach, detachModel, detachModels, determineVisibility, error, exceptionMessage, fatal, findMarkupStream, findPage, findParent, findParentWithAssociatedMarkup, getAjaxRegionMarkupId, getApplication, getBehaviorById, getBehaviorId, getBehaviors, getBehaviors, getClassRelativePath, getConverter, getDefaultModel, getDefaultModelObject, getDefaultModelObjectAsString, getDefaultModelObjectAsString, getEscapeModelStrings, getFeedbackMessages, getFlag, getId, getInnermostModel, getInnermostModel, getLocale, getLocalizer, getMarkup, getMarkupAttributes, getMarkupId, getMarkupId, getMarkupIdFromMarkup, getMarkupIdImpl, getMarkupSourcingStrategy, getMetaData, getModelComparator, getOutputMarkupId, getOutputMarkupPlaceholderTag, getPage, getPageRelativePath, getParent, getPath, getRenderBodyOnly, getRequest, getRequestCycle, getRequestFlag, getResponse, getSession, getSizeInBytes, getStatelessHint, getString, getString, getString, getStyle, getVariation, hasBeenRendered, hasErrorMessage, hasFeedbackMessage, info, initModel, internalOnModelChanged, internalPrepareForRender, internalRenderComponent, isActionAuthorized, isAuto, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isRenderAllowed, isRendering, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, markRendering, modelChanged, modelChanging, onAfterRender, onBeforeRender, onComponentTag, onConfigure, onDetach, onEvent, onInitialize, onModelChanged, onModelChanging, onReAdd, onRemove, prepareForRender, redirectToInterceptPage, remove, remove, render, renderComponentTag, rendered, renderHead, renderHead, renderPlaceholderTag, replaceComponentTagBody, replaceWith, sameInnermostModel, sameInnermostModel, send, setAuto, setDefaultModelObject, setEnabled, setEscapeModelStrings, setFlag, setIgnoreAttributeModifier, setMarkup, setMarkupId, setMarkupIdImpl, setMetaData, setOutputMarkupId, setOutputMarkupPlaceholderTag, setParent, setRenderBodyOnly, setRequestFlag, setResponsePage, setResponsePage, setResponsePage, setVersioned, setVisibilityAllowed, setVisible, success, urlFor, urlFor, urlFor, urlFor, urlFor, visitParents, visitParents, warn, wrap
-
-
-
-
Field Detail
-
configPage
protected IConfigPage configPage
-
fields
protected java.util.List<ActionTable.IField<R>> fields
-
-
Constructor Detail
-
ActionTable
public ActionTable(IConfigPage configPage, java.lang.String id, java.lang.String titleKey)
-
ActionTable
public ActionTable(IConfigPage configPage, java.lang.String id, java.lang.String titleKey, org.apache.wicket.model.IModel<java.util.List<R>> model)
Creates a RecordActionTable using a custom model to list the records
-
-
Method Detail
-
createModel
protected org.apache.wicket.model.IModel<java.util.List<R>> createModel()
-
getItems
protected abstract java.util.List<R> getItems()
Load the items that get listed by this action table
-
getFields
protected java.util.List<ActionTable.IField<R>> getFields()
-
getActionParentPanel
protected ConfigPanel getActionParentPanel()
Returns the panel that will be used by actions as the parent. By default is "this", but can be overridden for cases where multiple action tables are used inside of another panel.
-
initComponents
protected void initComponents(ActionTable.IField<R>... fieldsArr)
Subclasses MUST call this to initialize the UI
-
getInstanceActionMaxRowCount
protected int getInstanceActionMaxRowCount()
Returns the maximum number of instance actions per row. If there are more actions than this, they a new column will be started. Default is 3
-
getCalculatedFieldDisplayValue
protected java.lang.String getCalculatedFieldDisplayValue(java.lang.Object value)
-
createFooter
protected org.apache.wicket.Component createFooter(java.lang.String id)
Override this to add a footer component
-
addInstanceActions
protected abstract void addInstanceActions(org.apache.wicket.markup.repeater.RepeatingView view, R record)Provides an opportunity to add any actions that deal with specific item instances. For example:WebMarkupContainer test = new AbstractLinkAction(view.newChildId(), configPage, getActionParentPanel()) { @Override public ConfigPanel getPanel() { // Return the panel to go to here } @Override public IModel getLabel() { // the text for the label } @Override protected String getCssClass() { // The css class, e.g. "edit" } }; view.add(test);
-
addActions
protected abstract void addActions(org.apache.wicket.markup.repeater.RepeatingView view)
Provides a hook to add record actions, like "Add new.." to the bottom of the panel. Make sure that the wicket ids of the children are obtained via view.newChildId().
-
getNoRowsKey
protected java.lang.String getNoRowsKey()
Return a bundle key for the message to display when there are no rows to display.
-
-