DigitEntry: Use SymbolRenderer for plus and minus signs
DigitEntry: Use ButtonRenderer to draw button background for plus and minus
DigitEntry: Fixed assert() calls in SetCursor() method

There is no need to check the *old* cursor value. If length is equal to
zero then the _cursor < length check would fail too since _cursor can't be
negative.
DigitEntry: Added CreateUnsigned() method
DigitEntry: Simplified GetFixedValue() method
DigitEntry: Simplified GetIntegerValue() method
DigitEntry: Fixed SetValue(int) for unsigned digit entry

If the value is below zero we should display zero instead of abs(value).

Since value wasn't used anymore after the assignment I'm assuming this
was the intended behavior.
DigitEntry: Removed useless assigment

The i variable is overwritten afterwards independent of the current value.
DigitEntry: Simplified assignment
Dialogs/NumberEntry: Use WidgetDialog instead of plain WndForm

same as TimeEntry
DigitEntry: Added angle-based Create/Get/Set() methods
Dialogs/NumberEntry: Added AngleEntryDialog() method
test: Added RunAngleEntry debug program
DigitEntry: Draw up/down arrows instead of plus/minus

Using plus/minus is only useful for numeric columns. Using up/down is more
generic and looks better.
DigitEntry: Removed margin between columns

The button panel has no margins either and with the margin the controls
look a bit misplaced.
DigitEntry: Changed padding attribute to local variable

Create() is the only user
DigitEntry: Use Layout::GetTextPadding() instead of hardcoded value
DigitEntry: Moved constructor to source file
DigitEntry: Extracted CalculateLayout() method
DigitEntry: Cache last_right value