[ADM] Add "editable" property to widgets

Signed-off-by: Shane Bryan <shane.bryan@intel.com>
[General] Ignore shortcuts when editing elements in the layoutView

Signed-off-by: Shane Bryan <shane.bryan@intel.com>
[Layout View] Allow inline editing of textContent

Signed-off-by: Shane Bryan <shane.bryan@linux.intel.com>
[ADM] Add "editable" property to additional widgets

Signed-off-by: Shane Bryan <shane.bryan@linux.intel.com>
[Layout View] Fixed selection of Text input/area contents

For in-line editing, Text inputs and areas have built in methods
to select their contents, so we now use this if available.

This greatly improves the selection and cursor positioning
behavior for these element types.

Signed-off-by: Shane Bryan <shane.bryan@linux.intel.com>
[Layout View] Fixed focus/blur issues with labels

Signed-off-by: Shane Bryan <shane.bryan@linux.intel.com>
[ADM] Fix editable selector on checkbox and radiobutton

Signed-off-by: Shane Bryan <shane.bryan@linux.intel.com>
[General] Fix delete key handling after editable changes

Signed-off-by: Shane Bryan <shane.bryan@linux.intel.com>
[Layout View] Adjust styling of focused items

Signed-off-by: Shane Bryan <shane.bryan@linux.intel.com>
[Layout View] Convert to using key/mouse events for managing focus

Signed-off-by: Shane Bryan <shane.bryan@linux.intel.com>
[ADM] Process events in global event queue

Signed-off-by: Shane Bryan <shane.bryan@intel.com>
[Layout View] Centralized handlers for editing completion

Signed-off-by: Shane Bryan <shane.bryan@intel.com>
[Layout View] Styling change to element text being edited

Signed-off-by: Shane Bryan <shane.bryan@intel.com>
[Layout View] Make empty labels editable using placeholder text

Signed-off-by: Shane Bryan <shane.bryan@intel.com>
[Layout View] Inline edit activated by dblclick on adm-node

Signed-off-by: Shane Bryan <shane.bryan@intel.com>
[Layout View] Fixed editing of empty Collapsible headers

Signed-off-by: Shane Bryan <shane.bryan@linux.intel.com>
Merge pull request #47 from 01org/contentEditable

Merge contentEditable branch into master

This merge set adds in-line editing of the visible text on many (not all)
elements in the Layout View.

Quick how-to on editing:
- Double Click on element to activate editing (visible text is highlighted
  and pre-selected)
- Typing replaces all pre-selected text
- First arrow key usage will deactivate selection and place cursor at
  beginning/end of text
- Typing now inserts text at cursor location
- Esc key stops editing and reverts all changes to last saved value
- Tab and Enter keys stop editing and attempt to save changes to text
- Mouse down outside the focused text, or anything that causes focus to be
  lost (switching windows for example) will also stop editing and attempt
  to save changes to text
- If the ADM property setting fails (invalid string), the text will revert
  to previous valid value
[Palette View] Add Navbar widget
[Layout View] Make sorting in Navbar work

Basically, items in Navbar has a "ui-block-*" class which needs to
adapt to the position of the placeholder. For example, if
the placeholder is the second item, its class should be ui-block-b
, other items should also change their classes according to their
posisitons.
[Layout View] More precise way to find siblings of ui.item

Sometimes items are not directly under the sortable element, we
should be consistent with the items option of the sortable.