net.sf.dc.console.components.panels
Class TableInsertPanel

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JPanel
                  extended bynet.sf.dc.console.components.DcPanel
                      extended bynet.sf.dc.console.components.panels.TablePanel
                          extended bynet.sf.dc.console.components.panels.TableInsertPanel
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable
Direct Known Subclasses:
BookCategoryForm.CatagoryInsertPanel, InsertAudioCDPanel, InsertAudioTrackPanel, InsertBookPanel, InsertMoviePanel, InsertMusicFilePanel, InsertPersonPanel, InsertSoftwarePanel, PersonTypeForm.CatagoryInsertPanel, SoftwareCategoryForm.CatagoryInsertPanel

public abstract class TableInsertPanel
extends TablePanel

Base for all insert panels (for objects like Software, Music and Movie) Has an implemenation for supporting a child panel (in case of an Object with children). The functionality is not fully implemented in this class as only (for now) the Audio Track and Audio CD panel have a parent-child relation.

Since:
1.4
Version:
1.6
Author:
Robert Jan van der Waals
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class net.sf.dc.console.components.panels.TablePanel
TablePanel.AddRowAction, TablePanel.CancelAction, TablePanel.ClearButtonAction, TablePanel.CreatePdfReport, TablePanel.OpenItemFormAction, TablePanel.RemoveRowAction, TablePanel.TableActionsPanel, TablePanel.UpdateAllAction
 
Nested classes inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  TableInsertPanel childPanel
           
protected  java.lang.String parentID
           
 
Fields inherited from class net.sf.dc.console.components.panels.TablePanel
panelTableActions, table, tableMouseListener, task
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
TableInsertPanel(DCModule module, java.lang.String title, javax.swing.ImageIcon icon)
          Initializes the panel.
 
Method Summary
 void addObject(DcObject dco)
           
 void addObjects(java.util.Collection objects)
          Adds a list of data crow objects to the table.
 void clearTable()
          Clear this table and the child table
 void clearTable(boolean cache)
           
 void createPdfReport()
          Creates a PDF report.
protected abstract  java.util.Collection getChildren(java.lang.String parentID)
           
abstract  javax.swing.JComponent[] getExtraComponents()
           
 DcObject getObjectForSaving(int row)
          Retrieves a data crow object for the specified row for saving purposes.
 java.lang.String getParentID()
           
 DcPopupMenu getPopupMenu()
           
 void openItemForm()
          Opens the selected item
 void removeRows(java.lang.String[] ids)
          Remove the rows from the table with the given indices
 void save(int[] rows)
          Saves the give rows to the database.
 void saveNewValues()
          Saves all the new values (including children)
 void saveSelectedValues(boolean silent)
          Saves the selected values only
 void setParentID(java.lang.String sID)
          Set the parent ID (if this panel is acting as a child)
 
Methods inherited from class net.sf.dc.console.components.panels.TablePanel
allowActions, applyDefinitions, cancelEdit, cancelTask, denyActions, fillTable, getChildModule, getModule, getObjects, hasChild, isTaskRunning, openItemForm, openUpdateAllDialog, removeSelectedRows, startAmazonUpdate, startIMDBUpdate, updateRow
 
Methods inherited from class net.sf.dc.console.components.DcPanel
getHelpIndex, getIcon, getStatusPanel, getTitle, initProgressBar, setBackground, setHelpIndex, setStatus, updateProgressBar
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, 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, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

parentID

protected java.lang.String parentID

childPanel

protected TableInsertPanel childPanel
Constructor Detail

TableInsertPanel

public TableInsertPanel(DCModule module,
                        java.lang.String title,
                        javax.swing.ImageIcon icon)
Initializes the panel. Should be called by the child by calling super(module). The popup menu and the action panel are automatically created.

Parameters:
module - the module for which this panel is created
title - the title of this panel
icon - the icon of this panel
Method Detail

addObject

public void addObject(DcObject dco)
Overrides:
addObject in class TablePanel

addObjects

public void addObjects(java.util.Collection objects)
Adds a list of data crow objects to the table. Mostly this is used by internet updates (retrieving information from another source). The data added is ready for saving. In case the object has children, these are added to this table as well.

Specified by:
addObjects in class TablePanel

openItemForm

public void openItemForm()
Opens the selected item

Specified by:
openItemForm in class TablePanel

createPdfReport

public void createPdfReport()
Creates a PDF report. All visible fields are reported on. A file browser is opened in which the user can indicate where the pdf file should be stored.

Specified by:
createPdfReport in class TablePanel

setParentID

public void setParentID(java.lang.String sID)
Set the parent ID (if this panel is acting as a child)

Parameters:
sID - parent ID

clearTable

public void clearTable()
Clear this table and the child table

Overrides:
clearTable in class TablePanel

clearTable

public void clearTable(boolean cache)

getObjectForSaving

public DcObject getObjectForSaving(int row)
Retrieves a data crow object for the specified row for saving purposes. Children are added to this object

Parameters:
row - row number

save

public void save(int[] rows)
Saves the give rows to the database. Saving is done threaded and can be cancelled by the user

Parameters:
rows - row indices / to be saved rows
See Also:
SavingThread

saveNewValues

public void saveNewValues()
Saves all the new values (including children)


saveSelectedValues

public void saveSelectedValues(boolean silent)
Saves the selected values only

Parameters:
silent - indicates wether messages should be shown

getPopupMenu

public DcPopupMenu getPopupMenu()
Specified by:
getPopupMenu in class TablePanel

getParentID

public java.lang.String getParentID()

removeRows

public void removeRows(java.lang.String[] ids)
Description copied from class: TablePanel
Remove the rows from the table with the given indices

Overrides:
removeRows in class TablePanel

getChildren

protected abstract java.util.Collection getChildren(java.lang.String parentID)

getExtraComponents

public abstract javax.swing.JComponent[] getExtraComponents()