Developing User Interfaces
CMSC 498B
Spring 2005
Prof. Ben Bederson
Project #4
Due April 21, 2005


Purpose

The purpose of this program is to develop an understanding of building custom widgets and rendering with 2D graphics libraries.

The Problem

You must write a custom widget from scratch (meaning you extend UserControl) that supports editing and selection of multi-line text.  Essentially, you are writing a slightly simplified version of TextBox.  The goal is to create a fully interactive working multi-line word-wrapping text box with selection - but you do not have to worry about data binding, or any public APIs for your control. The requirements for this project are:

Hints

Submitting

Submit following the same rules as Project #3, but make the subject line of your email contain "DUI: Proj #4 submission".  As before, any submissions after the deadline will be ignored.  If multiple submissions are made, then only the last one before the deadline will be looked at.

The zip file you submit must contain all files within a directory named "proj4-<name>.zip" where you replace <name> with your last name.