gui.controls
Class StationsTimetableListView

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JPanel
                  extended bygui.controls.StationsTimetableListView
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable

public class StationsTimetableListView
extends javax.swing.JPanel

A list view used to display a list of stations and text fields for their arrival and departure times.

Author:
Piotrek
See Also:
Serialized Form

Nested Class Summary
 
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  java.util.ArrayList arrivalTextFields
          An ordered list of the arrival text fields.
private  Connection connection
          A connection to be loaded.
private  java.util.ArrayList departureTextFields
          An ordered list of the departure text fields.
private  int meanOfTransportation
          A mean of transportation for the stations.
private static int ROW_HEIGHT
          A height of a single row in the list view.
private  java.util.ArrayList stations
          A list of stations to edit time of arrivals and departures for.
 
Fields inherited from class javax.swing.JPanel
 
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.Container
 
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
(package private) StationsTimetableListView(java.util.ArrayList stations, int meanOfTransportation, Connection connection)
          Constructor.
 
Method Summary
private  void CreateNewTimetable()
          Loads the stations and creates a new timetable for them accordingly to the distances and the mean of transportation.
 java.util.ArrayList GetArrivalTextFields()
          Gets an ordered list of arrival text fields.
 java.util.ArrayList GetDepartureTextFields()
          Gets an ordered list of departure text fields.
private  void LoadConnection()
          Loads the stations and a timetable from the connection.
private  void LoadStations()
          Loads all the stations into a list view.
 void paint(java.awt.Graphics g)
           
 void SetArrivalTime(java.lang.String time, int index)
          Sets the arrival time for the station with the given index.
 void SetDepartureTime(java.lang.String time, int index)
          Sets the departure time for the station with the given index.
 
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, 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, setBackground, 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

connection

private Connection connection
A connection to be loaded. Null if creating a new connections.


meanOfTransportation

private int meanOfTransportation
A mean of transportation for the stations.


stations

private java.util.ArrayList stations
A list of stations to edit time of arrivals and departures for.


arrivalTextFields

protected java.util.ArrayList arrivalTextFields
An ordered list of the arrival text fields.


departureTextFields

private java.util.ArrayList departureTextFields
An ordered list of the departure text fields.


ROW_HEIGHT

private static final int ROW_HEIGHT
A height of a single row in the list view.

See Also:
Constant Field Values
Constructor Detail

StationsTimetableListView

StationsTimetableListView(java.util.ArrayList stations,
                          int meanOfTransportation,
                          Connection connection)
Constructor.

Parameters:
stations - A list of stations to edit time of arrivals and departures for. Ignored if connection is not null.
meanOfTransportation - A mean of transportation. This is required only to count the default times of travel. Ignored if connection is not null.
connection - A connection to be loaded. Set it to null of adding a new connection (A default times will be loaded accordingly to distances and mean of transportation.)
See Also:
MeanOfTransportation.AIRPLANE, MeanOfTransportation.BUS, MeanOfTransportation.TRAIN, MeanOfTransportation.SHIP
Method Detail

LoadStations

private void LoadStations()
Loads all the stations into a list view.


CreateNewTimetable

private void CreateNewTimetable()
Loads the stations and creates a new timetable for them accordingly to the distances and the mean of transportation.


LoadConnection

private void LoadConnection()
Loads the stations and a timetable from the connection. It is assumed the connection member is set before calling this method.


GetArrivalTextFields

public java.util.ArrayList GetArrivalTextFields()
Gets an ordered list of arrival text fields.

Returns:
An ordered list of arrival text fields.

GetDepartureTextFields

public java.util.ArrayList GetDepartureTextFields()
Gets an ordered list of departure text fields.

Returns:
An ordered list of arrival text fields.

SetArrivalTime

public void SetArrivalTime(java.lang.String time,
                           int index)
Sets the arrival time for the station with the given index.

Parameters:
time - A time to be set.
index - An index of a stations to set the time for.

SetDepartureTime

public void SetDepartureTime(java.lang.String time,
                             int index)
Sets the departure time for the station with the given index.

Parameters:
time - A time to be set.
index - An index of a stations to set the time for.

paint

public void paint(java.awt.Graphics g)
See Also:
Component.paint(java.awt.Graphics)