I need you to develop some software for me. I would like this software to be developed for Windows using Java. The basic concept is to produce a piece of software which reads in instructions from a text file, analyses the instructions, then presents a graphical drawing to the user. The solution should be developed using the Java programming language and the AWT/Swing libraries for the Graphical User Interface. No other 3rd party libraries outside those available within the standard Java Development Kit (JDK) should be used.
The drawing tool should take the form of a typical desktop type application. It will contain a menu bar, dialogue boxes and a main window area to be used for showing various representations of the data. The exact layout of the whole application is not prescribed, however details of the outputs to be shown are given and should be adhered to as close as possible.
This work has been split into four specific requirements as described below.
Requirement 1 – Basic GUI and File loading
The first requirement for this assignment is to implement the basic Graphical User Interface (GUI) that is capable of loading and displaying the instructions present within a text file. It should consist of an application frame, a menu bar and a main application panel split into two halves. One half should be a text panel that is capable of displaying a textual representation of the file being processed, and the other will (eventually) show the graphical drawing derived from interpreting the instructions.
The menu bar should consist of a 'File' and 'Help' menu. The File menu should include options for loading, saving and exiting the application. The 'Help' menu should contain an option for showing a dialogue box which identifies information about the application. At this point however the 'Save' option does not need to work.
The application should have the ability to actually load and display the instructional data. The 'File | Load' option should show a file open dialogue allowing selection of a data file. Once this is done the file should be opened, read and displayed within the text panel area of the GUI.
The application should be designed so that it uses layout managers where appropriate, and can be sensibly resized by the user. The menu options should also include short-cuts and icons where appropriate.
Requirement 2 – Instruction Validation
This requirement involves improving the application so that it examines the instructions within the text file for validity. Only very specific instructions should be accepted, exactly as detailed within Appendix A. This shows the instructions that are to be supported by the application.
The validation process should do the following for each line within the input file –
• Check that the instruction itself is known.
• Check that the correct number of parameters is provided for that instruction.
• Check that the values within the parameters are of an appropriate type.
If the instruction is valid then it should be shown in the text panel as before, however if something within a line is either missing or invalid then a suitable error message should be shown within the text panel at the point where that instruction would have appeared. This message should explain the nature of the error.
Requirement 3 – Instruction Execution and Image Saving
For the third requirement the ability to actually execute the instructions should be added. This will involve examining each valid instruction, then carrying out an appropriate action on the graphics panel.
Use the information provided in Appendix A to decide exactly what actions should be performed for each instruction.
An additional part of the requirement will be to provide an implementation for the ‘Save’ menu option. Add code to your application that allows a user to select a filename, via a dialog box, then saves the contents of the current graphics panel as an image file.
Requirement 4 – Instruction Extension
In order to satisfy the final requirement your job is to create additional Instructions within the system. What these Instructions do is your choice, but it should make sense in the context of the application. Adding new instructions may sound easy, but for each one keep the following in mind –
• Each instruction may have its own set of specific parameters that have to be processed.
• The validation process (Requirement 2) will have to be done for all new instructions.
• The execution process (Requirement 3) will also have to be done for all new instruction.
For example you may decide to add an instruction which can draw a rectangle. Hence you would not only have to add the ability to recognize ‘rectangle’ within your code, but you would also need to add code to validate the associated parameters, and also add the code to actually draw the rectangle.
21 freelancerów złożyło ofertę na kwotę £99 do tego projektu
Dear Sir, TOP RANKED programmer with 10+ years of experience. I have done 700+ projects on this platform. I am interested in doing this project. Please award me.
Hi, I am a full time Java software engineer with 9 yearas experience in Java. This project sounds really easy, I could likely complete it in an hour or two. Thanks, Gavin.