Add multi-select support for ui.Table

Change-Id: Idce172f5b07cacb09e594c6083225373eab8d490
Signed-off-by: Fabian Deutsch <fabiand@fedoraproject.org>
ui: Pull out NoticeDecoration

NoticeDecoration is now a widget decoration which can be used to add a
notice area below a widget.

Change-Id: I56d31f7684b2f1be42be5d2fa9587af2e9cf662f
Signed-off-by: Fabian Deutsch <fabiand@fedoraproject.org>
ui: Pull label into InputElement

All classes derived from InputElement have a label in common which is
now pulled into InputElement itself.

Previously the logic to detect pending (unsaved) changes on a page was
broken, this is fixed with this patch.

Change-Id: I4eeed71fac885958aa6cdd8ca1aa873a77c22f7f
Signed-off-by: Fabian Deutsch <fabiand@fedoraproject.org>
ui: Generalize exception handling

Previously it was not possible to catch exceptions in callbacks and
display them in the TUI (without bringing the whole TUI down).
Now it's possible to catch exceptions in signal callbacks and display
them on the TUI screen.

Change-Id: I3cdec9ea5ea9f5777b25c44e9051234720fe55a7
Signed-off-by: Fabian Deutsch <fabiand@fedoraproject.org>
widgets: Clean Entry by pulling out the Notice

Previously the Entry also contained the notice area, this is now pulled
out and handled separatley this simplifies the code - at least a tiny
bit.

Change-Id: I1c1b89b1891adbc9d3b0387efbda0f65817a9413
Signed-off-by: Fabian Deutsch <fabiand@fedoraproject.org>