several text fields (thick, yellow, between blue lines - see demonstration)
two vertical rulers
left button click: moves the closest blue line to the clicked Y coordinate
right button click: moves the closest vertical ruler to the clicked X
coordinate
resizeable (the window contents should scale properly)
The keyboard:
digits - switch to the text input mode, the text field depends on the digit,
and turns red while selected
enter - leave the text input mode
letters - for inputing characters to text fields
the letters should be in upper case if the shift button is pressed
backspace: removes last letter
Characters:
appear in the text fields, centered horizontally between the vertical rulers
the width depends on the placement of the rulers
the height depends on the height of the text field
use different true type font families for the different text fields (the font
families can appear periodically); the association text line - font
family should be kept after redrawing
The rulers, lines and colored textfields should be entirely visible all the
time
The letters can be stored in fixed-sized arrays (handle the full / empty array
cases)
All the constant values (e.g. array sizes) should be defined with the
#define
Hints:
all created GDI objects must be deleted
objects selected as current on DC must not be deleted