Reimplement find widget functions to support groups.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
(widget_is_active): reimplement to support groups

...and related changes.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
W_TOP_SELECT: new widget option to place widget on top of other widgets in group.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Join widget_state_t and dlg_state_t.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Start reimplementation of widget selection.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Use WIDGET_STATE_ACTIVE state in menu.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Optimization of menubar activisation.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
WIDGET_STATE_FOCUSED: add new state and handle it.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Add set_state() API to WGroup class.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Use new way to handle WIDGET_STATE_FOCUSED state.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Use mc_event engine to handle focus/unfocus events.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
New group API to select/unselect widget.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Modify update_cursor API to support groups.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Small refactoring of dialog size and position set/change.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Reimplement set widget size to support groups.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Reimplement dialog validation: use separate function.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>