Change in ovirt-engine[master]: webadmin, userportal: Introducing column control menu

vszocs at redhat.com vszocs at redhat.com
Wed Nov 25 15:16:56 UTC 2015


Vojtech Szocs has submitted this change and it was merged.

Change subject: webadmin,userportal: Introducing column control menu
......................................................................


webadmin,userportal: Introducing column control menu

This patch adds "column control" context menu to all tables
in main & sub tabs. Right-clicking table header area triggers
the menu, allowing users to control:

* column visibility (by clicking the check-box icon)
* column position (by clicking the arrow icons)

Context menu UI (ColumnContextMenu) uses jQuery for handling
menu items and their visualization. Context menu is kept in
sync with corresponding table via ColumnController interface.

Column's title shown in the context menu is taken from header
HTML (using jQuery.text) by default. If a table header's HTML
contains no text, title falls back to "(unnamed column)". Use
AbstractColumn.setContextMenuTitle to provide a custom title.

This patch also improves existing table code, e.g. 1px wide
"hidden" column handling in ColumnResizeCellTable.

This feature is opt-in by design, any table outside main & sub
tab context can activate it via enableHeaderContextMenu method.

This patch does NOT implement persistence of above mentioned
column settings. That will be done through a separate patch.

Change-Id: I0c7461981026b3dcd2b6b1fe6d8544e829ab098b
Bug-Url: https://bugzilla.redhat.com/957600
Bug-Url: https://bugzilla.redhat.com/1172390
Signed-off-by: Vojtech Szocs <vszocs at redhat.com>
---
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/idhandler/CellWithElementId.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/utils/JqueryUtils.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/PopupPanel.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/action/AbstractActionPanel.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/editor/ListModelObjectCellTable.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/AbstractActionTable.java
A frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/ColumnContextMenu.java
A frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/ColumnContextPopup.java
A frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/ColumnController.java
A frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/ColumnResizeCellTable.java
R frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/ColumnResizeHandler.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/ElementIdCellTable.java
R frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/HasResizableColumns.java
A frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/NativeContextMenuHandler.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/Cell.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/column/AbstractColumn.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/header/AbstractHeader.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/header/ResizableHeader.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/header/ResizeableCheckboxHeader.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/header/SafeHtmlHeader.java
D frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/resize/ColumnResizeCellTable.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/AbstractModelBoundTableWidget.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/vm/BaseVmDiskListModelTable.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/vm/VmSnapshotInfoPanel.java
M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/vm/VmSnapshotListModelTable.java
A frontend/webadmin/modules/gwt-common/src/main/resources/org/ovirt/engine/ui/common/css/ColumnContextMenu.css
A frontend/webadmin/modules/gwt-common/src/main/resources/org/ovirt/engine/ui/common/images/checkbox_no.png
A frontend/webadmin/modules/gwt-common/src/main/resources/org/ovirt/engine/ui/common/images/checkbox_yes.png
A frontend/webadmin/modules/gwt-common/src/main/resources/org/ovirt/engine/ui/common/images/move_down.png
A frontend/webadmin/modules/gwt-common/src/main/resources/org/ovirt/engine/ui/common/images/move_up.png
M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/AbstractMainTabTableView.java
M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/AbstractSubTabTableView.java
M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/AbstractSubTabTreeView.java
M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabDiskView.java
M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabEventView.java
M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabNetworkView.java
M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/network/SubTabNetworkHostView.java
M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/network/SubTabNetworkVmView.java
M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/storage/SubTabStorageDiskView.java
M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/storage/SubTabStorageRegisterDiskView.java
M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/storage/SubTabStorageSnapshotView.java
M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/template/SubTabTemplateDiskView.java
43 files changed, 1,496 insertions(+), 675 deletions(-)

Approvals:
  Alexander Wels: Looks good to me, approved
  Vojtech Szocs: Verified; Passed CI tests



-- 
To view, visit https://gerrit.ovirt.org/43401
To unsubscribe, visit https://gerrit.ovirt.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I0c7461981026b3dcd2b6b1fe6d8544e829ab098b
Gerrit-PatchSet: 11
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Vojtech Szocs <vszocs at redhat.com>
Gerrit-Reviewer: Alexander Wels <awels at redhat.com>
Gerrit-Reviewer: Alona Kaplan <alkaplan at redhat.com>
Gerrit-Reviewer: Daniel Erez <derez at redhat.com>
Gerrit-Reviewer: Einav Cohen <ecohen at redhat.com>
Gerrit-Reviewer: Greg Sheremeta <gshereme at redhat.com>
Gerrit-Reviewer: Jakub Niedermertl <jniederm at redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Martin Betak <mbetak at redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek at redhat.com>
Gerrit-Reviewer: Michal Skrivanek <mskrivan at redhat.com>
Gerrit-Reviewer: Tal Nisan <tnisan at redhat.com>
Gerrit-Reviewer: Tomas Jelinek <tjelinek at redhat.com>
Gerrit-Reviewer: Vojtech Szocs <vszocs at redhat.com>
Gerrit-Reviewer: gerrit-hooks <automation at ovirt.org>



More information about the Engine-commits mailing list