CS552. User Interface Design
Assignment 2. Application of Color, Font, and Menu Guidelines
|Size of team:
||"Customized" copy of
template GUI code, in a file called
|When it's due:
||Midnight on Friday, April 17
Note that the Java applet requires netscape4, which is
/usr/local/bin/netscape4 on flop.
For this assignment, you will make (minimal) changes to a template
that implements a basic Java applet that
serves as a "programmer's assistant" tool. You are not expected to
know Java - in fact, you are only permitted to alter particular lines
in the code (which are clearly identified by comments).
Points will be deducted if you modify any other
portions without obtaining prior permission by email.
You are expected to apply the guidelines on
color use and
menus that are part of the
course materials, as well as those derived for
Assignment 1. Your changes will be of two kinds:
Note that your program will not actually "do" anything. If you choose
to include checkboxes or radio buttons as part of a menu, however,
pay attention to default values. For example, if a choice is required
between mutually exclusive options (a readio button grouping), one
should be "pre-selected" as the default.
- Color and font selections: Apply what you have learned
about colors and fonts to make the tool's interface both
attractive and highly legible.
- Menu and control button organization: Assume that the
applet will provide the specified
list of basic functions.
Based on your general understanding of the tasks associated
with programming (and the relative frequency with which
they are needed):
- decide which functions should be accessible as command buttons,
and which as menu items
- for the command buttons, choose appropriate strings and
- organize the menu functions into a collection of menus,
then name and position each menu (including a keyboard
- for items within each menu, choose appropriate text strings,
group or order them in an appropriate fashion,
augment any strings for which "intent" should be
indicated by adding an appropriate symbol (e.g.,
">" for a cascaded menu),
and provide keyboard shortcuts where appropriate.
Do not include any icons.
Be sure to check the spelling and grammar of your text strings. You
will be evaluated on the basis of aesthetics and professionalism.
Trying out RGB values.
As discussed in class, Java provides only very limited support for
"named" colors; you will need to furnish RGB triplets. The following
tools might be helpful to you in identifying what colors you want to
Click asst2.tar to download the assignment tarfile.
The tarfile contains all of the assignment files.
Note: Be running your browser on an engr machine
so that the tarfile is downloaded to that file system.
From a terminal window, untar the file, using
tar -xvf asst2.tar.
The files will be untarred into the same directory.
Change only file Util.java.
Compile the code by typing
(The resulting class files produced by the java compiler will be
stored in the subdirectory
There are two ways to test the changes you've made to the applet:
- From the directory where you made your changes,invoke
a script that uses Sun's appletviewer application. Ignore the
warnings about applet security,etc. -- you did nothing
wrong! This is the fastest, most convenient way to view the
- Alternatively you can use your browser to load the file
pressing "reload" in the browser does not
reload the new version of your applet (setting your
browser's cache and memory size to 0 has no effect). To view the new
version of the applet, you'll have to exit the browser completely, bring the
browser back up and load the file.
Collaborating with Others...
You may discuss the meaning of the tool's functions with any of your
classmates, but your strategy for subdividing and implenting the
functionality must be discussed only with your teammate.
To Hand In...
Use the hand-in form to submit the
location of a directory containing just your revised version of file
Util.java. It will be linked with my own copy
of the appropriate class files to grade your solution.
Note that the directory you specify on the form should contain only
one file, and that both the file and the directory must be world-readable.