preparation for multiple themes in web UI
authorVictor Kirhenshtein <victor@netxms.org>
Sun, 24 Jul 2016 13:49:58 +0000 (16:49 +0300)
committerVictor Kirhenshtein <victor@netxms.org>
Sun, 24 Jul 2016 13:49:58 +0000 (16:49 +0300)
241 files changed:
webui/webapp/Core/icons/logo.png [new file with mode: 0644]
webui/webapp/Core/plugin.xml
webui/webapp/Core/src/org/netxms/ui/eclipse/console/ApplicationPresentationFactory.java [deleted file]
webui/webapp/Core/src/org/netxms/ui/eclipse/console/ApplicationWorkbenchWindowAdvisor.java
webui/webapp/Core/src/org/netxms/ui/eclipse/console/themes/classic/ClassicPresentationFactory.java [new file with mode: 0644]
webui/webapp/Core/src/org/netxms/ui/eclipse/console/themes/material/MaterialPresentationFactory.java [new file with mode: 0644]
webui/webapp/Core/src/org/netxms/ui/eclipse/console/themes/material/MaterialWindowComposer.java [new file with mode: 0644]
webui/webapp/Core/src/org/netxms/ui/eclipse/console/themes/material/layout/Header.java [new file with mode: 0644]
webui/webapp/Core/src/org/netxms/ui/eclipse/console/themes/material/managers/MenuBarManager.java [new file with mode: 0644]
webui/webapp/Core/theme/classic.css
webui/webapp/Core/theme/classic.resources/arrows/down.gif [copied from webui/webapp/Core/theme/resources/arrows/down.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/button/arrow-down.png [copied from webui/webapp/Core/theme/resources/button/arrow-down.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/button/arrow-left.png [copied from webui/webapp/Core/theme/resources/button/arrow-left.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/button/arrow-right.png [copied from webui/webapp/Core/theme/resources/button/arrow-right.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/button/arrow-up.png [copied from webui/webapp/Core/theme/resources/button/arrow-up.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/button/check-grayed-hover.png [moved from webui/webapp/Core/theme/resources/button/check-grayed-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/button/check-grayed.png [moved from webui/webapp/Core/theme/resources/button/check-grayed.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/button/check-selected-hover.png [moved from webui/webapp/Core/theme/resources/button/check-selected-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/button/check-selected.png [moved from webui/webapp/Core/theme/resources/button/check-selected.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/button/check-unselected-hover.png [moved from webui/webapp/Core/theme/resources/button/check-unselected-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/button/check-unselected.png [moved from webui/webapp/Core/theme/resources/button/check-unselected.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/button/radio-selected-hover.png [moved from webui/webapp/Core/theme/resources/button/radio-selected-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/button/radio-selected.png [moved from webui/webapp/Core/theme/resources/button/radio-selected.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/button/radio-unselected-hover.png [moved from webui/webapp/Core/theme/resources/button/radio-unselected-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/button/radio-unselected.png [moved from webui/webapp/Core/theme/resources/button/radio-unselected.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/calendar/lastMonth-hover.png [copied from webui/webapp/Core/theme/resources/calendar/lastMonth-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/calendar/lastMonth.png [copied from webui/webapp/Core/theme/resources/calendar/lastMonth.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/calendar/lastYear-hover.png [copied from webui/webapp/Core/theme/resources/calendar/lastYear-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/calendar/lastYear.png [copied from webui/webapp/Core/theme/resources/calendar/lastYear.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/calendar/nextMonth-hover.png [copied from webui/webapp/Core/theme/resources/calendar/nextMonth-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/calendar/nextMonth.png [copied from webui/webapp/Core/theme/resources/calendar/nextMonth.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/calendar/nextYear-hover.png [copied from webui/webapp/Core/theme/resources/calendar/nextYear-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/calendar/nextYear.png [copied from webui/webapp/Core/theme/resources/calendar/nextYear.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/ccombo/down-hover.png [copied from webui/webapp/Core/theme/resources/ccombo/down-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/ccombo/down.png [copied from webui/webapp/Core/theme/resources/ccombo/down.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/colorselector/brightness-field.jpg [copied from webui/webapp/Core/theme/resources/colorselector/brightness-field.jpg with 100% similarity]
webui/webapp/Core/theme/classic.resources/colorselector/brightness-handle.gif [copied from webui/webapp/Core/theme/resources/colorselector/brightness-handle.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/colorselector/huesaturation-field.jpg [copied from webui/webapp/Core/theme/resources/colorselector/huesaturation-field.jpg with 100% similarity]
webui/webapp/Core/theme/classic.resources/colorselector/huesaturation-handle.gif [copied from webui/webapp/Core/theme/resources/colorselector/huesaturation-handle.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/column/sort-indicator-down.png [copied from webui/webapp/Core/theme/resources/column/sort-indicator-down.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/column/sort-indicator-up.png [copied from webui/webapp/Core/theme/resources/column/sort-indicator-up.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/combo/down_button.gif [copied from webui/webapp/Core/theme/resources/combo/down_button.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/coolitem/chevron.gif [copied from webui/webapp/Core/theme/resources/coolitem/chevron.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/ctabfolder/close.gif [copied from webui/webapp/Core/theme/resources/ctabfolder/close.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/ctabfolder/close_hover.gif [copied from webui/webapp/Core/theme/resources/ctabfolder/close_hover.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/ctabfolder/ctabfolder-dropdown-hover.png [copied from webui/webapp/Core/theme/resources/ctabfolder/ctabfolder-dropdown-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/ctabfolder/ctabfolder-dropdown.png [copied from webui/webapp/Core/theme/resources/ctabfolder/ctabfolder-dropdown.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/ctabfolder/maximize.gif [copied from webui/webapp/Core/theme/resources/ctabfolder/maximize.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/ctabfolder/minimize.gif [copied from webui/webapp/Core/theme/resources/ctabfolder/minimize.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/ctabfolder/restore.gif [copied from webui/webapp/Core/theme/resources/ctabfolder/restore.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/cursors/alias.gif [copied from webui/webapp/Core/theme/resources/cursors/alias.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/cursors/copy.gif [copied from webui/webapp/Core/theme/resources/cursors/copy.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/cursors/move.gif [copied from webui/webapp/Core/theme/resources/cursors/move.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/cursors/nodrop.gif [copied from webui/webapp/Core/theme/resources/cursors/nodrop.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/cursors/up_arrow.cur [copied from webui/webapp/Core/theme/resources/cursors/up_arrow.cur with 100% similarity]
webui/webapp/Core/theme/classic.resources/datetime/down_button.gif [copied from webui/webapp/Core/theme/resources/datetime/down_button.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/datetime/drop_down_button.gif [copied from webui/webapp/Core/theme/resources/datetime/drop_down_button.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/datetime/up_button.gif [copied from webui/webapp/Core/theme/resources/datetime/up_button.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/dialog/error.png [moved from webui/webapp/Core/theme/resources/dialog/error.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/dialog/information.png [moved from webui/webapp/Core/theme/resources/dialog/information.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/dialog/question.png [moved from webui/webapp/Core/theme/resources/dialog/question.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/dialog/warning.png [moved from webui/webapp/Core/theme/resources/dialog/warning.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/display/browser_bg.png [copied from webui/webapp/Core/theme/resources/display/browser_bg.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/display/loading.gif [moved from webui/webapp/Core/theme/resources/display/loading.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/expanditem/expanditem-collapse-hover.png [copied from webui/webapp/Core/theme/resources/expanditem/expanditem-collapse-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/expanditem/expanditem-collapse.png [copied from webui/webapp/Core/theme/resources/expanditem/expanditem-collapse.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/expanditem/expanditem-expand-hover.png [copied from webui/webapp/Core/theme/resources/expanditem/expanditem-expand-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/expanditem/expanditem-expand.png [copied from webui/webapp/Core/theme/resources/expanditem/expanditem-expand.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/menu/arrow.gif [copied from webui/webapp/Core/theme/resources/menu/arrow.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/menu/checkbox.gif [copied from webui/webapp/Core/theme/resources/menu/checkbox.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/menu/menu-blank.gif [copied from webui/webapp/Core/theme/resources/menu/menu-blank.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/menu/radiobutton.gif [copied from webui/webapp/Core/theme/resources/menu/radiobutton.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/progressbar/bar.gif [copied from webui/webapp/Core/theme/resources/progressbar/bar.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/progressbar/barbg.gif [copied from webui/webapp/Core/theme/resources/progressbar/barbg.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/scale/h_line.gif [copied from webui/webapp/Core/theme/resources/scale/h_line.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/scale/h_marker_big.gif [moved from webui/webapp/Core/theme/resources/scale/h_marker_big.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/scale/h_marker_small.gif [moved from webui/webapp/Core/theme/resources/scale/h_marker_small.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/scale/v_line.gif [copied from webui/webapp/Core/theme/resources/scale/v_line.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/scale/v_marker_big.gif [moved from webui/webapp/Core/theme/resources/scale/v_marker_big.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/scale/v_marker_small.gif [moved from webui/webapp/Core/theme/resources/scale/v_marker_small.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/scrollbar/h-knob.png [moved from webui/webapp/Core/theme/resources/scrollbar/h-knob.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/scrollbar/left-hover.png [copied from webui/webapp/Core/theme/resources/scrollbar/left-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/scrollbar/left.png [moved from webui/webapp/Core/theme/resources/scrollbar/left.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/scrollbar/right-hover.png [copied from webui/webapp/Core/theme/resources/scrollbar/right-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/scrollbar/right.png [moved from webui/webapp/Core/theme/resources/scrollbar/right.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/scrollbar/v-knob.png [moved from webui/webapp/Core/theme/resources/scrollbar/v-knob.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/slider/left-hover.png [moved from webui/webapp/Core/theme/resources/slider/left-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/slider/left.png [moved from webui/webapp/Core/theme/resources/slider/left.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/slider/right-hover.png [moved from webui/webapp/Core/theme/resources/slider/right-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/slider/right.png [moved from webui/webapp/Core/theme/resources/slider/right.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/spinner/down-hover.png [moved from webui/webapp/Core/theme/resources/spinner/down-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/spinner/down.png [moved from webui/webapp/Core/theme/resources/spinner/down.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/spinner/up-hover.png [copied from webui/webapp/Core/theme/resources/spinner/up-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/spinner/up.png [moved from webui/webapp/Core/theme/resources/spinner/up.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/toolbar/dotted_white.gif [moved from webui/webapp/Core/theme/resources/toolbar/dotted_white.gif with 100% similarity]
webui/webapp/Core/theme/classic.resources/tooltip/error.png [moved from webui/webapp/Core/theme/resources/tooltip/error.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/tooltip/information.png [moved from webui/webapp/Core/theme/resources/tooltip/information.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/tooltip/warning.png [moved from webui/webapp/Core/theme/resources/tooltip/warning.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/tree/tree-collapsed-hover.png [copied from webui/webapp/Core/theme/resources/tree/tree-collapsed-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/tree/tree-collapsed.png [copied from webui/webapp/Core/theme/resources/tree/tree-collapsed.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/tree/tree-expanded-hover.png [copied from webui/webapp/Core/theme/resources/tree/tree-expanded-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/tree/tree-expanded.png [copied from webui/webapp/Core/theme/resources/tree/tree-expanded.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/window/shell-close-hover.png [moved from webui/webapp/Core/theme/resources/window/shell-close-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/window/shell-close.png [moved from webui/webapp/Core/theme/resources/window/shell-close.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/window/shell-max-hover.png [moved from webui/webapp/Core/theme/resources/window/shell-max-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/window/shell-max.png [moved from webui/webapp/Core/theme/resources/window/shell-max.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/window/shell-min-hover.png [moved from webui/webapp/Core/theme/resources/window/shell-min-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/window/shell-min.png [moved from webui/webapp/Core/theme/resources/window/shell-min.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/window/shell-restore-hover.png [moved from webui/webapp/Core/theme/resources/window/shell-restore-hover.png with 100% similarity]
webui/webapp/Core/theme/classic.resources/window/shell-restore.png [moved from webui/webapp/Core/theme/resources/window/shell-restore.png with 100% similarity]
webui/webapp/Core/theme/material.css [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/arrows/chevron-left-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/arrows/chevron-left.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/arrows/chevron-right-hover.png [copied from webui/webapp/Core/theme/resources/ctabfolder/ctabfolder-dropdown-hover.png with 100% similarity]
webui/webapp/Core/theme/material.resources/arrows/chevron-right.png [copied from webui/webapp/Core/theme/resources/ctabfolder/ctabfolder-dropdown.png with 100% similarity]
webui/webapp/Core/theme/material.resources/arrows/down.gif [moved from webui/webapp/Core/theme/resources/arrows/down.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/arrows/tooltip-down.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/arrows/tooltip-left.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/arrows/tooltip-right.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/arrows/tooltip-up.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/button/arrow-down.png [moved from webui/webapp/Core/theme/resources/button/arrow-down.png with 100% similarity]
webui/webapp/Core/theme/material.resources/button/arrow-left.png [moved from webui/webapp/Core/theme/resources/button/arrow-left.png with 100% similarity]
webui/webapp/Core/theme/material.resources/button/arrow-right.png [moved from webui/webapp/Core/theme/resources/button/arrow-right.png with 100% similarity]
webui/webapp/Core/theme/material.resources/button/arrow-up.png [moved from webui/webapp/Core/theme/resources/button/arrow-up.png with 100% similarity]
webui/webapp/Core/theme/material.resources/button/check-grayed-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/button/check-grayed.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/button/check-selected-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/button/check-selected.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/button/check-unselected-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/button/check-unselected.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/button/radio-selected-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/button/radio-selected.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/button/radio-unselected-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/button/radio-unselected.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/calendar/lastMonth-hover.png [moved from webui/webapp/Core/theme/resources/calendar/lastMonth-hover.png with 100% similarity]
webui/webapp/Core/theme/material.resources/calendar/lastMonth.png [moved from webui/webapp/Core/theme/resources/calendar/lastMonth.png with 100% similarity]
webui/webapp/Core/theme/material.resources/calendar/lastYear-hover.png [moved from webui/webapp/Core/theme/resources/calendar/lastYear-hover.png with 100% similarity]
webui/webapp/Core/theme/material.resources/calendar/lastYear.png [moved from webui/webapp/Core/theme/resources/calendar/lastYear.png with 100% similarity]
webui/webapp/Core/theme/material.resources/calendar/nextMonth-hover.png [moved from webui/webapp/Core/theme/resources/calendar/nextMonth-hover.png with 100% similarity]
webui/webapp/Core/theme/material.resources/calendar/nextMonth.png [moved from webui/webapp/Core/theme/resources/calendar/nextMonth.png with 100% similarity]
webui/webapp/Core/theme/material.resources/calendar/nextYear-hover.png [moved from webui/webapp/Core/theme/resources/calendar/nextYear-hover.png with 100% similarity]
webui/webapp/Core/theme/material.resources/calendar/nextYear.png [moved from webui/webapp/Core/theme/resources/calendar/nextYear.png with 100% similarity]
webui/webapp/Core/theme/material.resources/ccombo/_down-hover.png [copied from webui/webapp/Core/theme/resources/ccombo/down-hover.png with 100% similarity]
webui/webapp/Core/theme/material.resources/ccombo/_down.png [moved from webui/webapp/Core/theme/resources/ccombo/down.png with 100% similarity]
webui/webapp/Core/theme/material.resources/ccombo/down-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/ccombo/down.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/colorselector/brightness-field.jpg [moved from webui/webapp/Core/theme/resources/colorselector/brightness-field.jpg with 100% similarity]
webui/webapp/Core/theme/material.resources/colorselector/brightness-handle.gif [moved from webui/webapp/Core/theme/resources/colorselector/brightness-handle.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/colorselector/huesaturation-field.jpg [moved from webui/webapp/Core/theme/resources/colorselector/huesaturation-field.jpg with 100% similarity]
webui/webapp/Core/theme/material.resources/colorselector/huesaturation-handle.gif [moved from webui/webapp/Core/theme/resources/colorselector/huesaturation-handle.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/column/sort-indicator-down.png [moved from webui/webapp/Core/theme/resources/column/sort-indicator-down.png with 100% similarity]
webui/webapp/Core/theme/material.resources/column/sort-indicator-up.png [moved from webui/webapp/Core/theme/resources/column/sort-indicator-up.png with 100% similarity]
webui/webapp/Core/theme/material.resources/combo/down-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/combo/down.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/combo/down_button.gif [moved from webui/webapp/Core/theme/resources/combo/down_button.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/coolitem/chevron.gif [moved from webui/webapp/Core/theme/resources/coolitem/chevron.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/ctabfolder/close.gif [moved from webui/webapp/Core/theme/resources/ctabfolder/close.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/ctabfolder/close_hover.gif [moved from webui/webapp/Core/theme/resources/ctabfolder/close_hover.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/ctabfolder/ctabfolder-dropdown-hover.png [moved from webui/webapp/Core/theme/resources/ctabfolder/ctabfolder-dropdown-hover.png with 100% similarity]
webui/webapp/Core/theme/material.resources/ctabfolder/ctabfolder-dropdown-left-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/ctabfolder/ctabfolder-dropdown-left.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/ctabfolder/ctabfolder-dropdown.png [moved from webui/webapp/Core/theme/resources/ctabfolder/ctabfolder-dropdown.png with 100% similarity]
webui/webapp/Core/theme/material.resources/ctabfolder/maximize.gif [moved from webui/webapp/Core/theme/resources/ctabfolder/maximize.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/ctabfolder/minimize.gif [moved from webui/webapp/Core/theme/resources/ctabfolder/minimize.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/ctabfolder/restore.gif [moved from webui/webapp/Core/theme/resources/ctabfolder/restore.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/cursors/alias.gif [moved from webui/webapp/Core/theme/resources/cursors/alias.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/cursors/copy.gif [moved from webui/webapp/Core/theme/resources/cursors/copy.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/cursors/move.gif [moved from webui/webapp/Core/theme/resources/cursors/move.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/cursors/nodrop.gif [moved from webui/webapp/Core/theme/resources/cursors/nodrop.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/cursors/up_arrow.cur [moved from webui/webapp/Core/theme/resources/cursors/up_arrow.cur with 100% similarity]
webui/webapp/Core/theme/material.resources/datetime/down-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/datetime/down.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/datetime/down_button.gif [moved from webui/webapp/Core/theme/resources/datetime/down_button.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/datetime/drop_down_button.gif [moved from webui/webapp/Core/theme/resources/datetime/drop_down_button.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/datetime/up-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/datetime/up.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/datetime/up_button.gif [moved from webui/webapp/Core/theme/resources/datetime/up_button.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/dialog/error.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/dialog/information.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/dialog/question.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/dialog/warning.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/display/browser_bg.png [moved from webui/webapp/Core/theme/resources/display/browser_bg.png with 100% similarity]
webui/webapp/Core/theme/material.resources/display/loading.gif [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/expanditem/expanditem-collapse-hover.png [moved from webui/webapp/Core/theme/resources/expanditem/expanditem-collapse-hover.png with 100% similarity]
webui/webapp/Core/theme/material.resources/expanditem/expanditem-collapse.png [moved from webui/webapp/Core/theme/resources/expanditem/expanditem-collapse.png with 100% similarity]
webui/webapp/Core/theme/material.resources/expanditem/expanditem-expand-hover.png [moved from webui/webapp/Core/theme/resources/expanditem/expanditem-expand-hover.png with 100% similarity]
webui/webapp/Core/theme/material.resources/expanditem/expanditem-expand.png [moved from webui/webapp/Core/theme/resources/expanditem/expanditem-expand.png with 100% similarity]
webui/webapp/Core/theme/material.resources/menu/arrow-left.gif [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/menu/arrow-right.gif [moved from webui/webapp/Core/theme/resources/menu/arrow.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/menu/checkbox.gif [moved from webui/webapp/Core/theme/resources/menu/checkbox.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/menu/menu-background.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/menu/menu-blank.gif [moved from webui/webapp/Core/theme/resources/menu/menu-blank.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/menu/radiobutton.gif [moved from webui/webapp/Core/theme/resources/menu/radiobutton.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/progressbar/bar.gif [moved from webui/webapp/Core/theme/resources/progressbar/bar.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/progressbar/barbg.gif [moved from webui/webapp/Core/theme/resources/progressbar/barbg.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/progressbar/progressbar-background.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/sash/sash-handle-horizontal.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/sash/sash-handle-vertical.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/scale/h_line.gif [moved from webui/webapp/Core/theme/resources/scale/h_line.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/scale/v_line.gif [moved from webui/webapp/Core/theme/resources/scale/v_line.gif with 100% similarity]
webui/webapp/Core/theme/material.resources/scrollbar/down.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/scrollbar/left.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/scrollbar/right.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/scrollbar/scrollbar-background.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/scrollbar/up.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/slider/down-hover.png [moved from webui/webapp/Core/theme/resources/ccombo/down-hover.png with 100% similarity]
webui/webapp/Core/theme/material.resources/slider/down.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/slider/left-hover.png [moved from webui/webapp/Core/theme/resources/scrollbar/left-hover.png with 100% similarity]
webui/webapp/Core/theme/material.resources/slider/left.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/slider/right-hover.png [moved from webui/webapp/Core/theme/resources/scrollbar/right-hover.png with 100% similarity]
webui/webapp/Core/theme/material.resources/slider/right.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/slider/slider-background.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/slider/up-hover.png [moved from webui/webapp/Core/theme/resources/spinner/up-hover.png with 100% similarity]
webui/webapp/Core/theme/material.resources/slider/up.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/spinner/down-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/spinner/down.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/spinner/up-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/spinner/up.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/text/clear.gif [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/text/find.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/toolbar/down.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/tooltip/error.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/tooltip/information.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/tooltip/warning.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/tree/loading.gif [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/tree/tree-collapsed-hover-left.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/tree/tree-collapsed-hover.png [moved from webui/webapp/Core/theme/resources/tree/tree-collapsed-hover.png with 100% similarity]
webui/webapp/Core/theme/material.resources/tree/tree-collapsed-left.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/tree/tree-collapsed.png [moved from webui/webapp/Core/theme/resources/tree/tree-collapsed.png with 100% similarity]
webui/webapp/Core/theme/material.resources/tree/tree-expanded-hover-left.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/tree/tree-expanded-hover.png [moved from webui/webapp/Core/theme/resources/tree/tree-expanded-hover.png with 100% similarity]
webui/webapp/Core/theme/material.resources/tree/tree-expanded-left.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/tree/tree-expanded.png [moved from webui/webapp/Core/theme/resources/tree/tree-expanded.png with 100% similarity]
webui/webapp/Core/theme/material.resources/window/shell-close-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/window/shell-close.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/window/shell-max-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/window/shell-max.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/window/shell-min-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/window/shell-min.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/window/shell-restore-hover.png [new file with mode: 0644]
webui/webapp/Core/theme/material.resources/window/shell-restore.png [new file with mode: 0644]

diff --git a/webui/webapp/Core/icons/logo.png b/webui/webapp/Core/icons/logo.png
new file mode 100644 (file)
index 0000000..ffd3323
Binary files /dev/null and b/webui/webapp/Core/icons/logo.png differ
index 529f3f7..97f5eb2 100644 (file)
    <extension
          point="org.eclipse.ui.presentationFactories">
       <factory
-            class="org.netxms.ui.eclipse.console.ApplicationPresentationFactory"
-            id="org.netxms.ui.eclipse.console.ApplicationPresentationFactory"
-            name="NetXMS Console Presentation Factory">
+            class="org.netxms.ui.eclipse.console.themes.classic.ClassicPresentationFactory"
+            id="org.netxms.ui.eclipse.console.factory.classic"
+            name="Classic Presentation Factory">
+      </factory>
+      <factory
+            class="org.netxms.ui.eclipse.console.themes.material.MaterialPresentationFactory"
+            id="org.netxms.ui.eclipse.console.factory.material"
+            name="Material Presentation Factory">
       </factory>
    </extension>
    <extension
             themeId="org.netxms.webui.design.theme.classic"
             title="NetXMS Management Console">
          <presentationFactory
-               id="org.netxms.ui.eclipse.console.ApplicationPresentationFactory"
+               id="org.netxms.ui.eclipse.console.factory.classic"
+               viewActionsVisible="true">
+         </presentationFactory>
+      </branding>
+      <branding
+            favicon="icons/favicon.png"
+            id="org.netxms.webui.design.branding.material"
+            themeId="org.netxms.webui.design.theme.material"
+            title="NetXMS Management Console">
+         <presentationFactory
+               defaultLayoutId="org.netxms.ui.eclipse.console.layouts.modern"
+               id="org.netxms.ui.eclipse.console.factory.material"
                viewActionsVisible="true">
          </presentationFactory>
       </branding>
             id="org.netxms.webui.design.theme.classic"
             name="Classic Theme">
       </theme>
+      <theme
+            file="theme/material.css"
+            id="org.netxms.webui.design.theme.material"
+            name="Material Theme">
+      </theme>
    </extension>
    <extension
          point="org.eclipse.rap.ui.entrypoint">
             id="org.netxms.webui.entrypoint"
             path="/nxmc">
       </entrypoint>
+      <entrypoint
+            applicationId="org.netxms.webui.core.nxmc"
+            brandingId="org.netxms.webui.design.branding.material"
+            id="org.netxms.webui.entrypoint"
+            path="/nxmc2">
+      </entrypoint>
    </extension>
    <extension
       point="org.eclipse.equinox.http.registry.servlets">
             class="org.netxms.ui.eclipse.console.PreferenceInitializer">
       </initializer>
    </extension>
+   <extension
+         point="org.eclipse.rap.ui.layouts">
+      <layout
+            id="org.netxms.ui.eclipse.console.layouts.material"
+            name="Material Layout">
+         <layoutSet
+               class="org.netxms.ui.eclipse.console.themes.material.layout.Header"
+               id="org.netxms.ui.eclipse.console.themes.material.layout.Header"
+               name="Header">
+         </layoutSet>
+      </layout>
+   </extension>
 </plugin>
diff --git a/webui/webapp/Core/src/org/netxms/ui/eclipse/console/ApplicationPresentationFactory.java b/webui/webapp/Core/src/org/netxms/ui/eclipse/console/ApplicationPresentationFactory.java
deleted file mode 100644 (file)
index d41ffe5..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-/**
- * 
- */
-package org.netxms.ui.eclipse.console;
-
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.internal.presentations.defaultpresentation.DefaultTabFolder;
-import org.eclipse.ui.internal.presentations.util.TabbedStackPresentation;
-import org.eclipse.ui.presentations.IStackPresentationSite;
-import org.eclipse.ui.presentations.StackPresentation;
-import org.eclipse.ui.presentations.WorkbenchPresentationFactory;
-
-/**
- * Custom presentation factory
- */
-@SuppressWarnings("restriction")
-public class ApplicationPresentationFactory extends WorkbenchPresentationFactory
-{
-   /* (non-Javadoc)
-    * @see org.eclipse.ui.presentations.WorkbenchPresentationFactory#createViewPresentation(org.eclipse.swt.widgets.Composite, org.eclipse.ui.presentations.IStackPresentationSite)
-    */
-   @Override
-   public StackPresentation createViewPresentation(Composite parent, IStackPresentationSite site)
-   {
-      TabbedStackPresentation p = (TabbedStackPresentation)super.createViewPresentation(parent, site);
-      ((DefaultTabFolder)p.getTabFolder()).setUnselectedCloseVisible(true);
-      return p;
-   }
-}
index 4534abe..c78413a 100644 (file)
@@ -26,6 +26,7 @@ import org.eclipse.swt.SWT;
 import org.eclipse.swt.custom.CBanner;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Menu;
 import org.eclipse.swt.widgets.Shell;
 import org.eclipse.ui.IViewPart;
 import org.eclipse.ui.IWorkbenchPage;
@@ -74,7 +75,6 @@ public class ApplicationWorkbenchWindowAdvisor extends WorkbenchWindowAdvisor
       RegionalSettings.updateFromPreferences();
       
                IWorkbenchWindowConfigurer configurer = getWindowConfigurer();
-               configurer.setShowCoolBar(true);
                configurer.setShowPerspectiveBar(true);
                configurer.setShowStatusLine(false);
                configurer.setTitle(Messages.get().ApplicationWorkbenchWindowAdvisor_AppTitle);
@@ -118,7 +118,9 @@ public class ApplicationWorkbenchWindowAdvisor extends WorkbenchWindowAdvisor
                        }
                }
                
-               shell.getMenuBar().setData(RWT.CUSTOM_VARIANT, "menuBar"); //$NON-NLS-1$
+               Menu menuBar = shell.getMenuBar();
+               if (menuBar != null)
+                  menuBar.setData(RWT.CUSTOM_VARIANT, "menuBar"); //$NON-NLS-1$
        }
 
        /* (non-Javadoc)
diff --git a/webui/webapp/Core/src/org/netxms/ui/eclipse/console/themes/classic/ClassicPresentationFactory.java b/webui/webapp/Core/src/org/netxms/ui/eclipse/console/themes/classic/ClassicPresentationFactory.java
new file mode 100644 (file)
index 0000000..8c9acd7
--- /dev/null
@@ -0,0 +1,44 @@
+/**
+ * NetXMS - open source network management system
+ * Copyright (C) 2003-2016 Raden Solutions
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+package org.netxms.ui.eclipse.console.themes.classic;
+
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.internal.presentations.defaultpresentation.DefaultTabFolder;
+import org.eclipse.ui.internal.presentations.util.TabbedStackPresentation;
+import org.eclipse.ui.presentations.IStackPresentationSite;
+import org.eclipse.ui.presentations.StackPresentation;
+import org.eclipse.ui.presentations.WorkbenchPresentationFactory;
+
+/**
+ * Presentation factory for "Classic" theme
+ */
+@SuppressWarnings("restriction")
+public class ClassicPresentationFactory extends WorkbenchPresentationFactory
+{
+   /* (non-Javadoc)
+    * @see org.eclipse.ui.presentations.WorkbenchPresentationFactory#createViewPresentation(org.eclipse.swt.widgets.Composite, org.eclipse.ui.presentations.IStackPresentationSite)
+    */
+   @Override
+   public StackPresentation createViewPresentation(Composite parent, IStackPresentationSite site)
+   {
+      TabbedStackPresentation p = (TabbedStackPresentation)super.createViewPresentation(parent, site);
+      ((DefaultTabFolder)p.getTabFolder()).setUnselectedCloseVisible(true);
+      return p;
+   }
+}
diff --git a/webui/webapp/Core/src/org/netxms/ui/eclipse/console/themes/material/MaterialPresentationFactory.java b/webui/webapp/Core/src/org/netxms/ui/eclipse/console/themes/material/MaterialPresentationFactory.java
new file mode 100644 (file)
index 0000000..9cf3ea2
--- /dev/null
@@ -0,0 +1,100 @@
+/**
+ * NetXMS - open source network management system
+ * Copyright (C) 2003-2016 Raden Solutions
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+package org.netxms.ui.eclipse.console.themes.material;
+
+import org.eclipse.jface.action.IToolBarManager;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.internal.provisional.action.CoolBarManager2;
+import org.eclipse.jface.internal.provisional.action.ICoolBarManager2;
+import org.eclipse.jface.internal.provisional.action.IToolBarContributionItem;
+import org.eclipse.jface.internal.provisional.action.IToolBarManager2;
+import org.eclipse.jface.internal.provisional.action.ToolBarContributionItem2;
+import org.eclipse.jface.internal.provisional.action.ToolBarManager2;
+import org.eclipse.rap.ui.interactiondesign.IWindowComposer;
+import org.eclipse.rap.ui.interactiondesign.PresentationFactory;
+import org.netxms.ui.eclipse.console.themes.material.managers.MenuBarManager;
+
+/**
+ * Presentation factory for "Material" theme
+ */
+public class MaterialPresentationFactory extends PresentationFactory
+{
+   /* (non-Javadoc)
+    * @see org.eclipse.rap.ui.interactiondesign.PresentationFactory#createCoolBarManager()
+    */
+   @Override
+   public ICoolBarManager2 createCoolBarManager()
+   {
+      return new CoolBarManager2();
+   }
+
+   /* (non-Javadoc)
+    * @see org.eclipse.rap.ui.interactiondesign.PresentationFactory#createMenuBarManager()
+    */
+   @Override
+   public MenuManager createMenuBarManager()
+   {
+      return new MenuBarManager();
+   }
+
+   /* (non-Javadoc)
+    * @see org.eclipse.rap.ui.interactiondesign.PresentationFactory#createPartMenuManager()
+    */
+   @Override
+   public MenuManager createPartMenuManager()
+   {
+      return new MenuManager();
+   }
+
+   /* (non-Javadoc)
+    * @see org.eclipse.rap.ui.interactiondesign.PresentationFactory#createToolBarContributionItem(org.eclipse.jface.action.IToolBarManager, java.lang.String)
+    */
+   @Override
+   public IToolBarContributionItem createToolBarContributionItem(IToolBarManager toolBarManager, String id)
+   {
+      return new ToolBarContributionItem2(toolBarManager, id);
+   }
+
+   /* (non-Javadoc)
+    * @see org.eclipse.rap.ui.interactiondesign.PresentationFactory#createToolBarManager()
+    */
+   @Override
+   public IToolBarManager2 createToolBarManager()
+   {
+      return new ToolBarManager2();
+   }
+
+   /* (non-Javadoc)
+    * @see org.eclipse.rap.ui.interactiondesign.PresentationFactory#createViewToolBarManager()
+    */
+   @Override
+   public IToolBarManager2 createViewToolBarManager()
+   {
+      return new ToolBarManager2();
+   }
+
+   /* (non-Javadoc)
+    * @see org.eclipse.rap.ui.interactiondesign.PresentationFactory#createWindowComposer()
+    */
+   @Override
+   public IWindowComposer createWindowComposer()
+   {
+      return new MaterialWindowComposer();
+   }
+}
diff --git a/webui/webapp/Core/src/org/netxms/ui/eclipse/console/themes/material/MaterialWindowComposer.java b/webui/webapp/Core/src/org/netxms/ui/eclipse/console/themes/material/MaterialWindowComposer.java
new file mode 100644 (file)
index 0000000..f1d1d82
--- /dev/null
@@ -0,0 +1,159 @@
+/**
+ * NetXMS - open source network management system
+ * Copyright (C) 2003-2016 Raden Solutions
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+package org.netxms.ui.eclipse.console.themes.material;
+
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.window.ApplicationWindow;
+import org.eclipse.rap.rwt.RWT;
+import org.eclipse.rap.ui.interactiondesign.IWindowComposer;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.DisposeEvent;
+import org.eclipse.swt.events.DisposeListener;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.layout.FormAttachment;
+import org.eclipse.swt.layout.FormData;
+import org.eclipse.swt.layout.FormLayout;
+import org.eclipse.swt.layout.RowLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
+import org.netxms.ui.eclipse.console.Activator;
+
+/**
+ * Window composer for "Material" theme
+ */
+public class MaterialWindowComposer implements IWindowComposer
+{
+   private Shell shell;
+   private ApplicationWindow window;
+   private Label logo;
+   private Composite header;
+   private Composite menuBar;
+   
+   /* (non-Javadoc)
+    * @see org.eclipse.rap.ui.interactiondesign.IWindowComposer#createWindowContents(org.eclipse.swt.widgets.Shell, org.eclipse.ui.application.IWorkbenchWindowConfigurer)
+    */
+   @Override
+   public Composite createWindowContents(Shell shell, IWorkbenchWindowConfigurer configurer)
+   {
+      this.shell = shell;
+      window = (ApplicationWindow)PlatformUI.getWorkbench().getActiveWorkbenchWindow();
+      
+      shell.setLayout(new FormLayout());
+      
+      createLogo();
+      createHeader();
+      if (configurer.getShowMenuBar())
+         createMenuBar();
+      
+      Composite page = new Composite(shell, SWT.NONE);
+      FormData fd = new FormData();
+      fd.top = new FormAttachment(configurer.getShowMenuBar() ? menuBar : header, 0, SWT.BOTTOM);
+      fd.left = new FormAttachment(0, 0);
+      fd.right = new FormAttachment(100, 0);
+      fd.bottom = new FormAttachment(100, 0);
+      page.setLayoutData(fd);
+      page.setLayout(new FillLayout());
+      
+      return page;
+   }
+   
+   /**
+    * Create logo
+    */
+   private void createLogo()
+   {
+      logo = new Label(shell, SWT.NONE);
+      final Image image = Activator.getImageDescriptor("icons/logo.png").createImage();
+      logo.setImage(image);
+      logo.addDisposeListener(new DisposeListener() {
+         @Override
+         public void widgetDisposed(DisposeEvent event)
+         {
+            image.dispose();
+         }
+      });
+
+      FormData fd = new FormData();
+      fd.top = new FormAttachment(0, 0);
+      fd.left = new FormAttachment(0, 0);
+      logo.setLayoutData(fd);
+   }
+   
+   /**
+    * Create header
+    */
+   private void createHeader()
+   {
+      header = new Composite(shell, SWT.NONE);
+      header.setData(RWT.CUSTOM_VARIANT, "header"); //$NON-NLS-1$
+      FormData fd = new FormData();
+      fd.top = new FormAttachment(0, 0);
+      fd.left = new FormAttachment(logo, 0, SWT.RIGHT);
+      fd.right = new FormAttachment(100, 0);
+      header.setLayoutData(fd);
+      header.setLayout(new FillLayout());
+      
+      new Label(header, SWT.NONE).setText("HEADER");
+   }
+   
+   /**
+    * Create menu bar
+    */
+   private void createMenuBar()
+   {
+      menuBar = new Composite(shell, SWT.NONE);
+      menuBar.setData(RWT.CUSTOM_VARIANT, "menuBar"); //$NON-NLS-1$
+      FormData fd = new FormData();
+      fd.top = new FormAttachment(header, 0, SWT.BOTTOM);
+      fd.left = new FormAttachment(logo, 0, SWT.RIGHT);
+      fd.right = new FormAttachment(100, 0);
+      fd.bottom = new FormAttachment(logo, 0, SWT.BOTTOM);
+      menuBar.setLayoutData(fd);
+      
+      RowLayout layout = new RowLayout();
+      layout.marginLeft = 30;
+      layout.marginRight = 0;
+      layout.marginTop = 3;
+      menuBar.setLayout(layout);
+      
+      MenuManager manager = window.getMenuBarManager();
+      manager.fill(menuBar);
+   }
+
+   /* (non-Javadoc)
+    * @see org.eclipse.rap.ui.interactiondesign.IWindowComposer#postWindowOpen(org.eclipse.ui.application.IWorkbenchWindowConfigurer)
+    */
+   @Override
+   public void postWindowOpen(IWorkbenchWindowConfigurer configurer)
+   {
+   }
+
+   /* (non-Javadoc)
+    * @see org.eclipse.rap.ui.interactiondesign.IWindowComposer#preWindowOpen(org.eclipse.ui.application.IWorkbenchWindowConfigurer)
+    */
+   @Override
+   public void preWindowOpen(IWorkbenchWindowConfigurer configurer)
+   {
+      configurer.setShowCoolBar(false);
+   }
+}
diff --git a/webui/webapp/Core/src/org/netxms/ui/eclipse/console/themes/material/layout/Header.java b/webui/webapp/Core/src/org/netxms/ui/eclipse/console/themes/material/layout/Header.java
new file mode 100644 (file)
index 0000000..4f662e2
--- /dev/null
@@ -0,0 +1,37 @@
+/**
+ * NetXMS - open source network management system
+ * Copyright (C) 2003-2016 Raden Solutions
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+package org.netxms.ui.eclipse.console.themes.material.layout;
+
+import org.eclipse.rap.ui.interactiondesign.layout.model.ILayoutSetInitializer;
+import org.eclipse.rap.ui.interactiondesign.layout.model.LayoutSet;
+
+/**
+ * @author victor
+ *
+ */
+public class Header implements ILayoutSetInitializer
+{
+   /* (non-Javadoc)
+    * @see org.eclipse.rap.ui.interactiondesign.layout.model.ILayoutSetInitializer#initializeLayoutSet(org.eclipse.rap.ui.interactiondesign.layout.model.LayoutSet)
+    */
+   @Override
+   public void initializeLayoutSet(LayoutSet layoutSet)
+   {
+   }
+}
diff --git a/webui/webapp/Core/src/org/netxms/ui/eclipse/console/themes/material/managers/MenuBarManager.java b/webui/webapp/Core/src/org/netxms/ui/eclipse/console/themes/material/managers/MenuBarManager.java
new file mode 100644 (file)
index 0000000..62dc129
--- /dev/null
@@ -0,0 +1,236 @@
+/**
+ * NetXMS - open source network management system
+ * Copyright (C) 2003-2016 Raden Solutions
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+package org.netxms.ui.eclipse.console.themes.material.managers;
+
+import java.util.ArrayList;
+import java.util.List;
+import org.eclipse.jface.action.IContributionItem;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.action.Separator;
+import org.eclipse.jface.action.SubContributionItem;
+import org.eclipse.rap.rwt.RWT;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.graphics.Rectangle;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.swt.widgets.MenuItem;
+import org.eclipse.swt.widgets.ToolBar;
+import org.eclipse.swt.widgets.ToolItem;
+
+/**
+ * Menu bar manager
+ */
+public class MenuBarManager extends MenuManager
+{
+   private static final String MENU_BAR_VARIANT = "menuBar"; //$NON-NLS-1$
+   private Composite menuParent;
+   private final List<ToolItem> toolItemList = new ArrayList<ToolItem>();
+   private ToolBar toolbar;
+
+   /* (non-Javadoc)
+    * @see org.eclipse.jface.action.MenuManager#fill(org.eclipse.swt.widgets.Composite)
+    */
+   @Override
+   public void fill(final Composite parent)
+   {
+      menuParent = parent;
+      toolbar = new ToolBar(parent, SWT.WRAP | SWT.RIGHT);
+      toolbar.setData(RWT.CUSTOM_VARIANT, MENU_BAR_VARIANT);
+      update(false, false);
+   }
+
+   /* (non-Javadoc)
+    * @see org.eclipse.jface.action.MenuManager#update(boolean, boolean)
+    */
+   @Override
+   protected void update(final boolean force, final boolean recursive)
+   {
+      super.update(force, recursive);
+      if (menuParent != null && (force || isDirty()))
+      {
+         disposeToolItems();
+         IContributionItem[] items = getItems();
+         if (items.length > 0 && menuParent != null)
+         {
+            for(int i = 0; i < items.length; i++)
+            {
+               IContributionItem item = items[i];
+               if (item.isVisible())
+               {
+                  makeEntry(item);
+               }
+            }
+         }
+         menuParent.layout(true, true);
+      }
+   }
+
+   /**
+    * 
+    */
+   private void disposeToolItems()
+   {
+      for(ToolItem item : toolItemList)
+      {
+         if (!item.isDisposed())
+         {
+            Object data = item.getData();
+            if (data != null && data instanceof Menu)
+            {
+               Menu menu = (Menu)data;
+               if (!menu.isDisposed())
+               {
+                  menu.dispose();
+               }
+            }
+            item.dispose();
+         }
+      }
+   }
+
+   /**
+    * @param item
+    */
+   private void makeEntry(final IContributionItem item)
+   {
+      IContributionItem tempItem = null;
+      if (item instanceof SubContributionItem)
+      {
+         SubContributionItem subItem = (SubContributionItem)item;
+         tempItem = subItem.getInnerItem();
+      }
+      else if (item instanceof MenuManager)
+      {
+         tempItem = item;
+      }
+      if (tempItem != null && tempItem instanceof MenuManager)
+      {
+         final MenuManager manager = (MenuManager)tempItem;
+         int style = extractStyle(manager);
+         final ToolItem toolItem = new ToolItem(toolbar, style);
+         toolItem.setText(manager.getMenuText());
+         toolItem.setData(RWT.CUSTOM_VARIANT, MENU_BAR_VARIANT);
+         createMenu(manager, toolItem);
+         // needed to clear all controls in case of an update
+         toolItemList.add(toolItem);
+      }
+   }
+
+   /**
+    * @param manager
+    * @return
+    */
+   private int extractStyle(MenuManager manager)
+   {
+      int style = SWT.NONE;
+      if (manager.getItems() != null && manager.getItems().length > 0)
+      {
+         style = SWT.DROP_DOWN;
+      }
+      return style;
+   }
+
+   /**
+    * @param manager
+    * @param toolItem
+    */
+   private void createMenu(final MenuManager manager, final ToolItem toolItem)
+   {
+      final Menu menu = new Menu(menuParent);
+      toolItem.setData(menu);
+      menu.setData(RWT.CUSTOM_VARIANT, MENU_BAR_VARIANT);
+      toolItem.addSelectionListener(new SelectionAdapter() {
+         @Override
+         public void widgetSelected(final SelectionEvent e)
+         {
+            // cleanup the menu
+            MenuItem[] menuItems = menu.getItems();
+            for(int i = 0; i < menuItems.length; i++)
+            {
+               menuItems[i].dispose();
+            }
+            hookMenuToToolItem(manager, menu);
+            // set the menu position
+            Display display = toolItem.getDisplay();
+            Rectangle bounds = toolItem.getBounds();
+            int leftIndent = bounds.x;
+            int topIndent = bounds.y + bounds.height;
+            Point indent = new Point(leftIndent, topIndent);
+            Point menuLocation = display.map(toolbar, toolbar.getShell(), indent);
+            menu.setLocation(menuLocation);
+            // style the menuitems and show the menu
+            menu.setData(RWT.CUSTOM_VARIANT, MENU_BAR_VARIANT);
+            styleMenuItems(menu);
+            menu.setVisible(true);
+         }
+
+         private void hookMenuToToolItem(MenuManager manager, Menu menu)
+         {
+            IContributionItem[] contribItems = manager.getItems();
+            if (contribItems != null && contribItems.length > 0)
+            {
+               for(int i = 0; i < contribItems.length; i++)
+               {
+                  if (contribItems[i].isVisible())
+                  {
+                     if (i > 0 || !(contribItems[i] instanceof Separator))
+                     {
+                        contribItems[i].fill(menu, -1);
+                     }
+                  }
+               }
+            }
+         }
+
+      });
+   }
+
+   /**
+    * @param menu
+    */
+   private void styleMenuItems(Menu menu)
+   {
+      MenuItem[] items = menu.getItems();
+      if (items != null && items.length > 0)
+      {
+         for(int i = 0; i < items.length; i++)
+         {
+            items[i].setData(RWT.CUSTOM_VARIANT, MENU_BAR_VARIANT);
+            Menu subMenu = items[i].getMenu();
+            if (subMenu != null)
+            {
+               subMenu.setData(RWT.CUSTOM_VARIANT, MENU_BAR_VARIANT);
+               styleMenuItems(subMenu);
+            }
+         }
+      }
+   }
+
+   /**
+    * @return
+    */
+   public ToolBar getMenuToolBar()
+   {
+      return toolbar;
+   }
+}
index 8b7b3fa..dd807c9 100644 (file)
@@ -45,15 +45,15 @@ Display {
   rwt-selectionmarker-color: #fec83c;
   rwt-infobackground-color: #ffffff;
 
-  rwt-error-image: url( theme/resources/dialog/error.png );
-  rwt-information-image: url( theme/resources/dialog/information.png );
-  rwt-question-image: url( theme/resources/dialog/question.png );
-  rwt-warning-image: url( theme/resources/dialog/warning.png );
-  rwt-working-image: url( theme/resources/dialog/information.png );
+  rwt-error-image: url( theme/classic.resources/dialog/error.png );
+  rwt-information-image: url( theme/classic.resources/dialog/information.png );
+  rwt-question-image: url( theme/classic.resources/dialog/question.png );
+  rwt-warning-image: url( theme/classic.resources/dialog/warning.png );
+  rwt-working-image: url( theme/classic.resources/dialog/information.png );
   
   rwt-fontlist: 12px "Segoe UI", "Liberation Sans", Verdana, "Lucida Sans", Arial, Helvetica, "Liberation Mono", "Courier New";
   
-  background-image: url( theme/resources/display/browser_bg.png );
+  background-image: url( theme/classic.resources/display/browser_bg.png );
   font: 12px "Segoe UI", "Liberation Sans", Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
 }
 
@@ -196,59 +196,59 @@ Button[CHECK][BORDER], Button[RADIO][BORDER] {
 }
 
 Button-CheckIcon {
-  background-image: url( theme/resources/button/check-unselected.png );
+  background-image: url( theme/classic.resources/button/check-unselected.png );
 }
 
 Button-CheckIcon:hover {
-  background-image: url( theme/resources/button/check-unselected-hover.png );
+  background-image: url( theme/classic.resources/button/check-unselected-hover.png );
 }
 
 Button-CheckIcon:selected {
-  background-image: url( theme/resources/button/check-selected.png );
+  background-image: url( theme/classic.resources/button/check-selected.png );
 }
 
 Button-CheckIcon:selected:hover {
-  background-image: url( theme/resources/button/check-selected-hover.png );
+  background-image: url( theme/classic.resources/button/check-selected-hover.png );
 }
 
 Button-CheckIcon:selected:grayed {
-  background-image: url( theme/resources/button/check-grayed.png );
+  background-image: url( theme/classic.resources/button/check-grayed.png );
 }
 
 Button-CheckIcon:selected:grayed:hover {
-  background-image: url( theme/resources/button/check-grayed-hover.png );
+  background-image: url( theme/classic.resources/button/check-grayed-hover.png );
 }
 
 Button-RadioIcon {
-  background-image: url( theme/resources/button/radio-unselected.png );
+  background-image: url( theme/classic.resources/button/radio-unselected.png );
 }
 
 Button-RadioIcon:hover {
-  background-image: url( theme/resources/button/radio-unselected-hover.png );
+  background-image: url( theme/classic.resources/button/radio-unselected-hover.png );
 }
 
 Button-RadioIcon:selected {
-  background-image: url( theme/resources/button/radio-selected.png );
+  background-image: url( theme/classic.resources/button/radio-selected.png );
 }
 
 Button-RadioIcon:selected:hover {
-  background-image: url( theme/resources/button/radio-selected-hover.png );
+  background-image: url( theme/classic.resources/button/radio-selected-hover.png );
 }
 
 Button-ArrowIcon[UP] {
-  background-image: url( theme/resources/button/arrow-up.png );
+  background-image: url( theme/classic.resources/button/arrow-up.png );
 }
 
 Button-ArrowIcon[DOWN] {
-  background-image: url( theme/resources/button/arrow-down.png );
+  background-image: url( theme/classic.resources/button/arrow-down.png );
 }
 
 Button-ArrowIcon[LEFT] {
-  background-image: url( theme/resources/button/arrow-left.png );
+  background-image: url( theme/classic.resources/button/arrow-left.png );
 }
 
 Button-ArrowIcon[RIGHT] {
-  background-image: url( theme/resources/button/arrow-right.png );
+  background-image: url( theme/classic.resources/button/arrow-right.png );
 }
 
 Button-FocusIndicator[ARROW], Button-FocusIndicator[PUSH], Button-FocusIndicator[TOGGLE] {
@@ -315,11 +315,11 @@ Combo-Button:pressed {
 }
 
 Combo-Button-Icon {
-  background-image: url( theme/resources/ccombo/down.png );
+  background-image: url( theme/classic.resources/ccombo/down.png );
 } 
 
 Combo-Button-Icon:hover {
-  background-image: url( theme/resources/ccombo/down-hover.png );
+  background-image: url( theme/classic.resources/ccombo/down-hover.png );
 }
 
 Combo-List {
@@ -349,7 +349,7 @@ CoolBar {
 CoolItem-Handle {
   background-color: #f0f0f0;
   border: 1px outset;
-  width: 4px;
+  width: 1px;
 }
 
 /* CTabFolder default theme */
@@ -384,11 +384,11 @@ CTabItem:disabled {
 }
 
 CTabFolder-DropDownButton-Icon {
-  background-image: url( theme/resources/ctabfolder/ctabfolder-dropdown.png );
+  background-image: url( theme/classic.resources/ctabfolder/ctabfolder-dropdown.png );
 }
 
 CTabFolder-DropDownButton-Icon:hover {
-  background-image: url( theme/resources/ctabfolder/ctabfolder-dropdown-hover.png );
+  background-image: url( theme/classic.resources/ctabfolder/ctabfolder-dropdown-hover.png );
 }
 
 /* Group default theme */
@@ -577,15 +577,15 @@ MenuItem:pressed {
 }
 
 MenuItem-CheckIcon {
-  background-image: url( theme/resources/menu/checkbox.gif );
+  background-image: url( theme/classic.resources/menu/checkbox.gif );
 }
 
 MenuItem-RadioIcon {
-  background-image: url( theme/resources/menu/radiobutton.gif );
+  background-image: url( theme/classic.resources/menu/radiobutton.gif );
 }
 
 MenuItem-CascadeIcon {
-  background-image: url( theme/resources/menu/arrow.gif );
+  background-image: url( theme/classic.resources/menu/arrow.gif );
 }
 
 /* ProgressBar default theme */
@@ -676,79 +676,79 @@ Shell-Titlebar:inactive {
 /* Minimize button */
 
 Shell-MinButton {
-  background-image: url( theme/resources/window/shell-min.png );
+  background-image: url( theme/classic.resources/window/shell-min.png );
   margin: 0px 6px 0px 0px;
 }
 
 Shell-MinButton:hover {
-  background-image: url( theme/resources/window/shell-min-hover.png );
+  background-image: url( theme/classic.resources/window/shell-min-hover.png );
 }
 
 Shell-MinButton:inactive {
-  background-image: url( theme/resources/window/shell-min.png );
+  background-image: url( theme/classic.resources/window/shell-min.png );
   margin: 0px 6px 0px 0px;
 }
 
 Shell-MinButton:inactive:hover {
-  background-image: url( theme/resources/window/shell-min-hover.png );
+  background-image: url( theme/classic.resources/window/shell-min-hover.png );
 }
 
 /* Maximize button */
 
 Shell-MaxButton {
-  background-image: url( theme/resources/window/shell-max.png );
+  background-image: url( theme/classic.resources/window/shell-max.png );
   margin: 0px 6px 0px 0px;
 }
 
 Shell-MaxButton:hover {
-  background-image: url( theme/resources/window/shell-max-hover.png );
+  background-image: url( theme/classic.resources/window/shell-max-hover.png );
 }
 
 Shell-MaxButton:inactive {
-  background-image: url( theme/resources/window/shell-max.png );
+  background-image: url( theme/classic.resources/window/shell-max.png );
   margin: 0px 6px 0px 0px;
 }
 
 Shell-MaxButton:inactive:hover {
-  background-image: url( theme/resources/window/shell-max-hover.png );
+  background-image: url( theme/classic.resources/window/shell-max-hover.png );
 }
 
 /* Restore button */
 
 Shell-MaxButton:maximized {
-  background-image: url( theme/resources/window/shell-restore.png );
+  background-image: url( theme/classic.resources/window/shell-restore.png );
 }
 
 Shell-MaxButton:maximized:hover {
-  background-image: url( theme/resources/window/shell-restore-hover.png );
+  background-image: url( theme/classic.resources/window/shell-restore-hover.png );
 }
 
 Shell-MaxButton:maximized:inactive {
-  background-image: url( theme/resources/window/shell-restore.png );
+  background-image: url( theme/classic.resources/window/shell-restore.png );
 }
 
 Shell-MaxButton:maximized:inactive:hover {
-  background-image: url( theme/resources/window/shell-restore-hover.png );
+  background-image: url( theme/classic.resources/window/shell-restore-hover.png );
 }
 
 /* Close button */
 
 Shell-CloseButton {
-  background-image: url( theme/resources/window/shell-close.png );
+  background-image: url( theme/classic.resources/window/shell-close.png );
   margin: 0px 5px 0px 0px;
 }
 
 Shell-CloseButton:hover {
-  background-image: url( theme/resources/window/shell-close-hover.png );
+  background-image: url( theme/classic.resources/window/shell-close-hover.png );
 }
 
 Shell-CloseButton:inactive {
-  background-image: url( theme/resources/window/shell-close.png );
+  background-image: url( theme/classic.resources/window/shell-close.png );
   margin: 0px 5px 0px 0px;
 }
 
 Shell-CloseButton:inactive:hover {
-  background-image: url( theme/resources/window/shell-close-hover.png );
+  background-image: url( theme/classic.resources/window/shell-close-hover.png );
 }
 
 /* Spinner default theme */
@@ -796,11 +796,11 @@ Spinner-UpButton:pressed {
 }
 
 Spinner-UpButton-Icon {
-  background-image: url( theme/resources/spinner/up.png );
+  background-image: url( theme/classic.resources/spinner/up.png );
 }
 
 Spinner-UpButton-Icon:hover {
-  background-image: url( theme/resources/spinner/up-hover.png );
+  background-image: url( theme/classic.resources/spinner/up-hover.png );
 }
 
 Spinner-DownButton {
@@ -827,11 +827,11 @@ Spinner-DownButton:pressed {
 }
 
 Spinner-DownButton-Icon {
-  background-image: url( theme/resources/spinner/down.png );
+  background-image: url( theme/classic.resources/spinner/down.png );
 }
 
 Spinner-DownButton-Icon:hover {
-  background-image: url( theme/resources/spinner/down-hover.png );
+  background-image: url( theme/classic.resources/spinner/down-hover.png );
 }
 
 /* TabFolder default theme */
@@ -939,11 +939,11 @@ TableColumn-SortIndicator {
 }
 
 TableColumn-SortIndicator:up {
-  background-image: url( theme/resources/column/sort-indicator-up.png );
+  background-image: url( theme/classic.resources/column/sort-indicator-up.png );
 }
 
 TableColumn-SortIndicator:down {
-  background-image: url( theme/resources/column/sort-indicator-down.png );
+  background-image: url( theme/classic.resources/column/sort-indicator-down.png );
 }
 
 Table-Cell {
@@ -962,27 +962,27 @@ Table-Checkbox {
   */
   width: 21px;
   margin: 0px;
-  background-image: url( theme/resources/button/check-unselected.png );
+  background-image: url( theme/classic.resources/button/check-unselected.png );
 }
 
 Table-Checkbox:hover {
-  background-image: url( theme/resources/button/check-unselected-hover.png );
+  background-image: url( theme/classic.resources/button/check-unselected-hover.png );
 }
 
 Table-Checkbox:checked {
-  background-image: url( theme/resources/button/check-selected.png );
+  background-image: url( theme/classic.resources/button/check-selected.png );
 }
 
 Table-Checkbox:checked:hover {
-  background-image: url( theme/resources/button/check-selected-hover.png );
+  background-image: url( theme/classic.resources/button/check-selected-hover.png );
 }
 
 Table-Checkbox:checked:grayed {
-  background-image: url( theme/resources/button/check-grayed.png );
+  background-image: url( theme/classic.resources/button/check-grayed.png );
 }
 
 Table-Checkbox:checked:grayed:hover {
-  background-image: url( theme/resources/button/check-grayed-hover.png );
+  background-image: url( theme/classic.resources/button/check-grayed-hover.png );
 }
 
 /* Text default theme */
@@ -1094,11 +1094,11 @@ ToolItem:pressed, ToolItem:selected {
   border: 1px solid #a4a4a4;
   border-radius: 2px;
   padding: 3px 2px 1px 4px;
-  background-image: url( theme/resources/toolbar/dotted_white.gif );
+  background-image: url( theme/classic.resources/toolbar/dotted_white.gif );
 }
 
 ToolItem-DropDownIcon {
-  background-image: url( theme/resources/arrows/down.gif );
+  background-image: url( theme/classic.resources/arrows/down.gif );
   border: none;
 }
 
@@ -1178,11 +1178,11 @@ TreeColumn-SortIndicator {
 }
 
 TreeColumn-SortIndicator:up {
-  background-image: url( theme/resources/column/sort-indicator-up.png );
+  background-image: url( theme/classic.resources/column/sort-indicator-up.png );
 }
 
 TreeColumn-SortIndicator:down {
-  background-image: url( theme/resources/column/sort-indicator-down.png );
+  background-image: url( theme/classic.resources/column/sort-indicator-down.png );
 }
 
 Tree-Cell {
@@ -1196,27 +1196,27 @@ Tree-GridLine {
 
 Tree-Checkbox {
   margin: 0px 2px 0px 0px;
-  background-image: url( theme/resources/button/check-unselected.png );
+  background-image: url( theme/classic.resources/button/check-unselected.png );
 }
 
 Tree-Checkbox:hover {
-  background-image: url( theme/resources/button/check-unselected-hover.png );
+  background-image: url( theme/classic.resources/button/check-unselected-hover.png );
 }
 
 Tree-Checkbox:checked {
-  background-image: url( theme/resources/button/check-selected.png );
+  background-image: url( theme/classic.resources/button/check-selected.png );
 }
 
 Tree-Checkbox:checked:hover {
-  background-image: url( theme/resources/button/check-selected-hover.png );
+  background-image: url( theme/classic.resources/button/check-selected-hover.png );
 }
 
 Tree-Checkbox:checked:grayed {
-  background-image: url( theme/resources/button/check-grayed.png );
+  background-image: url( theme/classic.resources/button/check-grayed.png );
 }
 
 Tree-Checkbox:checked:grayed:hover {
-  background-image: url( theme/resources/button/check-grayed-hover.png );
+  background-image: url( theme/classic.resources/button/check-grayed-hover.png );
 }
 
 Tree-Indent {
@@ -1225,19 +1225,19 @@ Tree-Indent {
 }
 
 Tree-Indent:collapsed {
-  background-image: url( theme/resources/tree/tree-collapsed.png );
+  background-image: url( theme/classic.resources/tree/tree-collapsed.png );
 }
 
 Tree-Indent:collapsed:hover {
-  background-image: url( theme/resources/tree/tree-collapsed-hover.png );
+  background-image: url( theme/classic.resources/tree/tree-collapsed-hover.png );
 }
 
 Tree-Indent:expanded {
-  background-image: url( theme/resources/tree/tree-expanded.png );
+  background-image: url( theme/classic.resources/tree/tree-expanded.png );
 }
 
 Tree-Indent:expanded:hover {
-  background-image: url( theme/resources/tree/tree-expanded-hover.png );
+  background-image: url( theme/classic.resources/tree/tree-expanded-hover.png );
 }
 
 Tree-Indent:line {
@@ -1249,19 +1249,19 @@ Tree-Indent:first {
 }
 
 Tree-Indent:first:collapsed {
-  background-image: url( theme/resources/tree/tree-collapsed.png );
+  background-image: url( theme/classic.resources/tree/tree-collapsed.png );
 }
 
 Tree-Indent:first:collapsed:hover {
-  background-image: url( theme/resources/tree/tree-collapsed-hover.png );
+  background-image: url( theme/classic.resources/tree/tree-collapsed-hover.png );
 }
 
 Tree-Indent:first:expanded {
-  background-image: url( theme/resources/tree/tree-expanded.png );
+  background-image: url( theme/classic.resources/tree/tree-expanded.png );
 }
 
 Tree-Indent:first:expanded:hover {
-  background-image: url( theme/resources/tree/tree-expanded-hover.png );
+  background-image: url( theme/classic.resources/tree/tree-expanded-hover.png );
 }
 
 Tree-Indent:last {
@@ -1269,19 +1269,19 @@ Tree-Indent:last {
 }
 
 Tree-Indent:last:collapsed {
-  background-image: url( theme/resources/tree/tree-collapsed.png );
+  background-image: url( theme/classic.resources/tree/tree-collapsed.png );
 }
 
 Tree-Indent:last:collapsed:hover {
-  background-image: url( theme/resources/tree/tree-collapsed-hover.png );
+  background-image: url( theme/classic.resources/tree/tree-collapsed-hover.png );
 }
 
 Tree-Indent:last:expanded {
-  background-image: url( theme/resources/tree/tree-expanded.png );
+  background-image: url( theme/classic.resources/tree/tree-expanded.png );
 }
 
 Tree-Indent:last:expanded:hover {
-  background-image: url( theme/resources/tree/tree-expanded-hover.png );
+  background-image: url( theme/classic.resources/tree/tree-expanded-hover.png );
 }
 
 Tree-Indent:first:last {
@@ -1289,19 +1289,19 @@ Tree-Indent:first:last {
 }
 
 Tree-Indent:first:last:collapsed {
-  background-image: url( theme/resources/tree/tree-collapsed.png );
+  background-image: url( theme/classic.resources/tree/tree-collapsed.png );
 }
 
 Tree-Indent:first:last:collapsed:hover {
-  background-image: url( theme/resources/tree/tree-collapsed-hover.png );
+  background-image: url( theme/classic.resources/tree/tree-collapsed-hover.png );
 }
 
 Tree-Indent:first:last:expanded {
-  background-image: url( theme/resources/tree/tree-expanded.png );
+  background-image: url( theme/classic.resources/tree/tree-expanded.png );
 }
 
 Tree-Indent:first:last:expanded:hover {
-  background-image: url( theme/resources/tree/tree-expanded-hover.png );
+  background-image: url( theme/classic.resources/tree/tree-expanded-hover.png );
 }
 
 /* Scale default theme */
@@ -1387,39 +1387,39 @@ DateTime-Calendar-Navbar {
 }
 
 DateTime-Calendar-PreviousMonthButton {
-  background-image: url( theme/resources/calendar/lastMonth.png );
+  background-image: url( theme/classic.resources/calendar/lastMonth.png );
   cursor: default;
 }
 
 DateTime-Calendar-PreviousMonthButton:hover {
-  background-image: url( theme/resources/calendar/lastMonth-hover.png );
+  background-image: url( theme/classic.resources/calendar/lastMonth-hover.png );
 }
 
 DateTime-Calendar-NextMonthButton {
-  background-image: url( theme/resources/calendar/nextMonth.png );
+  background-image: url( theme/classic.resources/calendar/nextMonth.png );
   cursor: default;
 }
 
 DateTime-Calendar-NextMonthButton:hover {
-  background-image: url( theme/resources/calendar/nextMonth-hover.png );
+  background-image: url( theme/classic.resources/calendar/nextMonth-hover.png );
 }
 
 DateTime-Calendar-PreviousYearButton {
-  background-image: url( theme/resources/calendar/lastYear.png );
+  background-image: url( theme/classic.resources/calendar/lastYear.png );
   cursor: default;
 }
 
 DateTime-Calendar-PreviousYearButton:hover {
-  background-image: url( theme/resources/calendar/lastYear-hover.png );
+  background-image: url( theme/classic.resources/calendar/lastYear-hover.png );
 }
 
 DateTime-Calendar-NextYearButton {
-  background-image: url( theme/resources/calendar/nextYear.png );
+  background-image: url( theme/classic.resources/calendar/nextYear.png );
   cursor: default;
 }
 
 DateTime-Calendar-NextYearButton:hover {
-  background-image: url( theme/resources/calendar/nextYear-hover.png );
+  background-image: url( theme/classic.resources/calendar/nextYear-hover.png );
 }
 
 DateTime-UpButton {
@@ -1446,11 +1446,11 @@ DateTime-UpButton:pressed {
 }
 
 DateTime-UpButton-Icon {
-  background-image: url( theme/resources/spinner/up.png );
+  background-image: url( theme/classic.resources/spinner/up.png );
 }
 
 DateTime-UpButton-Icon:hover {
-  background-image: url( theme/resources/spinner/up-hover.png );
+  background-image: url( theme/classic.resources/spinner/up-hover.png );
 }
 
 DateTime-DownButton {
@@ -1493,19 +1493,19 @@ DateTime-DropDownButton {
 }
 
 DateTime-DropDownButton-Icon {
-  background-image: url( theme/resources/spinner/down.png );
+  background-image: url( theme/classic.resources/spinner/down.png );
 }
 
 DateTime-DropDownButton-Icon:hover {
-  background-image: url( theme/resources/spinner/down-hover.png );
+  background-image: url( theme/classic.resources/spinner/down-hover.png );
 }
 
 DateTime-DownButton-Icon {
-  background-image: url( theme/resources/spinner/down.png );
+  background-image: url( theme/classic.resources/spinner/down.png );
 }
 
 DateTime-DownButton-Icon:hover {
-  background-image: url( theme/resources/spinner/down-hover.png );
+  background-image: url( theme/classic.resources/spinner/down-hover.png );
 }
 
 
@@ -1548,19 +1548,19 @@ ExpandItem-Header:disabled {
 }
 
 ExpandItem-Button {
-  background-image: url( theme/resources/expanditem/expanditem-expand.png );
+  background-image: url( theme/classic.resources/expanditem/expanditem-expand.png );
 }
 
 ExpandItem-Button:hover {
-  background-image: url( theme/resources/expanditem/expanditem-expand-hover.png );
+  background-image: url( theme/classic.resources/expanditem/expanditem-expand-hover.png );
 }
 
 ExpandItem-Button:expanded {
-  background-image: url( theme/resources/expanditem/expanditem-collapse.png );
+  background-image: url( theme/classic.resources/expanditem/expanditem-collapse.png );
 }
 
 ExpandItem-Button:expanded:hover {
-  background-image: url( theme/resources/expanditem/expanditem-collapse-hover.png );
+  background-image: url( theme/classic.resources/expanditem/expanditem-collapse-hover.png );
 }
 
 /* Sash default theme */
@@ -1706,35 +1706,35 @@ Slider-DownButton[VERTICAL] {
 /* Button Icons */
 
 Slider-UpButton-Icon[HORIZONTAL] {
-  background-image: url( theme/resources/slider/right.png );
+  background-image: url( theme/classic.resources/slider/right.png );
 }
 
 Slider-UpButton-Icon[HORIZONTAL]:hover {
-  background-image: url( theme/resources/slider/right-hover.png );
+  background-image: url( theme/classic.resources/slider/right-hover.png );
 }
 
 Slider-UpButton-Icon[VERTICAL] {
-  background-image: url( theme/resources/spinner/down.png );
+  background-image: url( theme/classic.resources/spinner/down.png );
 }
 
 Slider-UpButton-Icon[VERTICAL]:hover {
-  background-image: url( theme/resources/spinner/down-hover.png );
+  background-image: url( theme/classic.resources/spinner/down-hover.png );
 }
 
 Slider-DownButton-Icon[HORIZONTAL] {
-  background-image: url( theme/resources/slider/left.png );
+  background-image: url( theme/classic.resources/slider/left.png );
 }
 
 Slider-DownButton-Icon[HORIZONTAL]:hover {
-  background-image: url( theme/resources/slider/left-hover.png );
+  background-image: url( theme/classic.resources/slider/left-hover.png );
 }
 
 Slider-DownButton-Icon[VERTICAL] {
-  background-image: url( theme/resources/spinner/up.png );
+  background-image: url( theme/classic.resources/spinner/up.png );
 }
 
 Slider-DownButton-Icon[VERTICAL]:hover {
-  background-image: url( theme/resources/spinner/up-hover.png );
+  background-image: url( theme/classic.resources/spinner/up-hover.png );
 }
 
 /* ToolTip default theme */
@@ -1758,15 +1758,15 @@ ToolTip {
 }
 
 ToolTip-Image[ICON_ERROR] {
-  background-image: url( theme/resources/tooltip/error.png );
+  background-image: url( theme/classic.resources/tooltip/error.png );
 }
 
 ToolTip-Image[ICON_INFORMATION] {
-  background-image: url( theme/resources/tooltip/information.png );
+  background-image: url( theme/classic.resources/tooltip/information.png );
 }
 
 ToolTip-Image[ICON_WARNING] {
-  background-image: url( theme/resources/tooltip/warning.png );
+  background-image: url( theme/classic.resources/tooltip/warning.png );
 }
 
 ToolTip-Text {
@@ -1826,11 +1826,11 @@ CCombo-Button:pressed {
 }
 
 CCombo-Button-Icon {
-  background-image: url( theme/resources/ccombo/down.png );
+  background-image: url( theme/classic.resources/ccombo/down.png );
 } 
 
 CCombo-Button-Icon:hover {
-  background-image: url( theme/resources/ccombo/down-hover.png );
+  background-image: url( theme/classic.resources/ccombo/down-hover.png );
 }
 
 CCombo-Button[FLAT] {
@@ -1939,43 +1939,43 @@ ScrollBar-DownButton[VERTICAL] {
 /* Icons */
 
 ScrollBar-Thumb-Icon[VERTICAL] {
-  background-image: url( theme/resources/scrollbar/v-knob.png );
+  background-image: url( theme/classic.resources/scrollbar/v-knob.png );
 }
 
 ScrollBar-Thumb-Icon[HORIZONTAL] {
-  background-image: url( theme/resources/scrollbar/h-knob.png );
+  background-image: url( theme/classic.resources/scrollbar/h-knob.png );
 }
 
 ScrollBar-UpButton-Icon[VERTICAL] {
-  background-image: url( theme/resources/spinner/down.png );
+  background-image: url( theme/classic.resources/spinner/down.png );
 }
 
 ScrollBar-UpButton-Icon[VERTICAL]:hover {
-  background-image: url( theme/resources/spinner/down-hover.png );
+  background-image: url( theme/classic.resources/spinner/down-hover.png );
 }
 
 ScrollBar-UpButton-Icon[HORIZONTAL] {
-  background-image: url( theme/resources/scrollbar/right.png );
+  background-image: url( theme/classic.resources/scrollbar/right.png );
 }
 
 ScrollBar-UpButton-Icon[HORIZONTAL]:hover {
-  background-image: url( theme/resources/scrollbar/right-hover.png );
+  background-image: url( theme/classic.resources/scrollbar/right-hover.png );
 }
 
 ScrollBar-DownButton-Icon[VERTICAL] {
-  background-image: url( theme/resources/spinner/up.png );
+  background-image: url( theme/classic.resources/spinner/up.png );
 }
 
 ScrollBar-DownButton-Icon[VERTICAL]:hover {
-  background-image: url( theme/resources/spinner/up-hover.png );
+  background-image: url( theme/classic.resources/spinner/up-hover.png );
 }
 
 ScrollBar-DownButton-Icon[HORIZONTAL] {
-  background-image: url( theme/resources/scrollbar/left.png );
+  background-image: url( theme/classic.resources/scrollbar/left.png );
 }
 
 ScrollBar-DownButton-Icon[HORIZONTAL]:hover {
-  background-image: url( theme/resources/scrollbar/left-hover.png );
+  background-image: url( theme/classic.resources/scrollbar/left-hover.png );
 }
 
 /* Gradients */
@@ -2163,5 +2163,5 @@ FileUpload-FocusIndicator {
 
 SystemMessage-DisplayOverlay {
   background-color: rgba( 224, 224, 224, 0.7 );
-  background-image: url( theme/resources/display/loading.gif );
+  background-image: url( theme/classic.resources/display/loading.gif );
 }
diff --git a/webui/webapp/Core/theme/material.css b/webui/webapp/Core/theme/material.css
new file mode 100644 (file)
index 0000000..afdb1a5
--- /dev/null
@@ -0,0 +1,2529 @@
+/*******************************************************************************
+ * Copyright (c) 2012, 2016 EclipseSource and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    EclipseSource - initial API and implementation
+ ******************************************************************************/
+
+/* Default theme for all widgets */
+
+* {
+  color: #4a4a4a;
+  background-color: #fff;
+  background-image: none;
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+}
+
+*:disabled {
+  color: #CFCFCF;
+}
+
+Widget-Badge {
+  background-color: #dd0000;
+  border: none;
+  border-radius: 10px;
+  font: 10px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  color: #ffffff;
+}
+
+Widget-ToolTip {
+  padding: 10px;
+  background-color: rgb(32, 31, 27);
+  background-image: none;
+  border: none;
+  border-radius: 1px;
+  font: 12px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  color: #e0e0e0;
+  opacity: 0.9;
+  animation: fadeIn 150ms ease-in, fadeOut 150ms ease-in;
+  box-shadow: none;
+  text-align: center;
+}
+
+Widget-ToolTip-Pointer {
+  background-image: none;
+}
+
+Widget-ToolTip-Pointer:up {
+  background-image : url( theme/material.resources/arrows/tooltip-up.png );
+}
+
+Widget-ToolTip-Pointer:down {
+  background-image : url( theme/material.resources/arrows/tooltip-down.png );
+}
+
+Widget-ToolTip-Pointer:left {
+  background-image : url( theme/material.resources/arrows/tooltip-left.png );
+}
+
+Widget-ToolTip-Pointer:right {
+  background-image : url( theme/material.resources/arrows/tooltip-right.png );
+}
+
+Display {
+  rwt-shadow-color: #a7a6aa;
+  rwt-highlight-color: #ffffff;
+  rwt-darkshadow-color: #85878c;
+  rwt-lightshadow-color: #dcdfe4;
+  rwt-thinborder-color: #aca899;
+  rwt-selectionmarker-color: #fec83c;
+  rwt-infobackground-color: #ffffff;
+
+  rwt-error-image: url( theme/material.resources/dialog/error.png );
+  rwt-information-image: url( theme/material.resources/dialog/information.png );
+  rwt-question-image: url( theme/material.resources/dialog/question.png );
+  rwt-warning-image: url( theme/material.resources/dialog/warning.png );
+  rwt-working-image: url( theme/material.resources/dialog/information.png );
+
+  rwt-fontlist: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Corbel, Calibri, Tahoma, 'Lucida Sans Unicode', Verdana;
+
+  background-image: url( theme/material.resources/display/browser_bg.png );
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+}
+
+SystemMessage-DisplayOverlay {
+  background-color: rgba( 128, 128, 128, 0.2 );
+  background-image: url( theme/material.resources/display/loading.gif );
+}
+
+ErrorBox-Titlebar {
+  font: bold 14px Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  color: white;
+  background-color: #406796;
+}
+
+ErrorBox {
+  border: 1px solid #3B5998;
+  font: 14px Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  color: #4a4a4a;
+  background-color: white;
+}
+
+/* Default theme for all controls */
+
+* {
+  border: none;
+  padding: 0px;
+}
+
+*[BORDER] {
+  border: 1px solid #a4a4a4;
+}
+
+/* Default theme for all composites */
+
+Composite {
+  padding: 0;
+  opacity: 1;
+  background-color: #ffffff;
+  background-image: none;
+  background-repeat: repeat;
+  background-position: left top;
+  border: none;
+  box-shadow: none;
+  animation: none;
+}
+
+Composite[BORDER] {
+  border: 1px solid #bdbdbd;
+  border-radius: 2px;
+}
+
+/* Button default theme */
+
+Button {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  background-image: none;
+  background-repeat: repeat;
+  background-position: left top;
+  border: none;
+  border-radius: 2px;
+  padding: 6px 15px;
+  spacing: 2px;
+  cursor: default;
+  animation: none;
+  color: #4a4a4a;
+  background-color: #ffffff;
+  opacity: 1;
+  text-shadow: none;
+  box-shadow: none;
+  text-decoration: none;
+  box-shadow: none;
+}
+
+Button[PUSH],
+Button[TOGGLE],
+Button[PUSH][BORDER],
+Button[TOGGLE][BORDER],
+Button[PUSH][FLAT],
+Button[TOGGLE][FLAT] {
+  border: 1px solid #bdbdbd;
+  border-radius: 2px;
+  padding: 6px 15px;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #f9f9f9 ),
+    to( #e4e4e4 )
+  );
+  animation: none;
+  cursor: pointer;
+  text-shadow: 0 1px 0 #ffffff;
+}
+
+Button[ARROW],
+Button[ARROW][BORDER],
+Button[ARROW][FLAT] {
+  border: 1px solid #bdbdbd;
+  border-radius: 2px;
+  padding: 10px;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #f9f9f9 ),
+    to( #e4e4e4 )
+  );
+  cursor: pointer;
+}
+
+Button[ARROW]:default,
+Button[PUSH]:default,
+Button[TOGGLE]:default {
+  background-color: #416693;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #e2eefc ),
+    to( #d4d4d4 )
+  );
+  border: 1px solid #a0b3ca;
+}
+
+Button[ARROW]:disabled,
+Button[PUSH]:disabled,
+Button[TOGGLE]:disabled,
+Button[TOGGLE]:selected:disabled {
+  cursor: default;
+  color: #d2d2d2;
+  background-image: none;
+  background-color: #fafafa;
+  border: 1px solid #d2d2d2;
+}
+
+Button[ARROW]:hover,
+Button[PUSH]:hover,
+Button[TOGGLE]:hover {
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #eaeaea ),
+    to( #d5d5d5 )
+  );
+}
+
+Button[ARROW]:pressed,
+Button[PUSH]:pressed,
+Button[TOGGLE]:pressed {
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #d5d5d5 ),
+    to( #eaeaea )
+  );
+}
+
+Button[TOGGLE]:selected {
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #d5d5d5 ),
+    to( #eaeaea )
+  );
+}
+
+Button[TOGGLE]:selected:hover {
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #d5d5d5 ),
+    to( #eaeaea )
+  );
+}
+
+Button[CHECK],
+Button[RADIO] {
+  padding: 3px 3px 3px 0;
+  spacing: 7px;
+}
+
+Button[CHECK][BORDER],
+Button[RADIO][BORDER] {
+  cursor: default;
+  background-image: none;
+  border: 1px solid #bdbdbd;
+  border-radius: 2px;
+}
+
+Button-CheckIcon {
+  background-image: url( theme/material.resources/button/check-unselected.png );
+}
+
+Button-CheckIcon:hover {
+  background-image: url( theme/material.resources/button/check-unselected-hover.png );
+}
+
+Button-CheckIcon:selected {
+  background-image: url( theme/material.resources/button/check-selected.png );
+}
+
+Button-CheckIcon:selected:hover {
+  background-image: url( theme/material.resources/button/check-selected-hover.png );
+}
+
+Button-CheckIcon:selected:grayed {
+  background-image: url( theme/material.resources/button/check-grayed.png );
+}
+
+Button-CheckIcon:selected:grayed:hover {
+  background-image: url( theme/material.resources/button/check-grayed-hover.png );
+}
+
+Button-RadioIcon {
+  background-image: url( theme/material.resources/button/radio-unselected.png );
+}
+
+Button-RadioIcon:hover {
+  background-image: url( theme/material.resources/button/radio-unselected-hover.png );
+}
+
+Button-RadioIcon:selected {
+  background-image: url( theme/material.resources/button/radio-selected.png );
+}
+
+Button-RadioIcon:selected:hover {
+  background-image: url( theme/material.resources/button/radio-selected-hover.png );
+}
+
+Button-ArrowIcon[UP] {
+  background-image: url( theme/material.resources/button/arrow-up.png );
+}
+
+Button-ArrowIcon[DOWN] {
+  background-image: url( theme/material.resources/button/arrow-down.png );
+}
+
+Button-ArrowIcon[LEFT] {
+  background-image: url( theme/material.resources/button/arrow-left.png );
+}
+
+Button-ArrowIcon[RIGHT] {
+  background-image: url( theme/material.resources/button/arrow-right.png );
+}
+
+Button-FocusIndicator[ARROW], Button-FocusIndicator[PUSH], Button-FocusIndicator[TOGGLE] {
+  background-color: transparent;
+  border: 1px dotted #b8b8b8;
+  margin: 2px;
+  padding: 0px;
+  opacity: 1;
+}
+
+Button-FocusIndicator[CHECK], Button-FocusIndicator[RADIO] {
+  background-color: transparent;
+  border: 1px dotted #b8b8b8;
+  padding: 2px 2px 2px 1px;
+  margin: 0px;
+  opacity: 1;
+}
+
+/* Combo default theme */
+
+Combo,
+Combo[BORDER] {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  color: #4a4a4a;
+  background-color: #ffffff;
+  border: 1px solid #aaaaaa;
+  border-radius: 0 2px 2px 0;
+  background-image: none;
+  text-shadow: none;
+  box-shadow: inset 0 0 3px #bdbdbd;
+}
+
+Combo:focused,
+Combo[BORDER]:focused {
+  border: 1px solid #4f7cb1;
+  box-shadow: 0 0 5px #4f7cb1;
+}
+
+Combo:disabled,
+Combo[BORDER]:disabled {
+  box-shadow: none;
+}
+
+Combo-Button {
+  cursor: default;
+  background-color: #efefef;
+  border: none;
+  border-left: 1px solid #bdbdbd;
+  border-radius: 0px 2px 2px 0px;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #f9f9f9 ),
+    to( #e4e4e4 )
+  );
+  width: 30px;
+}
+
+Combo-Button[RIGHT_TO_LEFT] {
+  border: none;
+  border-right: 1px solid #bdbdbd;
+}
+
+Combo-Button:disabled {
+  background-image: none;
+  background-color: transparent;
+}
+
+Combo-Button-Icon {
+  background-image: url( theme/material.resources/combo/down.png );
+}
+
+Combo-Button-Icon:hover {
+  background-image: url( theme/material.resources/combo/down-hover.png );
+}
+
+Combo-List {
+  border: 1px solid #4f7cb1;
+  box-shadow: 0 0 5px #4f7cb1;
+  border-radius: 2px;
+}
+
+Combo-List-Item {
+  color: inherit;
+  background-color: transparent;
+  background-image: none;
+  text-decoration: none;
+  text-shadow: none;
+  padding: 6px 10px 6px 10px;
+}
+
+Combo-List-Item:hover, Combo-List-Item:even:hover  {
+  background-color: #f0f0f0;
+}
+
+Combo-List-Item:selected, Combo-List-Item:even:selected {
+  background-color: #c5dbef;
+}
+
+Combo-Field {
+  padding: 5px 10px 5px 10px;
+}
+
+Combo-FocusIndicator {
+  background-color: transparent;
+  border: none;
+  margin: 0;
+  opacity: 0;
+}
+
+/* DropDown default theme */
+
+DropDown {
+  border: 1px solid #4f7cb1;
+  border-radius: 0;
+  box-shadow: 0 0 5px #4f7cb1;
+}
+
+DropDown-Item {
+  color: inherit;
+  background-color: transparent;
+  background-image: none;
+  text-decoration: none;
+  text-shadow: none;
+  padding: 6px 10px 6px 10px;
+}
+
+DropDown-Item:hover {
+  background-color: #f0f0f0;
+}
+
+DropDown-Item:selected {
+  background-color: #c5dbef;
+}
+
+/* CoolBar default theme */
+
+CoolBar {
+  background-image: none;
+}
+
+CoolItem-Handle {
+  border: 1px solid #bdbdbd;
+  width: 2px;
+}
+
+/* CTabFolder default theme */
+
+CTabFolder {
+  border-color: #bdbdbd;
+  border-radius: 2px;
+}
+
+CTabItem {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  color: #4a4a4a;
+  background-color: transparent;
+  background-image: none;
+  padding: 6px 15px;
+  spacing: 10px;
+  text-shadow: none;
+  text-decoration: none;
+}
+
+CTabItem:selected {
+  color: #4a4a4a;
+  background-color: #d6d6d6;
+}
+
+/* Do not gray out disabled CTabItems, this is SWT behavior */
+CTabItem:disabled {
+  color: black;
+}
+
+CTabFolder-DropDownButton-Icon {
+  background-image: url( theme/material.resources/ctabfolder/ctabfolder-dropdown.png );
+}
+
+CTabFolder-DropDownButton-Icon:hover {
+  background-image: url( theme/material.resources/ctabfolder/ctabfolder-dropdown-hover.png );
+}
+
+CTabFolder-DropDownButton-Icon[RIGHT_TO_LEFT] {
+  background-image: url( theme/material.resources/ctabfolder/ctabfolder-dropdown-left.png );
+}
+
+CTabFolder-DropDownButton-Icon[RIGHT_TO_LEFT]:hover {
+  background-image: url( theme/material.resources/ctabfolder/ctabfolder-dropdown-left-hover.png );
+}
+
+/* Group default theme */
+
+Group {
+  font: 10px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  color: #4a4a4a;
+  background-color: #ffffff;
+  border: none;
+}
+
+Group-Frame {
+  margin: 20px 0 0 0;
+  padding: 15px 8px 8px 8px;
+  border: 1px solid #bdbdbd;
+  border-radius: 2px;
+}
+
+Group-Label {
+  padding: 2px 10px 2px 10px;
+  background-color: #f0f0f0;
+  background-image: none;
+  background-repeat: repeat;
+  background-position: left top;
+  border: 1px solid #bdbdbd;
+  border-radius: 10px;
+  color: inherit;
+  margin: 10px 10px 10px 20px;
+  text-shadow: none;
+}
+
+/* Label default theme */
+
+Label {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  color: #4a4a4a;
+  background-color: #ffffff;
+  background-image: none;
+  background-repeat: repeat;
+  background-position: left top;
+  border: none;
+  border-radius: 0;
+  text-decoration: none;
+  cursor: default;
+  opacity: 1;
+  text-shadow: none;
+}
+
+Label[BORDER] {
+  border: 1px solid #bdbdbd;
+  border-radius: 2px;
+}
+
+Label-SeparatorLine {
+  background-image: none;
+  background-color: #d2d2d2;
+  border: none;
+  border-radius: 0;
+  width: 2px;
+}
+
+/* Link default theme */
+
+Link {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  color: #4a4a4a;
+  background-color: #ffffff;
+  background-image: none;
+  background-repeat: repeat;
+  background-position: left top;
+  text-shadow: none;
+}
+
+Link[BORDER] {
+  border: 1px solid #bdbdbd;
+}
+
+Link-Hyperlink {
+  color: #416693;
+  text-shadow: none;
+  text-decoration: none;
+}
+
+Link-Hyperlink:disabled {
+  color: #959595;
+}
+
+Link-Hyperlink:hover {
+  text-decoration: underline;
+}
+
+Link-Hyperlink:hover:disabled {
+  color: #959595;
+  text-decoration: none;
+}
+
+/* List default theme */
+
+List {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  background-color: #ffffff;
+  border: none;
+  color: #4a4a4a;
+}
+
+List[BORDER] {
+  border: 1px solid #bdbdbd;
+}
+
+List-Item {
+  padding: 5px 10px 5px 10px;
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  background-color: #ffffff;
+  color: inherit;
+  background-image: none;
+  background-repeat: repeat;
+  background-position: left top;
+  text-shadow: none;
+}
+
+List-Item:hover {
+  background-color: #f0f0f0;
+}
+
+List-Item:selected {
+  color: #4a4a4a;
+  /* background-color property is used on the server to compute system color with id
+     SWT.COLOR_LIST_SELECTION (see bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=434191) */
+  background-color: #c5dbef;
+}
+
+List-Item:selected:unfocused {
+  background-color:#dfe6ee;
+}
+
+List-Item:even {
+  background-color: #f5f5f5;
+}
+
+List-Item:even:hover {
+  background-color: #e8e8e8;
+}
+
+List-Item:even:selected {
+  background-color: #bdd3e7;
+}
+
+List-Item:even:selected:unfocused {
+  background-color: #dadee6;
+}
+
+List-GridLine {
+  color: transparent;
+}
+
+/* Menu default theme */
+
+Menu {
+  padding: 0;
+  color: #0059a5;
+  background-color: #f9f9f9;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #f4f4f4 ),
+    to( #ffffff )
+  );
+  border: 1px solid #a0b3ca;
+  border-radius: 2px;
+  box-shadow: 0 0 4px #ababab;
+  opacity: 1;
+  animation: none;
+}
+
+MenuItem {
+  color: #4a4a4a;
+  background-color: transparent;
+  background-image: none;
+  opacity: 1;
+  text-shadow: none;
+  padding: 4px 10px 4px 10px;
+}
+
+MenuItem[SEPARATOR] {
+  padding: 0px 10px;
+}
+
+MenuItem:hover {
+  color: #ffffff;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #5882b5 ),
+    to( #416693 )
+  );
+}
+
+MenuItem:pressed {
+  color: #ffffff;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #416693 ),
+    to( #5882b5 )
+  );
+}
+
+MenuItem:disabled {
+  color: #bdbdbd;
+  text-shadow: none;
+}
+
+MenuItem:onMenuBar {
+  padding: 4px 6px;
+}
+
+
+MenuItem-CheckIcon {
+  background-image: url( theme/material.resources/menu/checkbox.gif );
+}
+
+MenuItem-RadioIcon {
+  background-image: url( theme/material.resources/menu/radiobutton.gif );
+}
+
+MenuItem-CascadeIcon {
+  background-image: url( theme/material.resources/menu/arrow-right.gif );
+}
+
+MenuItem-CascadeIcon[RIGHT_TO_LEFT] {
+  background-image: url( theme/material.resources/menu/arrow-left.gif );
+}
+
+/* ProgressBar default theme */
+
+ProgressBar {
+  background-color: #ffffff;
+  background-image: url( theme/material.resources/progressbar/progressbar-background.png );
+  border: 1px solid #bdbdbd;
+  border-radius: 15px;
+  width: 16px;
+}
+
+ProgressBar-Indicator {
+  background-color: #00589f;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #5882b5 ),
+    to( #416693 )
+  );
+  opacity: 1;
+}
+
+ProgressBar-Indicator:paused {
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #818181 ),
+    to( #b5b5b5 )
+  );
+}
+
+ProgressBar-Indicator:error {
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #bb1d1d ),
+    to( #fc0000 )
+  );
+}
+
+/* Shell default theme */
+
+Shell {
+  animation: none;
+  border: none;
+  border-radius: 2px;
+  background-color: #ffffff;
+  background-image: none;
+  padding: 0;
+  opacity: 1;
+  box-shadow: none;
+}
+
+Shell[TITLE], Shell[BORDER] {
+  background-color: #ffffff;
+  border: 1px solid #6e6e6e;
+  border-radius: 2px;
+  box-shadow: 0 0 4px #ababab;
+}
+
+Shell[BORDER]:inactive, Shell[TITLE]:inactive {
+  border: 1px solid #bdbdbd;
+  box-shadow: none;
+}
+
+Shell:maximized, Shell:maximized:inactive {
+  border: none;
+  box-shadow: none;
+  border-radius: 0px;
+}
+
+Shell-DisplayOverlay {
+  animation: fadeIn 200ms linear, fadeOut 400ms ease-out;
+  background-image: none;
+  background-color: #808080;
+  opacity: 0.2;
+}
+
+/* Shell titlebar */
+
+Shell-Titlebar {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  background-color: #0080c0;
+  background-gradient-color: #0080c0;
+  color: #ffffff;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #416693 ), to( #5882b5 )
+  );
+  padding: 0 10px 0 10px;
+  margin: 0px;
+  height: 38px;
+  border: none;
+  border-radius: 0;
+  text-shadow: none;
+}
+
+Shell-Titlebar:inactive {
+  background-color: #7996a5;
+  background-gradient-color: #7996a5;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #818181 ), to( #b5b5b5 )
+  );
+}
+
+/* Shell buttons */
+
+/* Minimize button */
+
+Shell-MinButton {
+  background-image: url( theme/material.resources/window/shell-min.png );
+  margin: 0 -2px 0 0;
+}
+
+Shell-MinButton:hover {
+  background-image: url( theme/material.resources/window/shell-min-hover.png );
+}
+
+Shell-MinButton:inactive {
+  background-image: url( theme/material.resources/window/shell-min.png );
+  margin: 0 -2px 0 0;
+}
+
+Shell-MinButton:inactive:hover {
+  background-image: url( theme/material.resources/window/shell-min-hover.png );
+}
+
+/* Maximize button */
+
+Shell-MaxButton {
+  background-image: url( theme/material.resources/window/shell-max.png );
+  margin: 0 -2px 0 0;
+}
+
+Shell-MaxButton:hover {
+  background-image: url( theme/material.resources/window/shell-max-hover.png );
+}
+
+Shell-MaxButton:inactive {
+  background-image: url( theme/material.resources/window/shell-max.png );
+  margin: 0 -2px 0 0;
+}
+
+Shell-MaxButton:inactive:hover {
+  background-image: url( theme/material.resources/window/shell-max-hover.png );
+}
+
+/* Restore button */
+
+Shell-MaxButton:maximized {
+  background-image: url( theme/material.resources/window/shell-restore.png );
+}
+
+Shell-MaxButton:maximized:hover {
+  background-image: url( theme/material.resources/window/shell-restore-hover.png );
+}
+
+Shell-MaxButton:maximized:inactive {
+  background-image: url( theme/material.resources/window/shell-restore.png );
+}
+
+Shell-MaxButton:maximized:inactive:hover {
+  background-image: url( theme/material.resources/window/shell-restore-hover.png );
+}
+
+/* Close button */
+
+Shell-CloseButton {
+  background-image: url( theme/material.resources/window/shell-close.png );
+  margin: 0 -2px 0 0;
+}
+
+Shell-CloseButton:hover {
+  background-image: url( theme/material.resources/window/shell-close-hover.png );
+}
+
+Shell-CloseButton:inactive {
+  background-image: url( theme/material.resources/window/shell-close.png );
+  margin: 0 -2px 0 0;
+}
+
+Shell-CloseButton:inactive:hover {
+  background-image: url( theme/material.resources/window/shell-close-hover.png );
+}
+
+/* Spinner default theme */
+
+Spinner {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  border: none;
+  border-radius: 0 2px 2px 0;
+  color: #4a4a4a;
+  background-color: #ffffff;
+  background-image: none;
+  text-shadow: none;
+  box-shadow: none;
+}
+
+Spinner[BORDER] {
+  border: 1px solid #aaaaaa;
+  border-radius: 0 2px 2px 0;
+  box-shadow: inset 0 0 3px #bdbdbd;
+}
+
+Spinner[BORDER]:focused {
+  border: 1px solid #4f7cb1;
+  box-shadow: 0 0 5px #4f7cb1;
+}
+
+Spinner:disabled,
+Spinner[BORDER]:disabled {
+  box-shadow: none;
+}
+
+Spinner-Field {
+  padding: 6px 10px 6px 10px;
+}
+
+Spinner-UpButton {
+  background-color: #efefef;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #f9f9f9 ),
+    to( #efefef )
+  );
+  width: 30px;
+  border: none;
+  border-left: 1px solid #bdbdbd;
+  border-radius: 0px 2px 0px 0px;
+  cursor: default;
+}
+
+Spinner-UpButton[RIGHT_TO_LEFT] {
+  border: none;
+  border-right: 1px solid #bdbdbd;
+}
+
+Spinner-UpButton:disabled {
+  background-image: none;
+  background-color: transparent;
+}
+
+Spinner-UpButton-Icon {
+  background-image: url( theme/material.resources/spinner/up.png );
+}
+
+Spinner-UpButton-Icon:hover {
+  background-image: url( theme/material.resources/spinner/up-hover.png );
+}
+
+Spinner-DownButton {
+  background-color: #efefef;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #efefef ),
+    to( #e4e4e4 )
+  );
+  width: 30px;
+  border: none;
+  border-left: 1px solid #bdbdbd;
+  border-radius: 0px 0px 2px 0px;
+  cursor: default;
+}
+
+Spinner-DownButton[RIGHT_TO_LEFT] {
+  border: none;
+  border-right: 1px solid #bdbdbd;
+}
+
+Spinner-DownButton:disabled {
+  background-image: none;
+  background-color: transparent;
+}
+
+Spinner-DownButton-Icon {
+  background-image: url( theme/material.resources/spinner/down.png );
+}
+
+Spinner-DownButton-Icon:hover {
+  background-image: url( theme/material.resources/spinner/down-hover.png );
+}
+
+/* TabFolder default theme */
+
+TabFolder {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  border: none;
+}
+
+TabFolder[BORDER] {
+  border: 1px solid #bdbdbd;
+}
+
+TabFolder-ContentContainer {
+  border: 1px solid #bdbdbd;
+}
+
+TabItem {
+  color: #4a4a4a;
+  background-color: #ffffff;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #f9f9f9 ),
+    to( #e4e4e4 )
+  );
+  background-repeat: repeat;
+  background-position: left top;
+  border-top-color: #5882b5;
+  border-bottom-color: #5882b5;
+  text-shadow: 0 1px 0 #ffffff;
+  padding: 6px;
+  margin: 6px 1px 1px 0px;
+  border: 1px solid #bdbdbd;
+  border-bottom: none;
+}
+
+TabItem[RIGHT_TO_LEFT] {
+  margin: 6px 0px 1px 1px;
+}
+
+TabItem:bottom {
+  margin: 1px 1px 6px 0px;
+  border: 1px solid #bdbdbd;
+  border-top: none;
+}
+
+TabItem[RIGHT_TO_LEFT]:bottom {
+  margin: 1px 0px 6px 1px;
+}
+
+TabItem:selected {
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #d5d5d5 ),
+    to( #eaeaea )
+  );
+  margin: 3px -1px 0px -2px;
+  border: 1px solid #bdbdbd;
+  border-top: 3px solid #5882b5;
+  border-bottom: none;
+}
+
+TabItem[RIGHT_TO_LEFT]:selected {
+  margin: 3px -2px 0px -1px;
+}
+
+TabItem:bottom:selected {
+  margin: 0px -1px 3px -2px;
+  border: 1px solid #bdbdbd;
+  border-top: none;
+  border-bottom: 3px solid #5882b5;
+}
+
+TabItem[RIGHT_TO_LEFT]:bottom:selected {
+  margin: 0px -2px 3px -1px;
+}
+
+TabItem:selected:first {
+  margin: 3px -1px 0px 0px;
+}
+
+TabItem[RIGHT_TO_LEFT]:selected:first {
+  margin: 3px 0px 0px -1px;
+}
+
+TabItem:bottom:selected:first {
+  margin: 0px -1px 3px 0px;
+}
+
+TabItem[RIGHT_TO_LEFT]:bottom:selected:first {
+  margin: 0px 0px 3px -1px;
+}
+
+/* Table default theme */
+
+Table {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  background-color: #ffffff;
+  background-image: none;
+  color: #4a4a4a;
+  border: none;
+}
+
+Table[BORDER] {
+  border: 1px solid #bdbdbd;
+}
+
+TableColumn {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  background-color: #f0f0f0;
+  padding: 8px 3px 8px 3px;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #f9f9f9 ),
+    to( #e4e4e4 )
+  );
+  color: inherit;
+  border-bottom: 1px solid #bdbdbd;
+  text-shadow: 0 1px 0 #ffffff;
+  text-overflow: ellipsis;
+}
+
+TableColumn:hover {
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #e4e4e4 ),
+    to( #f9f9f9 )
+  );
+}
+
+TableItem,
+TableItem:linesvisible:even:rowtemplate {
+  background-color: transparent;
+  color: inherit;
+  text-decoration: none;
+  text-shadow: none;
+  background-image: none;
+  text-overflow: ellipsis;
+}
+
+TableItem:linesvisible:even {
+  background-color: #f5f5f5;
+  color: inherit;
+}
+
+Table-RowOverlay {
+  background-color: transparent;
+  color: inherit;
+  background-image: none;
+}
+
+Table-RowOverlay:hover {
+  color: inherit;
+  background-color: rgba( 181, 181, 181, 0.2 );
+  background-image: none;
+}
+
+Table-RowOverlay:selected {
+  color: inherit;
+  background-color: rgba(20, 110, 190, 0.25);
+  background-image: none;
+}
+
+Table-RowOverlay:selected:unfocused {
+  background-color: rgba( 98, 130, 171, 0.2 );
+  background-image: none;
+  color: inherit;
+}
+
+TableColumn-SortIndicator {
+  background-image: none;
+}
+
+TableColumn-SortIndicator:up {
+  background-image: url( theme/material.resources/column/sort-indicator-up.png );
+}
+
+TableColumn-SortIndicator:down {
+  background-image: url( theme/material.resources/column/sort-indicator-down.png );
+}
+
+Table-Cell {
+  spacing: 3px;
+  padding: 5px 3px 5px 3px;
+}
+
+Table-GridLine,
+Table-GridLine:vertical:rowtemplate {
+  color: transparent;
+}
+
+Table-GridLine:vertical,
+Table-GridLine:header,
+Table-GridLine:horizontal:rowtemplate {
+  color: #dedede;
+}
+
+
+Table-Checkbox {
+  /*
+  For backward compatibility we have to keep the width property.
+  Deprecated, use "margin" instead.
+  */
+  width: 21px;
+  margin: 0 0 0 4px;
+  background-image: url( theme/material.resources/button/check-unselected.png );
+}
+
+Table-Checkbox:hover {
+  background-image: url( theme/material.resources/button/check-unselected-hover.png );
+}
+
+Table-Checkbox:checked {
+  background-image: url( theme/material.resources/button/check-selected.png );
+}
+
+Table-Checkbox:checked:hover {
+  background-image: url( theme/material.resources/button/check-selected-hover.png );
+}
+
+Table-Checkbox:checked:grayed {
+  background-image: url( theme/material.resources/button/check-grayed.png );
+}
+
+Table-Checkbox:checked:grayed:hover {
+  background-image: url( theme/material.resources/button/check-grayed-hover.png );
+}
+
+/* Text default theme */
+
+Text {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  border: none;
+  border-radius: 0;
+  padding: 5px 10px 5px 10px;
+  color: #4a4a4a;
+  background-repeat: repeat;
+  background-position: left top;
+  background-color: #ffffff;
+  background-image: none;
+  text-shadow: none;
+  box-shadow: none;
+}
+
+Text[MULTI] {
+/*
+ * padding currently has no effect because of bug 253644
+ * [TODO] remove comment if bug fixed
+ */
+  padding: 5px 10px 5px 10px;
+}
+
+Text[BORDER],
+Text[MULTI][BORDER] {
+  border: 1px solid #aaaaaa;
+  border-radius: 0;
+  box-shadow: inset 0 0 3px #bdbdbd;
+}
+
+Text[BORDER]:focused,
+Text[MULTI][BORDER]:focused {
+  border: 1px solid #4f7cb1;
+  box-shadow: 0 0 5px #4f7cb1;
+}
+
+Text[BORDER]:disabled,
+Text[MULTI][BORDER]:disabled,
+Text[BORDER]:read-only,
+Text[MULTI][BORDER]:read-only {
+  box-shadow: none;
+}
+
+Text-Message {
+  color: #a7a6aa;
+  text-shadow: none;
+}
+
+Text-Search-Icon {
+  background-image: url( theme/material.resources/text/find.png );
+  spacing: 3px;
+}
+
+Text-Cancel-Icon {
+  background-image: url( theme/material.resources/text/clear.gif );
+  spacing: 3px;
+}
+
+/* Text with monospace font */
+Text.monospace {
+  font: 14px "Liberation Mono", "DejaVu Sans Mono", "Courier New";
+}
+
+/* ToolBar default theme */
+
+ToolBar {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  color: #4a4a4a;
+  padding: 0;
+  spacing: 0;
+  background-color: #fff;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #f9f9f9 ),
+    to( #e4e4e4 )
+  );
+  border: 1px solid #bdbdbd;
+  border-radius: 3px;
+  opacity: 1;
+}
+
+ToolBar[VERTICAL] {
+  background-image: gradient(
+    linear, left top, right top,
+    from( #e9e9e9 ),
+    color-stop( 45%, #f9f9f9 ),
+    color-stop( 55%, #f9f9f9 ),
+    to( #e9e9e9 )
+  );
+}
+
+ToolBar[FLAT] {
+  border: none;
+  background-image: none;
+  spacing: 4px;
+}
+
+ToolBar[FLAT][BORDER] {
+  border: 1px solid #bdbdbd;
+  padding: 3px 3px 6px 3px;
+}
+
+ToolItem {
+  color: inherit;
+  background-color: transparent;
+  background-image: none;
+  border-radius: 0px;
+  padding: 8px;
+  spacing: 4px;
+  opacity: 1;
+  animation: none;
+  text-shadow: 1px 1px 1px #ccc;
+  border: none;
+  border-left: 1px solid transparent;
+  border-right: 1px solid transparent;
+}
+
+ToolItem[FLAT] {
+  border: 1px solid transparent;
+}
+
+ToolItem[VERTICAL] {
+  border: none;
+  border-top: 1px solid transparent;
+  border-bottom: 1px solid transparent;
+}
+
+ToolItem:first, ToolItem[RIGHT_TO_LEFT]:last {
+  border-radius: 3px 0px 0px 3px;
+}
+
+ToolItem:last, ToolItem[RIGHT_TO_LEFT]:first {
+  border-radius: 0px 3px 3px 0px;
+}
+
+ToolItem[VERTICAL]:first {
+  border-radius: 3px 3px 0px 0px;
+}
+
+ToolItem[VERTICAL]:last {
+  border-radius: 0px 0px 3px 3px;
+}
+
+ToolItem:first:last, ToolItem[VERTICAL]:first:last {
+  border: none;
+  border-radius: 3px 3px 3px 3px;
+}
+
+ToolItem:hover,
+ToolItem:pressed,
+ToolItem:selected {
+  border: none;
+  border-left: 1px solid #bdbdbd;
+  border-right: 1px solid #bdbdbd;
+}
+
+ToolItem[VERTICAL]:hover,
+ToolItem[VERTICAL]:pressed,
+ToolItem[VERTICAL]:selected {
+  border: none;
+  border-top: 1px solid #bdbdbd;
+  border-bottom: 1px solid #bdbdbd;
+}
+
+ToolItem:hover {
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #eaeaea ),
+    to( #d5d5d5 )
+  );
+}
+
+ToolItem:pressed {
+  padding: 9px 8px 7px 8px;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #d5d5d5 ),
+    to( #eaeaea )
+  );
+}
+
+ToolItem:selected {
+  padding: 9px 8px 7px 8px;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #e4e4e4 ),
+    to( #f9f9f9 )
+  );
+}
+
+ToolItem[VERTICAL]:hover {
+  background-image: gradient(
+    linear, left top, right top,
+    from( #d9d9d9 ),
+    color-stop( 45%, #e9e9e9 ),
+    color-stop( 55%, #e9e9e9 ),
+    to( #d9d9d9 )
+  );}
+
+ToolItem[VERTICAL]:pressed, ToolItem[VERTICAL]:selected {
+  background-image: gradient(
+    linear, left top, right top,
+    from( #e9e9e9 ),
+    color-stop( 45%, #dadada ),
+    color-stop( 55%, #dadada ),
+    to( #e9e9e9 )
+  );
+}
+
+ToolItem:first:hover,
+ToolItem:first:selected,
+ToolItem:first:pressed,
+ToolItem[RIGHT_TO_LEFT]:last:hover,
+ToolItem[RIGHT_TO_LEFT]:last:selected,
+ToolItem[RIGHT_TO_LEFT]:last:pressed {
+  border: none;
+  border-left: 1px solid transparent;
+  border-right: 1px solid #bdbdbd;
+}
+
+ToolItem:last:hover,
+ToolItem:last:selected,
+ToolItem:last:pressed,
+ToolItem[RIGHT_TO_LEFT]:first:hover,
+ToolItem[RIGHT_TO_LEFT]:first:selected,
+ToolItem[RIGHT_TO_LEFT]:first:pressed {
+  border: none;
+  border-left: 1px solid #bdbdbd;
+  border-right: 1px solid transparent;
+}
+
+ToolItem[VERTICAL]:first:hover,
+ToolItem[VERTICAL]:first:selected,
+ToolItem[VERTICAL]:first:pressed {
+  border: none;
+  border-top: 1px solid transparent;
+  border-bottom: 1px solid #bdbdbd;
+}
+
+ToolItem[VERTICAL]:last:hover,
+ToolItem[VERTICAL]:last:selected,
+ToolItem[VERTICAL]:last:pressed {
+  border: none;
+  border-top: 1px solid #bdbdbd;
+  border-bottom: 1px solid transparent;
+}
+
+ToolItem[FLAT],
+ToolItem[FLAT]:first,
+ToolItem[FLAT]:last {
+  border: 1px solid transparent;
+  border-radius: 3px 3px 3px 3px;
+}
+
+ToolItem[FLAT]:hover,
+ToolItem[FLAT]:pressed,
+ToolItem[FLAT]:selected,
+ToolItem[FLAT]:first:hover,
+ToolItem[FLAT]:first:pressed,
+ToolItem[FLAT]:first:selected,
+ToolItem[FLAT]:last:hover,
+ToolItem[FLAT]:last:pressed,
+ToolItem[FLAT]:last:selected {
+  border: 1px solid #bdbdbd;
+  border-radius: 3px 3px 3px 3px;
+}
+
+ToolItem[FLAT]:hover,
+ToolItem[FLAT]:first:hover,
+ToolItem[FLAT]:last:hover {
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #f9f9f9 ),
+    to( #e4e4e4 )
+  );
+}
+
+ToolItem[FLAT]:pressed, ToolItem[FLAT]:first:pressed, ToolItem[FLAT]:last:pressed {
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #d5d5d5 ),
+    to( #eaeaea )
+  );
+}
+
+ToolItem[FLAT]:selected {
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #e4e4e4 ),
+    to( #f9f9f9 )
+  );
+}
+
+ToolItem-DropDownIcon {
+  background-image: url( theme/material.resources/toolbar/down.png );
+  border: none;
+}
+
+ToolItem-Separator {
+  width: 10px;
+}
+
+/* Tree/Grid default theme */
+
+Tree, Grid {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  background-color: #ffffff;
+  border: none;
+  color: #4a4a4a;
+}
+
+Tree[BORDER], Grid[BORDER] {
+  border: 1px solid #bdbdbd;
+}
+
+TreeItem, GridItem,
+TreeItem:linesvisible:even:rowtemplate {
+  background-color: transparent;
+  color: inherit;
+  text-decoration: none;
+  text-shadow: none;
+  background-image: none;
+  text-overflow: ellipsis;
+}
+
+TreeItem:linesvisible:even {
+  background-color: #f5f5f5;
+  color: inherit;
+  border: none;
+}
+
+Tree-RowOverlay, Grid-RowOverlay {
+  background-color: transparent;
+  color: inherit;
+  background-image: none;
+}
+
+Tree-RowOverlay:hover, Grid-RowOverlay:hover {
+  color: inherit;
+  background-color: rgba( 181, 181, 181, 0.2 );
+  background-image: none;
+}
+
+Tree-RowOverlay:selected, Grid-RowOverlay:selected {
+  color: inherit;
+  background-color: rgba( 20, 110, 190, 0.25 );
+  background-image: none;
+}
+
+Tree-RowOverlay:selected:unfocused, Grid-RowOverlay:selected:unfocused {
+  background-color: rgba( 98, 130, 171, 0.2 );
+  background-image: none;
+  color: inherit;
+}
+
+TreeColumn, GridColumn {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  color: inherit;
+  background-color: #f0f0f0;
+   background-image: gradient(
+    linear, left top, left bottom,
+    from( #f9f9f9 ),
+    to( #e4e4e4 )
+  );
+  padding: 8px 10px 8px 6px;
+  border-bottom: 1px solid #bdbdbd;
+  text-shadow: none;
+  text-overflow: ellipsis;
+}
+
+TreeColumn:hover, GridColumn:hover {
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #e4e4e4 ),
+    to( #f9f9f9 )
+  );
+}
+
+TreeColumn-SortIndicator, GridColumn-SortIndicator {
+  background-image: none;
+}
+
+TreeColumn-SortIndicator:up, GridColumn-SortIndicator:up {
+  background-image: url( theme/material.resources/column/sort-indicator-up.png );
+}
+
+TreeColumn-SortIndicator:down, GridColumn-SortIndicator:down {
+  background-image: url( theme/material.resources/column/sort-indicator-down.png );
+}
+
+Tree-Cell, Grid-Cell {
+  spacing: 3px;
+  padding: 5px 3px 5px 3px;
+}
+
+Tree-GridLine,
+Tree-GridLine:vertical:rowtemplate, Grid-GridLine:vertical:rowtemplate {
+  color: transparent;
+}
+
+Tree-GridLine:vertical,
+Tree-GridLine:header,
+Tree-GridLine:horizontal:rowtemplate {
+  color: #dedede;
+}
+
+Grid-GridLine {
+  color: #d0d0d0;
+}
+
+Tree-Checkbox, Grid-Checkbox {
+  margin: 0px 2px 0px 0px;
+  background-image: url( theme/material.resources/button/check-unselected.png );
+}
+
+Tree-Checkbox:hover, Grid-Checkbox:hover {
+  background-image: url( theme/material.resources/button/check-unselected-hover.png );
+}
+
+Tree-Checkbox:checked, Grid-Checkbox:checked {
+  background-image: url( theme/material.resources/button/check-selected.png );
+}
+
+Tree-Checkbox:checked:hover, Grid-Checkbox:checked:hover {
+  background-image: url( theme/material.resources/button/check-selected-hover.png );
+}
+
+Tree-Checkbox:checked:grayed, Grid-Checkbox:checked:grayed {
+  background-image: url( theme/material.resources/button/check-grayed.png );
+}
+
+Tree-Checkbox:checked:grayed:hover, Grid-Checkbox:checked:grayed:hover {
+  background-image: url( theme/material.resources/button/check-grayed-hover.png );
+}
+
+Tree-Indent, Grid-Indent {
+  width: 16px;
+  background-image: none;
+}
+
+Tree-Indent:collapsed, Grid-Indent:collapsed {
+  background-image: url( theme/material.resources/tree/tree-collapsed.png );
+}
+
+Tree-Indent:collapsed:hover, Grid-Indent:collapsed:hover {
+  background-image: url( theme/material.resources/tree/tree-collapsed-hover.png );
+}
+
+Tree-Indent:expanded, Grid-Indent:expanded {
+  background-image: url( theme/material.resources/tree/tree-expanded.png );
+}
+
+Tree-Indent:expanded:hover, Grid-Indent:expanded:hover {
+  background-image: url( theme/material.resources/tree/tree-expanded-hover.png );
+}
+
+Tree-Indent:line, Grid-Indent:line {
+  background-image: none;
+}
+
+Tree-Indent:first, Grid-Indent:first {
+  background-image: none;
+}
+
+Tree-Indent:first:collapsed, Grid-Indent:first:collapsed {
+  background-image: url( theme/material.resources/tree/tree-collapsed.png );
+}
+
+Tree-Indent:first:collapsed:hover, Grid-Indent:first:collapsed:hover {
+  background-image: url( theme/material.resources/tree/tree-collapsed-hover.png );
+}
+
+Tree-Indent:first:expanded, Grid-Indent:first:expanded {
+  background-image: url( theme/material.resources/tree/tree-expanded.png );
+}
+
+Tree-Indent:first:expanded:hover, Grid-Indent:first:expanded:hover {
+  background-image: url( theme/material.resources/tree/tree-expanded-hover.png );
+}
+
+Tree-Indent:last, Grid-Indent:last {
+  background-image: none;
+}
+
+Tree-Indent:last:collapsed, Grid-Indent:last:collapsed {
+  background-image: url( theme/material.resources/tree/tree-collapsed.png );
+}
+
+Tree-Indent:last:collapsed:hover, Grid-Indent:last:collapsed:hover {
+  background-image: url( theme/material.resources/tree/tree-collapsed-hover.png );
+}
+
+Tree-Indent:last:expanded, Grid-Indent:last:expanded {
+  background-image: url( theme/material.resources/tree/tree-expanded.png );
+}
+
+Tree-Indent:last:expanded:hover, Grid-Indent:last:expanded:hover {
+  background-image: url( theme/material.resources/tree/tree-expanded-hover.png );
+}
+
+Tree-Indent:first:last, Grid-Indent:first:last {
+  background-image: none;
+}
+
+Tree-Indent:first:last:collapsed, Grid-Indent:first:last:collapsed {
+  background-image: url( theme/material.resources/tree/tree-collapsed.png );
+}
+
+Tree-Indent:first:last:collapsed:hover, Grid-Indent:first:last:collapsed:hover {
+  background-image: url( theme/material.resources/tree/tree-collapsed-hover.png );
+}
+
+Tree-Indent:first:last:expanded, Grid-Indent:first:last:expanded {
+  background-image: url( theme/material.resources/tree/tree-expanded.png );
+}
+
+Tree-Indent:first:last:expanded:hover, Grid-Indent:first:last:expanded:hover {
+  background-image: url( theme/material.resources/tree/tree-expanded-hover.png );
+}
+
+Tree-Indent[RIGHT_TO_LEFT]:collapsed, Grid-Indent[RIGHT_TO_LEFT]:collapsed {
+  background-image: url( theme/material.resources/tree/tree-collapsed-left.png );
+}
+
+Tree-Indent[RIGHT_TO_LEFT]:collapsed:hover, Grid-Indent[RIGHT_TO_LEFT]:collapsed:hover {
+  background-image: url( theme/material.resources/tree/tree-collapsed-hover-left.png );
+}
+
+Tree-Indent[RIGHT_TO_LEFT]:expanded, Grid-Indent[RIGHT_TO_LEFT]:expanded {
+  background-image: url( theme/material.resources/tree/tree-expanded-left.png );
+}
+
+Tree-Indent[RIGHT_TO_LEFT]:expanded:hover, Grid-Indent[RIGHT_TO_LEFT]:expanded:hover {
+  background-image: url( theme/material.resources/tree/tree-expanded-hover-left.png );
+}
+
+Tree-Indent[RIGHT_TO_LEFT]:first:collapsed, Grid-Indent[RIGHT_TO_LEFT]:first:collapsed {
+  background-image: url( theme/material.resources/tree/tree-collapsed-left.png );
+}
+
+Tree-Indent[RIGHT_TO_LEFT]:first:collapsed:hover, Grid-Indent[RIGHT_TO_LEFT]:first:collapsed:hover {
+  background-image: url( theme/material.resources/tree/tree-collapsed-hover-left.png );
+}
+
+Tree-Indent[RIGHT_TO_LEFT]:first:expanded, Grid-Indent[RIGHT_TO_LEFT]:first:expanded {
+  background-image: url( theme/material.resources/tree/tree-expanded-left.png );
+}
+
+Tree-Indent[RIGHT_TO_LEFT]:first:expanded:hover, Grid-Indent[RIGHT_TO_LEFT]:first:expanded:hover {
+  background-image: url( theme/material.resources/tree/tree-expanded-hover-left.png );
+}
+
+Tree-Indent[RIGHT_TO_LEFT]:last:collapsed, Grid-Indent[RIGHT_TO_LEFT]:last:collapsed {
+  background-image: url( theme/material.resources/tree/tree-collapsed-left.png );
+}
+
+Tree-Indent[RIGHT_TO_LEFT]:last:collapsed:hover, Grid-Indent[RIGHT_TO_LEFT]:last:collapsed:hover {
+  background-image: url( theme/material.resources/tree/tree-collapsed-hover-left.png );
+}
+
+Tree-Indent[RIGHT_TO_LEFT]:last:expanded, Grid-Indent[RIGHT_TO_LEFT]:last:expanded {
+  background-image: url( theme/material.resources/tree/tree-expanded-left.png );
+}
+
+Tree-Indent[RIGHT_TO_LEFT]:last:expanded:hover, Grid-Indent[RIGHT_TO_LEFT]:last:expanded:hover {
+  background-image: url( theme/material.resources/tree/tree-expanded-hover-left.png );
+}
+
+Tree-Indent[RIGHT_TO_LEFT]:first:last:collapsed, Grid-Indent[RIGHT_TO_LEFT]:first:last:collapsed {
+  background-image: url( theme/material.resources/tree/tree-collapsed-left.png );
+}
+
+Tree-Indent[RIGHT_TO_LEFT]:first:last:collapsed:hover,
+Grid-Indent[RIGHT_TO_LEFT]:first:last:collapsed:hover {
+  background-image: url( theme/material.resources/tree/tree-collapsed-hover-left.png );
+}
+
+Tree-Indent[RIGHT_TO_LEFT]:first:last:expanded, Grid-Indent[RIGHT_TO_LEFT]:first:last:expanded {
+  background-image: url( theme/material.resources/tree/tree-expanded-left.png );
+}
+
+Tree-Indent[RIGHT_TO_LEFT]:first:last:expanded:hover,
+Grid-Indent[RIGHT_TO_LEFT]:first:last:expanded:hover {
+  background-image: url( theme/material.resources/tree/tree-expanded-hover-left.png );
+}
+
+/* Scale default theme */
+
+Scale {
+  background-color: white;
+  background-image: none;
+  border-radius: 3px;
+}
+
+Scale-Thumb {
+  background-color: #e5e5e5;
+  background-image: none;
+  border: 1px solid #a4a4a4;
+  border-radius: 2px 2px 2px 2px;
+}
+
+Scale-Thumb:focused {
+  border: 1px solid #4f7cb1;
+}
+
+/* DateTime default theme */
+
+DateTime {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  border: none;
+  border-radius: 0 2px 2px 0;
+  color: #464a4e;
+  background-color: #ffffff;
+  background-image: none;
+  text-shadow: none;
+  box-shadow: none;
+}
+
+DateTime[BORDER]:focused {
+  border: 1px solid #4f7cb1;
+  box-shadow: 0 0 5px #4f7cb1;
+}
+
+DateTime-Field {
+  color: inherit;
+  background-color: transparent;
+  padding: 5px 3px 6px 3px;
+  text-shadow: none;
+}
+
+DateTime[BORDER] {
+  border: 1px solid #aaaaaa;
+  border-radius: 0 2px 2px 0;
+  box-shadow: inset 0 0 3px #bdbdbd;
+}
+
+DateTime[BORDER]:disabled {
+  box-shadow: none;
+}
+
+DateTime-Calendar-Day {
+  border: none;
+  color: inherit;
+  background-color: transparent;
+  text-shadow: none;
+}
+
+DateTime-Calendar-Day:today {
+  border: 1px solid #ff0000;
+}
+
+DateTime-Field:selected,
+DateTime-Calendar-Day:selected {
+  background-color: #5882b5;
+  color: #ffffff;
+}
+
+DateTime-Calendar-Day:selected:hover {
+  background-color: #5882b5;
+  color: #ffffff;
+}
+
+DateTime-Calendar-Day:selected:unfocused {
+  background-color: #c0c0c0;
+}
+
+DateTime-Calendar-Day:otherMonth {
+  background-color: transparent;
+  color: #808080;
+}
+
+DateTime-Calendar-Day:hover {
+  background-color: #b5b5b5;
+}
+
+DateTime-Calendar-Navbar {
+  border: none;
+  border-radius: 0;
+  background-color: #00569c;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #416693 ), to( #5882b5 )
+  );
+  color: white;
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  text-shadow: none;
+}
+
+DateTime-Calendar-PreviousMonthButton {
+  background-image: url( theme/material.resources/calendar/lastMonth.png );
+  cursor: default;
+}
+
+DateTime-Calendar-PreviousMonthButton:hover {
+  background-image: url( theme/material.resources/calendar/lastMonth-hover.png );
+}
+
+DateTime-Calendar-NextMonthButton {
+  background-image: url( theme/material.resources/calendar/nextMonth.png );
+  cursor: default;
+}
+
+DateTime-Calendar-NextMonthButton:hover {
+  background-image: url( theme/material.resources/calendar/nextMonth-hover.png );
+}
+
+DateTime-Calendar-PreviousYearButton {
+  background-image: url( theme/material.resources/calendar/lastYear.png );
+  cursor: default;
+}
+
+DateTime-Calendar-PreviousYearButton:hover {
+  background-image: url( theme/material.resources/calendar/lastYear-hover.png );
+}
+
+DateTime-Calendar-NextYearButton {
+  background-image: url( theme/material.resources/calendar/nextYear.png );
+  cursor: default;
+}
+
+DateTime-Calendar-NextYearButton:hover {
+  background-image: url( theme/material.resources/calendar/nextYear-hover.png );
+}
+
+DateTime-Calendar-PreviousMonthButton[RIGHT_TO_LEFT] {
+  background-image: url( theme/material.resources/calendar/nextMonth.png );
+}
+
+DateTime-Calendar-PreviousMonthButton[RIGHT_TO_LEFT]:hover {
+  background-image: url( theme/material.resources/calendar/nextMonth-hover.png );
+}
+
+DateTime-Calendar-NextMonthButton[RIGHT_TO_LEFT] {
+  background-image: url( theme/material.resources/calendar/lastMonth.png );
+}
+
+DateTime-Calendar-NextMonthButton[RIGHT_TO_LEFT]:hover {
+  background-image: url( theme/material.resources/calendar/lastMonth-hover.png );
+}
+
+DateTime-Calendar-PreviousYearButton[RIGHT_TO_LEFT] {
+  background-image: url( theme/material.resources/calendar/nextYear.png );
+}
+
+DateTime-Calendar-PreviousYearButton[RIGHT_TO_LEFT]:hover {
+  background-image: url( theme/material.resources/calendar/nextYear-hover.png );
+}
+
+DateTime-Calendar-NextYearButton[RIGHT_TO_LEFT] {
+  background-image: url( theme/material.resources/calendar/lastYear.png );
+}
+
+DateTime-Calendar-NextYearButton[RIGHT_TO_LEFT]:hover {
+  background-image: url( theme/material.resources/calendar/lastYear-hover.png );
+}
+
+DateTime-UpButton {
+  background-color: #f0f0f0;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #f9f9f9 ),
+    to( #efefef )
+  );;
+  width: 30px;
+  border: none;
+  border-left: 1px solid #bdbdbd;
+  border-radius: 0px 2px 0px 0px;
+  cursor: default;
+}
+
+DateTime-UpButton[RIGHT_TO_LEFT] {
+  border: none;
+  border-right: 1px solid #bdbdbd;
+}
+
+DateTime-UpButton-Icon {
+  background-image: url( theme/material.resources/datetime/up.png );
+}
+
+DateTime-UpButton-Icon:hover {
+  background-image: url( theme/material.resources/datetime/up-hover.png );
+}
+
+DateTime-DownButton {
+  background-color: #f0f0f0;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #efefef ),
+    to( #e4e4e4 )
+  );
+  width: 30px;
+  border: none;
+  border-left: 1px solid #bdbdbd;
+  border-radius: 0px 0px 2px 0px;
+  cursor: default;
+}
+
+DateTime-DownButton[RIGHT_TO_LEFT] {
+  border: none;
+  border-right: 1px solid #bdbdbd;
+}
+
+DateTime-DownButton-Icon {
+  background-image: url( theme/material.resources/datetime/down.png );
+}
+
+DateTime-DownButton-Icon:hover {
+  background-image: url( theme/material.resources/datetime/down-hover.png );
+}
+
+DateTime-DropDownButton {
+  cursor: default;
+  background-color: #f0f0f0;
+  border: none;
+  border-left: 1px solid #bdbdbd;
+  border-radius: 0px 2px 2px 0px;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #f9f9f9 ),
+    to( #e4e4e4 )
+  );
+  width: 30px;
+}
+
+DateTime-DropDownButton[RIGHT_TO_LEFT] {
+  border: none;
+  border-right: 1px solid #bdbdbd;
+}
+
+DateTime-DropDownButton:disabled,
+DateTime-UpButton:disabled,
+DateTime-DownButton:disabled {
+  background-image: none;
+  background-color: transparent;
+}
+
+DateTime-DropDownButton-Icon {
+  background-image: url( theme/material.resources/spinner/down.png );
+}
+
+DateTime-DropDownButton-Icon:hover {
+  background-image: url( theme/material.resources/spinner/down-hover.png );
+}
+
+DateTime-DropDownCalendar {
+  border: 1px #a7a6aa solid;
+}
+
+/* ExpandBar default theme */
+
+ExpandBar {
+  color: #4a4a4a;
+  background-color: white;
+}
+
+ExpandBar[BORDER] {
+  border: 1px solid #bdbdbd;
+  border-radius: 2px;
+}
+
+ExpandItem {
+  border: 1px solid #bdbdbd;
+  border-radius: 2px;
+}
+
+ExpandItem-Header {
+  border: none;
+  border-radius: 0;
+  cursor: pointer;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #f9f9f9 ),
+    to( #e4e4e4 )
+  );
+  text-shadow: none;
+}
+
+ExpandItem-Header:disabled {
+  cursor: default;
+}
+
+ExpandItem-Button {
+  background-image: url( theme/material.resources/expanditem/expanditem-expand.png );
+}
+
+ExpandItem-Button:hover {
+  background-image: url( theme/material.resources/expanditem/expanditem-expand-hover.png );
+}
+
+ExpandItem-Button:expanded {
+  background-image: url( theme/material.resources/expanditem/expanditem-collapse.png );
+}
+
+ExpandItem-Button:expanded:hover {
+  background-image: url( theme/material.resources/expanditem/expanditem-collapse-hover.png );
+}
+
+/* Sash default theme */
+
+Sash {
+  border: none;
+  background-image: none;
+  background-color: transparent;
+}
+
+Sash[BORDER] {
+  border: 1px solid #bdbdbd;
+}
+
+Sash:hover {
+  background-color: #e5e5e5;
+}
+
+Sash-Handle:horizontal {
+  background-image: url( theme/material.resources/sash/sash-handle-horizontal.png );
+}
+
+Sash-Handle:vertical {
+  background-image: url( theme/material.resources/sash/sash-handle-vertical.png );
+}
+
+/* Slider default theme */
+
+Slider {
+  border: none;
+  background-color: #f0f0f0;
+  border-radius: 2px;
+}
+
+/* Thumb */
+
+Slider-Thumb[HORIZONTAL],
+Slider-Thumb[VERTICAL] {
+  background-color: #e4e4e4;
+  background-image: url( theme/material.resources/slider/slider-background.png );
+  border: 1px solid #bdbdbd;
+  border-radius: 2px;
+}
+
+/* Buttons */
+
+Slider-UpButton,
+Slider-DownButton {
+  background-color: #e4e4e4;
+  border: 1px solid #bdbdbd;
+  cursor: default;
+  padding: 0;
+}
+
+Slider-UpButton[HORIZONTAL],
+Slider-DownButton[HORIZONTAL] {
+  background-image: none;
+}
+
+Slider-UpButton[VERTICAL],
+Slider-DownButton[VERTICAL] {
+  background-image: none;
+}
+
+Slider-UpButton[HORIZONTAL]:pressed,
+Slider-DownButton[HORIZONTAL]:pressed {
+  background-image: none;
+}
+
+Slider-UpButton[VERTICAL]:pressed,
+Slider-DownButton[VERTICAL]:pressed {
+  background-image: none;
+}
+
+/* Rounded Borders */
+
+Slider-UpButton[HORIZONTAL] {
+  border-radius: 0px 2px 2px 0px;
+}
+
+Slider-UpButton[VERTICAL] {
+  border-radius: 0px 0px 2px 2px;
+}
+
+Slider-DownButton[HORIZONTAL] {
+  border-radius: 2px 0px 0px 2px;
+}
+
+Slider-DownButton[VERTICAL] {
+  border-radius: 2px 2px 0px 0px;
+}
+
+/* Button Icons */
+
+Slider-UpButton-Icon[HORIZONTAL] {
+  background-image: url( theme/material.resources/slider/right.png );
+}
+
+Slider-UpButton-Icon[HORIZONTAL][RIGHT_TO_LEFT] {
+  background-image: url( theme/material.resources/slider/left.png );
+}
+
+Slider-UpButton-Icon[VERTICAL] {
+  background-image: url( theme/material.resources/slider/down.png );
+}
+
+Slider-DownButton-Icon[HORIZONTAL] {
+  background-image: url( theme/material.resources/slider/left.png );
+}
+
+Slider-DownButton-Icon[HORIZONTAL][RIGHT_TO_LEFT] {
+  background-image: url( theme/material.resources/slider/right.png );
+}
+
+Slider-DownButton-Icon[VERTICAL] {
+  background-image: url( theme/material.resources/slider/up.png );
+}
+
+/* ToolTip default theme */
+
+ToolTip {
+  cursor: default;
+  border: 1px solid #a0b3ca;
+  border-radius: 2px;
+  padding: 8px;
+  opacity: 1;
+  color: #4a4a4a;
+  background-image : gradient(
+    linear, left top, right top,
+    from( #f8f9ff ),
+    to( #f4f4f4 )
+  );
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  background-color: #fcfcfc;
+  animation: fadeIn 200ms linear, fadeOut 600ms ease-out;
+  box-shadow: 0 0 4px #adadad;
+}
+
+ToolTip-Image[ICON_ERROR] {
+  background-image: url( theme/material.resources/tooltip/error.png );
+}
+
+ToolTip-Image[ICON_INFORMATION] {
+  background-image: url( theme/material.resources/tooltip/information.png );
+}
+
+ToolTip-Image[ICON_WARNING] {
+  background-image: url( theme/material.resources/tooltip/warning.png );
+}
+
+ToolTip-Text {
+  color: #4a4a4a;
+  font: bold 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  text-shadow: none;
+}
+
+ToolTip-Message {
+  color: #4a4a4a;
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  text-shadow: none;
+}
+
+/* CCombo default theme */
+
+CCombo {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  color: #4a4a4a;
+  background-color: #ffffff;
+  background-image: none;
+  border: none;
+  border-radius: 0 2px 2px 0;
+  text-shadow: none;
+  box-shadow: none;
+}
+
+CCombo[BORDER] {
+  border: 1px solid #aaaaaa;
+  border-radius: 0 2px 2px 0;
+  box-shadow: inset 0 0 3px #bdbdbd;
+}
+
+CCombo[BORDER]:focused {
+  border: 1px solid #4f7cb1;
+  box-shadow: 0 0 5px #4f7cb1;
+}
+
+CCombo:disabled,
+CCombo[BORDER]:disabled {
+  box-shadow: none;
+}
+
+CCombo-Button {
+  cursor: default;
+  background-color: #efefef;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #f9f9f9 ),
+    to( #e4e4e4 )
+  );
+  border: none;
+  border-left: 1px solid #bdbdbd;
+  border-radius: 0px 2px 2px 0px;
+  width: 30px;
+}
+
+CCombo-Button[RIGHT_TO_LEFT] {
+  border: none;
+  border-right: 1px solid #bdbdbd;
+}
+
+CCombo-Button:disabled {
+  background-image: none;
+  background-color: transparent;
+}
+
+CCombo-Button-Icon {
+  background-image: url( theme/material.resources/ccombo/down.png );
+}
+
+CCombo-Button-Icon:hover {
+  background-image: url( theme/material.resources/ccombo/down-hover.png );
+}
+
+CCombo-List {
+  border: 1px solid #4f7cb1;
+  box-shadow: 0 0 5px #4f7cb1;
+  border-radius: 2px;
+}
+
+CCombo-List-Item {
+  color: inherit;
+  background-color: transparent;
+  background-image: none;
+  text-decoration: none;
+  text-shadow: none;
+  padding: 6px 10px 6px 10px;
+}
+
+CCombo-List-Item:hover, CCombo-List-Item:even:hover {
+  background-color: #f0f0f0;
+}
+
+CCombo-List-Item:selected, CCombo-List-Item:even:selected {
+  background-color: #c5dbef;
+}
+
+CCombo-Field {
+  padding: 5px 10px 5px 10px;
+}
+
+CCombo-FocusIndicator {
+  background-color: transparent;
+  border: none;
+  margin: 0;
+  opacity: 0;
+}
+
+/* CLabel default theme */
+
+CLabel {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  color: #4a4a4a;
+  background-color: #ffffff;
+  background-image: none;
+  background-repeat: repeat;
+  background-position: left top;
+  border: none;
+  padding: 6px;
+  spacing: 5px;
+  cursor: default;
+  opacity: 1;
+  text-shadow: none;
+}
+
+CLabel[BORDER] {
+  border: 1px solid #bdbdbd;
+  border-radius: 2px;
+}
+
+/* Browser default theme */
+
+Browser {
+  border: none;
+}
+
+Browser[BORDER] {
+  border: 1px solid #a4a4a4;
+}
+
+/* ScrollBar default theme */
+
+ScrollBar {
+  background-color: transparent;
+  background-image: none;
+  border: none;
+  border-radius: 0;
+  width: 8px;
+  opacity: 0;
+}
+
+ScrollBar:active {
+  opacity: 0.8;
+}
+
+ScrollBar-Thumb {
+  background-color: #cccccc;
+  border: 1px solid #bdbdbd;
+  border-radius: 15px;
+  background-image: none;
+  min-height: 20px;
+}
+
+ScrollBar-UpButton,
+ScrollBar-DownButton {
+  background-color: transparent;
+  border: none;
+  border-radius: 0;
+  cursor: default;
+  background-image: none;
+}
+
+/* FileUpload default theme */
+
+FileUpload {
+  font: 14px 'Segoe UI', 'Liberation Sans', 'DejaVu Sans', Verdana, "Lucida Sans", Arial, Helvetica, sans-serif;
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #f9f9f9 ),
+    to( #e4e4e4 )
+  );
+  background-repeat: repeat;
+  background-position: left top;
+  border: 1px solid #bdbdbd;
+  border-radius: 2px;
+  padding: 6px 15px;
+  spacing: 2px;
+  cursor: pointer;
+  animation: none;
+  color: #4a4a4a;
+  background-color: #ffffff;
+  opacity: 1;
+  text-shadow: 0 1px 0 #ffffff;
+}
+
+FileUpload:disabled {
+  cursor: default;
+  color: #d2d2d2;
+  background-image: none;
+  background-color: #fafafa;
+  border: 1px solid #d2d2d2;
+}
+
+FileUpload:hover {
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #eaeaea ),
+    to( #d5d5d5 )
+  );
+}
+
+FileUpload:pressed {
+  background-image: gradient(
+    linear, left top, left bottom,
+    from( #d5d5d5 ),
+    to( #eaeaea )
+  );
+}
+
+FileUpload-FocusIndicator {
+  background-color: transparent;
+  border: 1px dotted #b8b8b8;
+  margin: 2px;
+  padding: 0px;
+  opacity: 1;
+}
+
+/* JFace specific theming */
+
+Shell.jface_contentProposalPopup, Shell.jface_infoPopupDialog {
+  border: 1px solid #bdbdbd;
+  padding: 0;
+  box-shadow: 0 0 4px #ababab;
+}
+
+/* Header */
+Composite.header {
+  background-color: #000000;
+}
+
+
+/* Menu bar */
+Composite.menuBar {
+  background-color: #0094FF;
+}
diff --git a/webui/webapp/Core/theme/material.resources/arrows/chevron-left-hover.png b/webui/webapp/Core/theme/material.resources/arrows/chevron-left-hover.png
new file mode 100644 (file)
index 0000000..2187463
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/arrows/chevron-left-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/arrows/chevron-left.png b/webui/webapp/Core/theme/material.resources/arrows/chevron-left.png
new file mode 100644 (file)
index 0000000..6f35d3f
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/arrows/chevron-left.png differ
diff --git a/webui/webapp/Core/theme/material.resources/arrows/tooltip-down.png b/webui/webapp/Core/theme/material.resources/arrows/tooltip-down.png
new file mode 100644 (file)
index 0000000..9706bfa
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/arrows/tooltip-down.png differ
diff --git a/webui/webapp/Core/theme/material.resources/arrows/tooltip-left.png b/webui/webapp/Core/theme/material.resources/arrows/tooltip-left.png
new file mode 100644 (file)
index 0000000..950054c
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/arrows/tooltip-left.png differ
diff --git a/webui/webapp/Core/theme/material.resources/arrows/tooltip-right.png b/webui/webapp/Core/theme/material.resources/arrows/tooltip-right.png
new file mode 100644 (file)
index 0000000..ab15c3a
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/arrows/tooltip-right.png differ
diff --git a/webui/webapp/Core/theme/material.resources/arrows/tooltip-up.png b/webui/webapp/Core/theme/material.resources/arrows/tooltip-up.png
new file mode 100644 (file)
index 0000000..8450c31
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/arrows/tooltip-up.png differ
diff --git a/webui/webapp/Core/theme/material.resources/button/check-grayed-hover.png b/webui/webapp/Core/theme/material.resources/button/check-grayed-hover.png
new file mode 100644 (file)
index 0000000..337b68b
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/button/check-grayed-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/button/check-grayed.png b/webui/webapp/Core/theme/material.resources/button/check-grayed.png
new file mode 100644 (file)
index 0000000..39c03e8
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/button/check-grayed.png differ
diff --git a/webui/webapp/Core/theme/material.resources/button/check-selected-hover.png b/webui/webapp/Core/theme/material.resources/button/check-selected-hover.png
new file mode 100644 (file)
index 0000000..4022cea
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/button/check-selected-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/button/check-selected.png b/webui/webapp/Core/theme/material.resources/button/check-selected.png
new file mode 100644 (file)
index 0000000..c9f54c9
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/button/check-selected.png differ
diff --git a/webui/webapp/Core/theme/material.resources/button/check-unselected-hover.png b/webui/webapp/Core/theme/material.resources/button/check-unselected-hover.png
new file mode 100644 (file)
index 0000000..7594bed
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/button/check-unselected-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/button/check-unselected.png b/webui/webapp/Core/theme/material.resources/button/check-unselected.png
new file mode 100644 (file)
index 0000000..66bd083
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/button/check-unselected.png differ
diff --git a/webui/webapp/Core/theme/material.resources/button/radio-selected-hover.png b/webui/webapp/Core/theme/material.resources/button/radio-selected-hover.png
new file mode 100644 (file)
index 0000000..9418ee0
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/button/radio-selected-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/button/radio-selected.png b/webui/webapp/Core/theme/material.resources/button/radio-selected.png
new file mode 100644 (file)
index 0000000..45f244c
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/button/radio-selected.png differ
diff --git a/webui/webapp/Core/theme/material.resources/button/radio-unselected-hover.png b/webui/webapp/Core/theme/material.resources/button/radio-unselected-hover.png
new file mode 100644 (file)
index 0000000..83425ca
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/button/radio-unselected-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/button/radio-unselected.png b/webui/webapp/Core/theme/material.resources/button/radio-unselected.png
new file mode 100644 (file)
index 0000000..7dbbd7d
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/button/radio-unselected.png differ
diff --git a/webui/webapp/Core/theme/material.resources/ccombo/down-hover.png b/webui/webapp/Core/theme/material.resources/ccombo/down-hover.png
new file mode 100644 (file)
index 0000000..cced7e5
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/ccombo/down-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/ccombo/down.png b/webui/webapp/Core/theme/material.resources/ccombo/down.png
new file mode 100644 (file)
index 0000000..da355c6
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/ccombo/down.png differ
diff --git a/webui/webapp/Core/theme/material.resources/combo/down-hover.png b/webui/webapp/Core/theme/material.resources/combo/down-hover.png
new file mode 100644 (file)
index 0000000..cced7e5
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/combo/down-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/combo/down.png b/webui/webapp/Core/theme/material.resources/combo/down.png
new file mode 100644 (file)
index 0000000..da355c6
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/combo/down.png differ
diff --git a/webui/webapp/Core/theme/material.resources/ctabfolder/ctabfolder-dropdown-left-hover.png b/webui/webapp/Core/theme/material.resources/ctabfolder/ctabfolder-dropdown-left-hover.png
new file mode 100644 (file)
index 0000000..c33127b
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/ctabfolder/ctabfolder-dropdown-left-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/ctabfolder/ctabfolder-dropdown-left.png b/webui/webapp/Core/theme/material.resources/ctabfolder/ctabfolder-dropdown-left.png
new file mode 100644 (file)
index 0000000..977bf73
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/ctabfolder/ctabfolder-dropdown-left.png differ
diff --git a/webui/webapp/Core/theme/material.resources/datetime/down-hover.png b/webui/webapp/Core/theme/material.resources/datetime/down-hover.png
new file mode 100644 (file)
index 0000000..cced7e5
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/datetime/down-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/datetime/down.png b/webui/webapp/Core/theme/material.resources/datetime/down.png
new file mode 100644 (file)
index 0000000..da355c6
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/datetime/down.png differ
diff --git a/webui/webapp/Core/theme/material.resources/datetime/up-hover.png b/webui/webapp/Core/theme/material.resources/datetime/up-hover.png
new file mode 100644 (file)
index 0000000..5239d50
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/datetime/up-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/datetime/up.png b/webui/webapp/Core/theme/material.resources/datetime/up.png
new file mode 100644 (file)
index 0000000..457895c
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/datetime/up.png differ
diff --git a/webui/webapp/Core/theme/material.resources/dialog/error.png b/webui/webapp/Core/theme/material.resources/dialog/error.png
new file mode 100644 (file)
index 0000000..70dcfe0
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/dialog/error.png differ
diff --git a/webui/webapp/Core/theme/material.resources/dialog/information.png b/webui/webapp/Core/theme/material.resources/dialog/information.png
new file mode 100644 (file)
index 0000000..1dbef8c
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/dialog/information.png differ
diff --git a/webui/webapp/Core/theme/material.resources/dialog/question.png b/webui/webapp/Core/theme/material.resources/dialog/question.png
new file mode 100644 (file)
index 0000000..cdf49e9
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/dialog/question.png differ
diff --git a/webui/webapp/Core/theme/material.resources/dialog/warning.png b/webui/webapp/Core/theme/material.resources/dialog/warning.png
new file mode 100644 (file)
index 0000000..3c5bdd0
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/dialog/warning.png differ
diff --git a/webui/webapp/Core/theme/material.resources/display/loading.gif b/webui/webapp/Core/theme/material.resources/display/loading.gif
new file mode 100644 (file)
index 0000000..3288d10
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/display/loading.gif differ
diff --git a/webui/webapp/Core/theme/material.resources/menu/arrow-left.gif b/webui/webapp/Core/theme/material.resources/menu/arrow-left.gif
new file mode 100644 (file)
index 0000000..b19df17
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/menu/arrow-left.gif differ
diff --git a/webui/webapp/Core/theme/material.resources/menu/menu-background.png b/webui/webapp/Core/theme/material.resources/menu/menu-background.png
new file mode 100644 (file)
index 0000000..b82dc94
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/menu/menu-background.png differ
diff --git a/webui/webapp/Core/theme/material.resources/progressbar/progressbar-background.png b/webui/webapp/Core/theme/material.resources/progressbar/progressbar-background.png
new file mode 100644 (file)
index 0000000..b82dc94
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/progressbar/progressbar-background.png differ
diff --git a/webui/webapp/Core/theme/material.resources/sash/sash-handle-horizontal.png b/webui/webapp/Core/theme/material.resources/sash/sash-handle-horizontal.png
new file mode 100644 (file)
index 0000000..6504816
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/sash/sash-handle-horizontal.png differ
diff --git a/webui/webapp/Core/theme/material.resources/sash/sash-handle-vertical.png b/webui/webapp/Core/theme/material.resources/sash/sash-handle-vertical.png
new file mode 100644 (file)
index 0000000..1fe50da
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/sash/sash-handle-vertical.png differ
diff --git a/webui/webapp/Core/theme/material.resources/scrollbar/down.png b/webui/webapp/Core/theme/material.resources/scrollbar/down.png
new file mode 100644 (file)
index 0000000..c610f24
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/scrollbar/down.png differ
diff --git a/webui/webapp/Core/theme/material.resources/scrollbar/left.png b/webui/webapp/Core/theme/material.resources/scrollbar/left.png
new file mode 100644 (file)
index 0000000..3734835
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/scrollbar/left.png differ
diff --git a/webui/webapp/Core/theme/material.resources/scrollbar/right.png b/webui/webapp/Core/theme/material.resources/scrollbar/right.png
new file mode 100644 (file)
index 0000000..dae97b1
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/scrollbar/right.png differ
diff --git a/webui/webapp/Core/theme/material.resources/scrollbar/scrollbar-background.png b/webui/webapp/Core/theme/material.resources/scrollbar/scrollbar-background.png
new file mode 100644 (file)
index 0000000..b82dc94
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/scrollbar/scrollbar-background.png differ
diff --git a/webui/webapp/Core/theme/material.resources/scrollbar/up.png b/webui/webapp/Core/theme/material.resources/scrollbar/up.png
new file mode 100644 (file)
index 0000000..0d2ffc3
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/scrollbar/up.png differ
diff --git a/webui/webapp/Core/theme/material.resources/slider/down.png b/webui/webapp/Core/theme/material.resources/slider/down.png
new file mode 100644 (file)
index 0000000..c610f24
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/slider/down.png differ
diff --git a/webui/webapp/Core/theme/material.resources/slider/left.png b/webui/webapp/Core/theme/material.resources/slider/left.png
new file mode 100644 (file)
index 0000000..3734835
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/slider/left.png differ
diff --git a/webui/webapp/Core/theme/material.resources/slider/right.png b/webui/webapp/Core/theme/material.resources/slider/right.png
new file mode 100644 (file)
index 0000000..dae97b1
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/slider/right.png differ
diff --git a/webui/webapp/Core/theme/material.resources/slider/slider-background.png b/webui/webapp/Core/theme/material.resources/slider/slider-background.png
new file mode 100644 (file)
index 0000000..b82dc94
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/slider/slider-background.png differ
diff --git a/webui/webapp/Core/theme/material.resources/slider/up.png b/webui/webapp/Core/theme/material.resources/slider/up.png
new file mode 100644 (file)
index 0000000..0d2ffc3
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/slider/up.png differ
diff --git a/webui/webapp/Core/theme/material.resources/spinner/down-hover.png b/webui/webapp/Core/theme/material.resources/spinner/down-hover.png
new file mode 100644 (file)
index 0000000..cced7e5
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/spinner/down-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/spinner/down.png b/webui/webapp/Core/theme/material.resources/spinner/down.png
new file mode 100644 (file)
index 0000000..da355c6
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/spinner/down.png differ
diff --git a/webui/webapp/Core/theme/material.resources/spinner/up-hover.png b/webui/webapp/Core/theme/material.resources/spinner/up-hover.png
new file mode 100644 (file)
index 0000000..5239d50
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/spinner/up-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/spinner/up.png b/webui/webapp/Core/theme/material.resources/spinner/up.png
new file mode 100644 (file)
index 0000000..457895c
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/spinner/up.png differ
diff --git a/webui/webapp/Core/theme/material.resources/text/clear.gif b/webui/webapp/Core/theme/material.resources/text/clear.gif
new file mode 100644 (file)
index 0000000..2d3935a
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/text/clear.gif differ
diff --git a/webui/webapp/Core/theme/material.resources/text/find.png b/webui/webapp/Core/theme/material.resources/text/find.png
new file mode 100644 (file)
index 0000000..611189d
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/text/find.png differ
diff --git a/webui/webapp/Core/theme/material.resources/toolbar/down.png b/webui/webapp/Core/theme/material.resources/toolbar/down.png
new file mode 100644 (file)
index 0000000..da355c6
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/toolbar/down.png differ
diff --git a/webui/webapp/Core/theme/material.resources/tooltip/error.png b/webui/webapp/Core/theme/material.resources/tooltip/error.png
new file mode 100644 (file)
index 0000000..70dcfe0
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/tooltip/error.png differ
diff --git a/webui/webapp/Core/theme/material.resources/tooltip/information.png b/webui/webapp/Core/theme/material.resources/tooltip/information.png
new file mode 100644 (file)
index 0000000..1dbef8c
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/tooltip/information.png differ
diff --git a/webui/webapp/Core/theme/material.resources/tooltip/warning.png b/webui/webapp/Core/theme/material.resources/tooltip/warning.png
new file mode 100644 (file)
index 0000000..3c5bdd0
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/tooltip/warning.png differ
diff --git a/webui/webapp/Core/theme/material.resources/tree/loading.gif b/webui/webapp/Core/theme/material.resources/tree/loading.gif
new file mode 100644 (file)
index 0000000..2042fbd
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/tree/loading.gif differ
diff --git a/webui/webapp/Core/theme/material.resources/tree/tree-collapsed-hover-left.png b/webui/webapp/Core/theme/material.resources/tree/tree-collapsed-hover-left.png
new file mode 100644 (file)
index 0000000..4f3fd37
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/tree/tree-collapsed-hover-left.png differ
diff --git a/webui/webapp/Core/theme/material.resources/tree/tree-collapsed-left.png b/webui/webapp/Core/theme/material.resources/tree/tree-collapsed-left.png
new file mode 100644 (file)
index 0000000..4f3fd37
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/tree/tree-collapsed-left.png differ
diff --git a/webui/webapp/Core/theme/material.resources/tree/tree-expanded-hover-left.png b/webui/webapp/Core/theme/material.resources/tree/tree-expanded-hover-left.png
new file mode 100644 (file)
index 0000000..3d46c48
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/tree/tree-expanded-hover-left.png differ
diff --git a/webui/webapp/Core/theme/material.resources/tree/tree-expanded-left.png b/webui/webapp/Core/theme/material.resources/tree/tree-expanded-left.png
new file mode 100644 (file)
index 0000000..3d46c48
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/tree/tree-expanded-left.png differ
diff --git a/webui/webapp/Core/theme/material.resources/window/shell-close-hover.png b/webui/webapp/Core/theme/material.resources/window/shell-close-hover.png
new file mode 100644 (file)
index 0000000..ae3242f
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/window/shell-close-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/window/shell-close.png b/webui/webapp/Core/theme/material.resources/window/shell-close.png
new file mode 100644 (file)
index 0000000..66d191d
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/window/shell-close.png differ
diff --git a/webui/webapp/Core/theme/material.resources/window/shell-max-hover.png b/webui/webapp/Core/theme/material.resources/window/shell-max-hover.png
new file mode 100644 (file)
index 0000000..11a0066
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/window/shell-max-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/window/shell-max.png b/webui/webapp/Core/theme/material.resources/window/shell-max.png
new file mode 100644 (file)
index 0000000..cf2c8b5
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/window/shell-max.png differ
diff --git a/webui/webapp/Core/theme/material.resources/window/shell-min-hover.png b/webui/webapp/Core/theme/material.resources/window/shell-min-hover.png
new file mode 100644 (file)
index 0000000..14ba81f
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/window/shell-min-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/window/shell-min.png b/webui/webapp/Core/theme/material.resources/window/shell-min.png
new file mode 100644 (file)
index 0000000..99a8133
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/window/shell-min.png differ
diff --git a/webui/webapp/Core/theme/material.resources/window/shell-restore-hover.png b/webui/webapp/Core/theme/material.resources/window/shell-restore-hover.png
new file mode 100644 (file)
index 0000000..8c95572
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/window/shell-restore-hover.png differ
diff --git a/webui/webapp/Core/theme/material.resources/window/shell-restore.png b/webui/webapp/Core/theme/material.resources/window/shell-restore.png
new file mode 100644 (file)
index 0000000..716c5ce
Binary files /dev/null and b/webui/webapp/Core/theme/material.resources/window/shell-restore.png differ