|
Discussion of Programming Assignment 3
|
|
Prof. David Bernstein
|
| Computer Science Department |
| bernstdh@jmu.edu |
Editable objects
and EditableFactory objects, allowing us to
work with any number of different kinds of "documents"
AbstractLocalizedAction included in the design?
AbstractAction.
actionPerformed(), each
specialization needs to do that.
AbstractDocumentAction included in the design?
AbstractLocalizedAction (specifically, setting
the DocumentManager).
AbstractAction?
AbstractLocalizedAction.
AbstractOpen included in the design?
AbstractDocumentAction. Specifically, it creates and
controls the BackgroundTaskDialog and it is a
PropertyChangeListener.
createReader() (since the
AbstractEditableReadingWorker varies with the
source.
OpenString)?
createReader() contains one line
of code.
AbstractEditableReadingWorker included in the design?
SwingWorker that are needed by
every class that needs to read an Editable.
Editable (which will be
implement in the concrete specializations).
readInCallersThread()
included when the children are required to
implement doInBackground()?
doInBackground() implemented in this class?
TimeoutTask included in the design?
java.util.Timer class needs to be passed
a TimerTask to execute (and TimeoutTask
extends TimerTask.
TimeoutTask a nested class?
BackgroundTaskDialog.
TimeoutTask and needs access to
its SwingWorker (so that it can cancel it)
FileTypeFilter class
extend javax.swing.filechooser.FileFilter and
java.io.FileFilter?
Quit actions?
Open actions?
BigPixel? In other words,
what does an application need to do?
DocumentManager,
and associate the editor and DocumentManager.