COP4226, Homework - SDI

Due Monday, 9/26 (late 6 am, 9/27)

Create a Single Document Interface (SDI) application that implements a text editor. In order to open multiple files at the same time, multiple instances of the application must be started. Use a multiline text box to implement the editor. Do not use a rich text box. Along with the text, save the color for the text and the font for the text. Open a modeless preferences dialog that allows the user to change the text color and the font for this file. The application should be able to save a file, open a file that has already been saved, and save a file under a new name. Each file will include the text, color and font.

Create a separate class to encapsulate the text, color, and font. The main form should know nothing about the implementation details of the class. Add public helper methods to the class that can be accessed by the main form.

Additional requirements.

Avoid long methods. Each method that you create should be short, to promote encapsulation. If you have a method that is longer than 25 lines, then it probably needs to be divided into smaller methods.

Use properties to encapsulate implementation details.

Use meaningful names for all variables. Any variable that ends with a number will lose points.

Do not create a new data structure, event, property if one that already exists will solve the problem.

Create a video

Create a 2-5 minute mp4 video. You may use the free version of Screencast-o-matic. The video must include:

Submitting the Assignment

Zip your entire project and upload via the Assignment Dropbox on BlackBoard. Exclude the Debug and Release directories.

Be sure to include your control library in your uploaded file.

Upload your video to me using the upload via the Assignment Dropbox on BlackBoard.