public class EntityTablePanel extends FilteredTablePanel<Entity,Property> implements DialogExceptionHandler
____________________________________________________ | searchPanel | |____________________________________________________| | | | | | | | | | entityTable (JTable) | | | | | | | | | |____________________________________________________| | summaryPanel | |____________________________________________________| | southPanel | |____________________________________________________|The search and summary panels can be hidden Note that
initializePanel()
must be called to initialize this panel before displaying it.EntityTableModel
,
Serialized FormModifier and Type | Class and Description |
---|---|
static class |
EntityTablePanel.ReferentialIntegrityErrorHandling
The possible actions to take on a referential integrity error
|
FilteredTablePanel.ColumnConditionPanelProvider<C>
javax.swing.JPanel.AccessibleJPanel
javax.swing.JComponent.AccessibleJComponent
Modifier and Type | Field and Description |
---|---|
static PropertyValue<java.lang.Boolean> |
ALLOW_COLUMN_REORDERING
Specifies whether or not columns can be rearranged in tables
Value type: Boolean Default value: true |
static java.lang.String |
CLEAR |
static java.lang.String |
CLEAR_SELECTION |
static java.lang.String |
CONDITION_PANEL_VISIBLE |
static java.lang.String |
COPY_TABLE_DATA |
static java.lang.String |
DELETE_SELECTED |
static java.lang.String |
EXPORT_JSON |
static java.lang.String |
MOVE_SELECTION_DOWN |
static java.lang.String |
MOVE_SELECTION_UP |
static java.lang.String |
PRINT_TABLE |
static PropertyValue<EntityTablePanel.ReferentialIntegrityErrorHandling> |
REFERENTIAL_INTEGRITY_ERROR_HANDLING
Specifies whether to display the error message or the dependent entities in case of a referential integrity error on delete
Value type: EntityTablePanel.ReferentialIntegrityErrorHandling Default value: EntityTablePanel.ReferentialIntegrityErrorHandling.ERROR |
static java.lang.String |
REFRESH |
static java.lang.String |
SELECT_COLUMNS |
static PropertyValue<java.lang.Integer> |
TABLE_AUTO_RESIZE_MODE
Specifies the default table column resize mode for tables in the application
Value type: Integer (JTable.AUTO_RESIZE_*) Default value: JTable.AUTO_RESIZE_OFF |
static PropertyValue<java.lang.Boolean> |
TABLE_CONDITION_PANEL_VISIBLE
Specifies whether the table condition panels should be visible or not by default
Value type: Boolean Default value: false |
static java.lang.String |
TOGGLE_CONDITION_PANEL |
static java.lang.String |
TOGGLE_SUMMARY_PANEL |
static java.lang.String |
UPDATE_SELECTED |
static java.lang.String |
VIEW_DEPENDENCIES |
FILTER_INDICATOR
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
EntityTablePanel(javax.swing.JTable table,
EntityTableConditionPanel conditionPanel)
Initializes a new EntityTablePanel instance.
|
EntityTablePanel(SwingEntityTableModel tableModel)
Initializes a new EntityTablePanel instance
|
EntityTablePanel(SwingEntityTableModel tableModel,
EntityTableConditionPanel conditionPanel)
Initializes a new EntityTablePanel instance
|
Modifier and Type | Method and Description |
---|---|
void |
addConditionPanelVisibleListener(EventListener listener) |
void |
addPopupControls(ControlSet additionalPopupControls) |
void |
addTableDoubleClickListener(EventListener listener) |
void |
addToolbarControls(ControlSet additionalToolbarControls) |
protected boolean |
confirmDelete()
Called before a delete is performed, if true is returned the delete action is performed otherwise it is canceled
|
protected InputProvider |
createEntityInputProvider(ForeignKeyProperty foreignKeyProperty,
Entity currentValue,
EntityEditModel editModel)
Creates a InputProvider for the given foreign key property
|
static EntityTablePanel |
createEntityTablePanel(java.util.Collection<Entity> entities,
EntityConnectionProvider connectionProvider)
Creates a static entity table panel showing the given entities, note that this table panel will
provide a popup menu for updating and deleting the selected entities unless the underlying entities are read-only.
|
static EntityTablePanel |
createEntityTablePanel(SwingEntityTableModel tableModel)
Creates a entity table panel based on the given table model.
|
static EntityTablePanel |
createStaticEntityTablePanel(java.util.Collection<Entity> entities,
EntityConnectionProvider connectionProvider)
Creates a static read-only entity table panel showing the given entities
|
void |
delete()
Deletes the entities selected in the underlying table model
|
void |
displayException(java.lang.Throwable throwable,
java.awt.Window dialogParent)
Handle the given exception and display it to the user.
|
void |
exportSelected()
Exports the selected records as a text file using the available serializer
|
Control |
getClearControl() |
Control |
getClearSelectionControl() |
EntityTableConditionPanel |
getConditionPanel() |
protected Control |
getConditionPanelControl() |
protected java.lang.String[] |
getConfirmDeleteMessages() |
Control |
getControl(java.lang.String controlCode) |
protected Control |
getCopyCellControl() |
protected ControlSet |
getCopyControlSet() |
protected Control |
getCopyTableWithHeaderControl() |
Control |
getDeleteSelectedControl() |
SwingEntityTableModel |
getEntityTableModel() |
Control |
getExportControl() |
protected InputProvider |
getInputProvider(Property property,
java.util.List<Entity> toUpdate)
Provides value input components for multiple entity update, override to supply
specific InputValueProvider implementations for properties.
|
Control |
getMoveSelectionDownControl() |
Control |
getMoveSelectionUpControl() |
protected ControlSet |
getPopupControls(java.util.List<ControlSet> additionalPopupControlSets)
Constructs a ControlSet containing the controls to include in the table popup menu.
|
protected ControlSet |
getPrintControls() |
Control |
getPrintTableControl() |
Control |
getRefreshControl() |
javax.swing.Action |
getTableDoubleClickAction() |
Control |
getToggleConditionPanelControl()
Initializes the button used to toggle the condition panel state (hidden, visible and advanced)
|
protected ControlSet |
getToolbarControls(java.util.List<ControlSet> additionalToolbarControlSets) |
ControlSet |
getUpdateSelectedControlSet()
Creates a
ControlSet containing controls for updating the value of a single property
for the selected entities. |
Control |
getViewDependenciesControl() |
Control |
getViewImageControl(java.lang.String imagePathPropertyId)
Creates a Control for viewing an image based on the entity selected in this EntityTablePanel.
|
protected void |
handleException(DatabaseException exception)
Handles DatabaseExceptions
By default displays the exception message to the user.
|
void |
handleException(java.lang.Throwable throwable)
Handles the given exception, which usually means simply displaying it to the user
|
protected void |
handleException(ValidationException exception)
Handles ValidationExceptions.
|
protected boolean |
includeUpdateSelectedProperty(Property property)
Override to exclude properties from the update selected menu.
|
EntityTablePanel |
initializePanel()
Initializes the UI, while presenting a wait cursor to the user.
|
protected javax.swing.JPanel |
initializeSouthPanel()
Initializes the south panel, override and return null for no south panel.
|
protected javax.swing.table.TableCellRenderer |
initializeTableCellRenderer(Property property)
Returns the TableCellRenderer used for the given property in this EntityTablePanel
|
protected java.awt.event.MouseListener |
initializeTableMouseListener()
Initialize the MouseListener for the table component handling
double click and right click, or popup click with ALT down.
|
protected javax.swing.JToolBar |
initializeToolbar()
Initializes the south panel toolbar, by default based on
getToolbarControls() |
boolean |
isConditionPanelVisible() |
protected void |
layoutPanel(javax.swing.JPanel southPanel)
This method simply adds the given
southPanel to the BorderLayout.SOUTH location, assuming the
basePanel is at location BorderLayout.CENTER. |
void |
printTable()
Prints the table
|
void |
removeConditionPanelVisibleListener(EventListener listener) |
void |
removeTableDoubleClickListener(EventListener listener) |
void |
selectConditionPanel()
Allows the user to select on of the available search condition fields
|
static java.util.Collection<Entity> |
selectEntities(SwingEntityTableModel lookupModel,
java.awt.Container dialogOwner,
boolean singleSelection,
java.lang.String dialogTitle)
Displays a entity table in a dialog for selecting one or more entities
|
static java.util.Collection<Entity> |
selectEntities(SwingEntityTableModel lookupModel,
java.awt.Container dialogOwner,
boolean singleSelection,
java.lang.String dialogTitle,
java.awt.Dimension preferredSize)
Displays a entity table in a dialog for selecting one or more entities
|
void |
setConditionPanelVisible(boolean visible)
Hides or shows the column condition panel for this EntityTablePanel
|
protected void |
setControl(java.lang.String controlCode,
Control control)
Associates
control with controlCode |
void |
setIncludeConditionPanel(boolean value) |
void |
setIncludePopupMenu(boolean value) |
void |
setIncludeSouthPanel(boolean value) |
void |
setReferentialIntegrityErrorHandling(EntityTablePanel.ReferentialIntegrityErrorHandling referentialIntegrityErrorHandling) |
void |
setTableDoubleClickAction(javax.swing.Action doubleClickAction) |
protected void |
setTablePopupMenu(javax.swing.JTable table,
ControlSet popupControls)
Adds a popup menu to
table , null or an empty ControlSet mean no popup menu |
static void |
showDependenciesDialog(java.util.Collection<Entity> entities,
EntityConnectionProvider connectionProvider,
javax.swing.JComponent dialogParent)
Displays a dialog with the entities depending on the given entities.
|
void |
toggleConditionPanel()
Toggles the condition panel through the states hidden, visible and in case it is a EntityTableConditionPanel, advanced
|
java.lang.String |
toString() |
void |
updateSelectedEntities(Property propertyToUpdate)
Retrieves a new property value via input dialog and performs an update on the selected entities
|
protected void |
viewImage(java.lang.String imagePath)
Displays the given image
|
void |
viewSelectionDependencies()
Shows a dialog containing lists of entities depending on the selected entities via foreign key
|
addSummaryPanelVisibleListener, getBasePanel, getJTable, getSearchField, getSelectColumnsControl, getTableModel, getTableScrollPane, getToggleSummaryPanelControl, isCellVisible, isScrollToSelectedItem, isSortingEnabled, isSummaryPanelVisible, removeSummaryPanelVisibleListener, scrollToColumn, scrollToCoordinate, selectTableColumns, setFilterPanelsVisible, setScrollToSelectedItem, setSortingEnabled, setSummaryPanelVisible
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, transferFocus, transferFocusBackward, transferFocusUpCycle
public static final PropertyValue<java.lang.Boolean> ALLOW_COLUMN_REORDERING
public static final PropertyValue<java.lang.Boolean> TABLE_CONDITION_PANEL_VISIBLE
public static final PropertyValue<java.lang.Integer> TABLE_AUTO_RESIZE_MODE
public static final PropertyValue<EntityTablePanel.ReferentialIntegrityErrorHandling> REFERENTIAL_INTEGRITY_ERROR_HANDLING
EntityTablePanel.ReferentialIntegrityErrorHandling
EntityTablePanel.ReferentialIntegrityErrorHandling.ERROR
public static final java.lang.String PRINT_TABLE
public static final java.lang.String DELETE_SELECTED
public static final java.lang.String VIEW_DEPENDENCIES
public static final java.lang.String UPDATE_SELECTED
public static final java.lang.String SELECT_COLUMNS
public static final java.lang.String EXPORT_JSON
public static final java.lang.String CLEAR
public static final java.lang.String REFRESH
public static final java.lang.String TOGGLE_SUMMARY_PANEL
public static final java.lang.String TOGGLE_CONDITION_PANEL
public static final java.lang.String CONDITION_PANEL_VISIBLE
public static final java.lang.String CLEAR_SELECTION
public static final java.lang.String MOVE_SELECTION_UP
public static final java.lang.String MOVE_SELECTION_DOWN
public static final java.lang.String COPY_TABLE_DATA
public EntityTablePanel(SwingEntityTableModel tableModel)
tableModel
- the EntityTableModel instancepublic EntityTablePanel(SwingEntityTableModel tableModel, EntityTableConditionPanel conditionPanel)
tableModel
- the EntityTableModel instanceconditionPanel
- the condition panelpublic EntityTablePanel(javax.swing.JTable table, EntityTableConditionPanel conditionPanel)
SwingEntityTableModel
.
SwingEntityTableModel tableModel = ...; JTable table = new JTable(tableModel, tableModel.getColumnModel(), (ListSelectionModel) tableModel.getSelectionModel());
table
- the JTable to useconditionPanel
- the condition panelAbstractFilteredTableModel.getColumnModel()
,
AbstractFilteredTableModel.getSelectionModel()
public final void setTableDoubleClickAction(javax.swing.Action doubleClickAction)
doubleClickAction
- the action to perform when a double click is performed on the table, null for no double click actionpublic final javax.swing.Action getTableDoubleClickAction()
public final void addPopupControls(ControlSet additionalPopupControls)
additionalPopupControls
- a set of controls to add to the table popup menujava.lang.IllegalStateException
- in case the panel has already been initializedinitializePanel()
public final void addToolbarControls(ControlSet additionalToolbarControls)
additionalToolbarControls
- a set of controls to add to the table toolbar menujava.lang.IllegalStateException
- in case the panel has already been initializedinitializePanel()
public final void setIncludeSouthPanel(boolean value)
value
- true if the south panel should be includedjava.lang.IllegalStateException
- in case the panel has already been initializedinitializeSouthPanel()
,
initializePanel()
public final void setIncludeConditionPanel(boolean value)
value
- true if the condition panel should be includedjava.lang.IllegalStateException
- in case the panel has already been initializedinitializePanel()
public final void setIncludePopupMenu(boolean value)
value
- true if a popup menu should be includedjava.lang.IllegalStateException
- in case the panel has already been initializedinitializePanel()
public final SwingEntityTableModel getEntityTableModel()
public final void setConditionPanelVisible(boolean visible)
visible
- if true the condition panel is shown, if false it is hiddenpublic final boolean isConditionPanelVisible()
public final EntityTableConditionPanel getConditionPanel()
public final void toggleConditionPanel()
public final void selectConditionPanel()
public final void setReferentialIntegrityErrorHandling(EntityTablePanel.ReferentialIntegrityErrorHandling referentialIntegrityErrorHandling)
referentialIntegrityErrorHandling
- the action to take on a referential integrity error on deletepublic final java.lang.String toString()
toString
in class java.awt.Component
public final Control getControl(java.lang.String controlCode)
controlCode
- the control codecontrolCode
java.lang.IllegalArgumentException
- in case no control is associated with the given control codepublic ControlSet getUpdateSelectedControlSet()
ControlSet
containing controls for updating the value of a single property
for the selected entities. These controls are enabled as long as the selection is not empty
and EntityEditModel.getAllowUpdateObserver()
is enabled.java.lang.IllegalStateException
- in case the underlying edit model is read only or updating is not allowedinitializePanel()
,
includeUpdateSelectedProperty(Property)
,
EntityEditModel.getAllowUpdateObserver()
public final Control getViewDependenciesControl()
public final Control getDeleteSelectedControl()
java.lang.IllegalStateException
- in case the underlying model is read only or if deleting is not allowedpublic final Control getExportControl()
public final Control getPrintTableControl()
public final Control getRefreshControl()
public final Control getClearControl()
public final void updateSelectedEntities(Property propertyToUpdate)
propertyToUpdate
- the property to updategetInputProvider(Property, java.util.List)
public final void viewSelectionDependencies()
public final void delete()
confirmDelete()
public final void exportSelected()
public final void printTable() throws java.awt.print.PrinterException
java.awt.print.PrinterException
- in case of a print exceptionJTable.print()
public final void handleException(java.lang.Throwable throwable)
throwable
- the exception to handlepublic final void displayException(java.lang.Throwable throwable, java.awt.Window dialogParent)
displayException
in interface DialogExceptionHandler
throwable
- the exceptiondialogParent
- the Window to use as parent to the exception dialogpublic final Control getToggleConditionPanelControl()
public final Control getClearSelectionControl()
public final Control getMoveSelectionDownControl()
public final Control getMoveSelectionUpControl()
public final Control getViewImageControl(java.lang.String imagePathPropertyId)
viewImage(java.lang.String)
must be implemented.imagePathPropertyId
- the ID of the property specifying the image pathpublic final void addConditionPanelVisibleListener(EventListener listener)
listener
- a listener notified each time the condition panel visibility changespublic final void removeConditionPanelVisibleListener(EventListener listener)
listener
- the listener to removepublic final void addTableDoubleClickListener(EventListener listener)
listener
- a listener notified each time the table is double clickedpublic final void removeTableDoubleClickListener(EventListener listener)
listener
- the listener to removepublic static void showDependenciesDialog(java.util.Collection<Entity> entities, EntityConnectionProvider connectionProvider, javax.swing.JComponent dialogParent)
entities
- the entities for which to display dependenciesconnectionProvider
- the connection providerdialogParent
- the dialog parentpublic static EntityTablePanel createStaticEntityTablePanel(java.util.Collection<Entity> entities, EntityConnectionProvider connectionProvider)
entities
- the entities to show in the panelconnectionProvider
- the EntityConnectionProvider, in case the returned panel should require onepublic static EntityTablePanel createEntityTablePanel(java.util.Collection<Entity> entities, EntityConnectionProvider connectionProvider)
entities
- the entities to show in the panelconnectionProvider
- the EntityConnectionProvider, in case the returned panel should require onepublic static EntityTablePanel createEntityTablePanel(SwingEntityTableModel tableModel)
tableModel
- the table modelpublic static java.util.Collection<Entity> selectEntities(SwingEntityTableModel lookupModel, java.awt.Container dialogOwner, boolean singleSelection, java.lang.String dialogTitle)
lookupModel
- the table model on which to base the table paneldialogOwner
- the dialog ownersingleSelection
- if true then only a single item can be selecteddialogTitle
- the dialog titleCancelException
- in case the user cancels the operationpublic static java.util.Collection<Entity> selectEntities(SwingEntityTableModel lookupModel, java.awt.Container dialogOwner, boolean singleSelection, java.lang.String dialogTitle, java.awt.Dimension preferredSize)
lookupModel
- the table model on which to base the table paneldialogOwner
- the dialog ownersingleSelection
- if true then only a single item can be selecteddialogTitle
- the dialog titlepreferredSize
- the preferred size of the dialogCancelException
- in case the user cancels the operationpublic final EntityTablePanel initializePanel()
protected javax.swing.JPanel initializeSouthPanel()
protected final void setTablePopupMenu(javax.swing.JTable table, ControlSet popupControls)
table
, null or an empty ControlSet mean no popup menutable
- the tablepopupControls
- a ControlSet specifying the controls in the popup menuprotected final void setControl(java.lang.String controlCode, Control control)
control
with controlCode
controlCode
- the control codecontrol
- the control to associate with controlCode
protected ControlSet getToolbarControls(java.util.List<ControlSet> additionalToolbarControlSets)
protected ControlSet getPopupControls(java.util.List<ControlSet> additionalPopupControlSets)
additionalPopupControlSets
- any additional controls to include in the popup menuprotected ControlSet getPrintControls()
protected final Control getConditionPanelControl()
protected final ControlSet getCopyControlSet()
protected final Control getCopyCellControl()
protected final Control getCopyTableWithHeaderControl()
protected boolean includeUpdateSelectedProperty(Property property)
property
- the propertygetUpdateSelectedControlSet()
protected void handleException(ValidationException exception)
exception
- the exception to handleprotected void handleException(DatabaseException exception)
exception
- the exception to handleprotected final boolean confirmDelete()
protected java.lang.String[] getConfirmDeleteMessages()
protected InputProvider getInputProvider(Property property, java.util.List<Entity> toUpdate)
property
- the property for which to get the InputProvidertoUpdate
- the entities that are about to be updatedproperty
updateSelectedEntities(Property)
protected final InputProvider createEntityInputProvider(ForeignKeyProperty foreignKeyProperty, Entity currentValue, EntityEditModel editModel)
foreignKeyProperty
- the propertycurrentValue
- the current value to initialize the InputProvider witheditModel
- the edit model involved in the updatingprotected javax.swing.table.TableCellRenderer initializeTableCellRenderer(Property property)
property
- the propertyprotected void layoutPanel(javax.swing.JPanel southPanel)
southPanel
to the BorderLayout.SOUTH
location, assuming the
basePanel
is at location BorderLayout.CENTER.
By overriding this method you can override the default layout.southPanel
- the panel to add at the BorderLayout.SOUTH position, if anyFilteredTablePanel.getBasePanel()
protected void viewImage(java.lang.String imagePath) throws java.io.IOException
imagePath
- the path to the imagejava.io.IOException
- in case the image is not foundprotected final java.awt.event.MouseListener initializeTableMouseListener()
getTableDoubleClickAction()
with the JTable as the ActionEvent source while right click with ALT down
invokes EntityUiUtil.showEntityMenu(Entity, JComponent, Point, EntityConnectionProvider)
getTableDoubleClickAction()
protected javax.swing.JToolBar initializeToolbar()
getToolbarControls()