The world’s Largest Sharp Brain Virtual Experts Marketplace Just a click Away
Levels Tought:
Elementary,Middle School,High School,College,University,PHD
| Teaching Since: | Jul 2017 |
| Last Sign in: | 305 Weeks Ago, 1 Day Ago |
| Questions Answered: | 15833 |
| Tutorials Posted: | 15827 |
MBA,PHD, Juris Doctor
Strayer,Devery,Harvard University
Mar-1995 - Mar-2002
Manager Planning
WalMart
Mar-2001 - Feb-2009
For this project, you will create a program used to design tile patterns for ceramic floors, and other tile set ups. The program must be designed to support a 9 x 9 grid of tiles.
Â
Â
Â
Â
Â
Â
Â
Figure 1 A view of the GUI on launch, sporting the defaults
Â
Â
Â
Â
Â
Figure 2 A view of the file menu and the background color box
Â
Â
Â
Figure 3 An ugly floor tile plan made in the GUI
Â
Requirements
Â
·      The patterns must be savable via Serialization. There are multiple ways to accomplish this.Â
·      The application should use Java MVC for the tiles. That is, a model should hold the data, while a view controller is used for the front end display. I do not require fully MVC here (that is, you do not need to use Observer/Observable. It is suggested to do so for ease of setting up the MVC, though!)
·      The GUI should feature 10 colors for foreground color selection and 8 colors for background color selection
·      The selected foreground and background color should be applied to a tile when clicked
·      The GUI should feature appropriate hotkeys, at least for rest and the File menu items
Â
Â
Â
·      Tiles should allow for five symbols. A blank tile would count as a symbol. For default, I used âOâ
o  Symbols need to be changeable. I used clicking to cycle through the symbol options, but you should feel free to expand the menu on the side with a symbol radio button list
·      Saving and Loading should use JFileChooser. Saving and Loading should use Object Serialization, as specified, for saving and loading files
·      It is suggested you enforce files be saved with a .til extension, using a filter
o  FileFilter f = new FileNameExtensionFilter(âTile Fileâ, âtilâ);
o  fileChooser.setFilter(f);
·      Not featured in this document (as it is a word document) is background music. It is required that your application feature quiet background music, to show off audio capability. A few files will be uploaded to blackboard once the instructor has a chance to prepare them, but you are welcome to use your own.
·      Your application must use a custom look and feel, as briefly discussed in class (it will be discussed further before the end of the semester). I used Luna from JTattoo.
Â
Design Requirements
Â
There are no hard requirements for this project, save for commenting style. You should have a Javadoc style comment, /** */, before each class and method. Write these at a high level, describing what the method should do and what goal it should accomplish, not what each line of code does.
Â
Further, design will be carefully considered in project grading. Avoid overly bloated methods.
Â
Using Observer/Observable for your MVC will confer 5 bonus points.
Â
Grading â til files!
Â
With your submission, please include .til files saved by your application for the following three patterns. These will be used to confer part of your final score! The screenshots were taken in an old version of the project, hence the different GUI look. The colors in your submitted files donât need to match, nor do the symbols, but they should get the same design across.
Â
Â
Â
Â
Â
Â
Â
Â
Â
Â
Â
Â
Â
Â
Â
Â
Â
----------- Â ----------- H-----------ell-----------o S-----------ir/-----------Mad-----------am ----------- Th-----------ank----------- yo-----------u f-----------or -----------you-----------r i-----------nte-----------res-----------t a-----------nd -----------buy-----------ing----------- my----------- po-----------ste-----------d s-----------olu-----------tio-----------n. -----------Ple-----------ase----------- pi-----------ng -----------me -----------on -----------cha-----------t I----------- am----------- on-----------lin-----------e o-----------r i-----------nbo-----------x m-----------e a----------- me-----------ssa-----------ge -----------I w-----------ill----------- be----------- qu-----------ick-----------ly