Discussion of Programming Assignment 4
|
Prof. David Bernstein
|
Computer Science Department |
bernstdh@jmu.edu |
BigPixelEditor
would be an
ActionListener
for all of the JMenuItem
objects.
ActionListener
for all of the JMenuItem
objects.
Action
objects)?
BigPixelEditor
)Action
objects?
Action
object?
ActionPerformed
)
is in each of the Action
objects that set the color, brush size, and grid visibility?
updateEditor()
Action
calls a different
method in the operand
BigPixelAction<T>
interface with an updateEditor(T newValue)
methodBigPixelAction
interface add anything
to the design?
AbstractBigPixelAction
that includes
an implementation of updateEditor()
?
updateEditor()
method is passed
parameters of different type and invokes different methods in the
operand
Map
objects to hold attributes and refer to them with a key)?
BigPixelAction.updateEditor()
won't compile because T
(the type of
newValue
) isn't bound
so editor.setAttribute(attribute, newValue)
doesn't match any methods
in BigPixelEditor
brushSize
is greater than 0
or that the
currentColor
isn't null
)
Action
objects that
control the brush size, current color, and grid visibility have?
BigPixelEditor
named editor
)
AbstractBixPixelAction
to the design
just for this?
BigPixelElement
currently
centralized or decentralized?
BigPixelEditor
(which realizes the MouseListener
interface?
BigPixelElement
BigPixelElement
BigPixelElement
BigPixelElement
be
centralized or decentralized?
BigPixelEditor
implement the
Printable
interface?
Printable
would include identical code
BigPixelEditor
(and any other such classes) will need to specialize a
JComponent
of some unknown and varying kind
DelegatingPrintable
class)
BigPixelDocument
?
BigPixelEditor
that renders
a BigPixelDocument
in a way that is appropriate for
printing on a single page (after scaling and translation)
JComponent
that renders the document
as it would be rendered when printed
JComponent
that
renders a "preview"