Refactoring: make it easier to add more extensions to the ENABLE command

Change-Id: I4859173e26519f3f20c1e7528f2b5885c60f5ca3
Move PartWidgetFactory to UiUtils and make it not QWidget specific

Split Gui::PartWidgetFactory to UiUitls::PartWalker and UiUtils::PartVisitor.
UiUtils::PartWalker defines how a message is traversed.
UiUtils::PartVisitor is a template that defines how a part is displayed.
Gui::PartWidgetFactoryVisitor inherits UiUtils::PartVisitor and defines how
a part is displayed using QWidget.

Change-Id: I10371a23c1616d3c08fc1cf44aba275bad5217e7
Merge "Move PartWidgetFactory to UiUtils and make it not QWidget specific"
packaging: sync with OBS

Turns out I forgot to import r451 from OBS. Here's what it's about:

----------------------------------------------------------------------------
r451 | jkt-gentoo | 2014-05-17 11:39:04 | d50332ba8e1f5359eae22beb44811969 | git |

OK, so double-dollar is the correct escaping format. Remove debugging now.
----------------------------------------------------------------------------

Change-Id: I27d2ed60696c80830a5d99787c28b0140c8bfb30
Fix OBS build for Debian and Ubuntu

Fix the OBS build for Debian and Ubuntu by renaming the libqtkeychain-dev
dependency to qtkeychain-dev. This apparently matches what the new, updated
qtkeychain package is doing now.

Reported by helios99 on IRC.

BUG: 339232
Change-Id: I3d7558e17eb504f9e3bef64c7be420a89bdb179e