Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Download: https://solutionzip.com/downloads/project7/
- ## Background Information:
- ### Project overview:
- Create an interactive graphical application using input files and mouse event handling.
- Your application shall read the given input file and create a visual application that provides output to a user based on mouse clicks.
- See the example GIF below for reference while review the [Project Requirements](#project-requirements) below.
- ![Sample run of applciation](demo.gif)
- ### Project Requirements:
- Your application must function as described below:
- 1. Upon starting your application, the user shall be prompted with a file chooser to select the input file.
- 2. After selecting the file (format given below [Input File Format](#input-file-format)), the user should see a graphical display of the rectangles given in the input file selected.
- 3. The user shall then be able to click inside any of the colored boxes shown and a message box should show the string given in the file for the box clicked.
- 1. Clicking within the frame, but outside of any boxes, should display an error message.
- 4. To end the application, the user will click the close button in the top left (Windows) or top right (Mac) of the frame.
- ### Input File Format
- All fields will be given as integers, with the exception of the STRING_TO_DISPLAY fields.
- “`
- FRAME_WIDTH FRAME_HEIGHT
- X_OFFSET_1 Y_OFFSET_1 WIDTH_1 HEIGHT_1 RED_1 GREEN_1 BLUE_1 STRING_TO_DISPLAY_1
- X_OFFSET_2 Y_OFFSET_2 WIDTH_2 HEIGHT_2 RED_2 GREEN_2 BLUE_2 STRING_TO_DISPLAY_2
- …
- “`
- #### Sample data
- “`
- 720 520
- 10 10 100 150 192 251 30 ADM Grace Hopper
- 110 10 300 100 249 61 27 Alan Turing
- 510 10 100 50 156 109 95 Edsger Dijkstra
- 210 110 500 50 187 151 59 Floyd Warshall
- 10 160 200 150 10 84 134 Joseph O’Rourke
- 210 210 200 100 253 104 4 Jin Akiyama
- 510 210 100 250 134 231 143 Vašek Chvátal
- 10 310 100 50 15 183 101 Erik Demaine
- 310 310 200 150 60 110 90 Bjarne Stroustrup
- 10 360 300 150 147 200 7 Walter Savich
- “`
- ### Implementation Notes:
- 1. Create a project that is object oriented, therefore there should be several classes.
- 2. You can assume that the file will match the exact format given above.
- 3. All rectangles defined in the input data can be assumed to be non-overlapping, so your app should show one message per click.
- 4. UML
- 1. The class diagrams should be created in at multiple iterations.
- 1. The first iteration should be done before you code and should provide a design that the code follows.
- 2. The second iteration should be completed after the code is complete and should reflex the *exact* class structure of you final program.
- 3. The class diagrams should include
- 1. Access specifier (- or +).
- 2. All instance fields with types.
- 3. All methods with return type and parameter types.
- 4. Associations, generalization (inheritance), aggregation and multiplicity .
- 5. Stereotyping – interface or abstract classes.
- 4. Create a word document explaining the differences and the rationale behind the differences between the final result of the two series of iterations.
- A difference is expected as it is extremely difficult to anticipate every design characteristic prior to coding.
- Download: https://solutionzip.com/downloads/project7/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement