From 767633cfde50d6442ca170eb72af26dd1a47d527 Mon Sep 17 00:00:00 2001 From: "francesco.mangiacrapa" Date: Mon, 13 Jul 2020 15:35:32 +0200 Subject: [PATCH] working on #19600 --- .classpath | 6 ++--- .../com.gwtplugins.gdt.eclipse.core.prefs | 2 +- .settings/org.eclipse.wst.common.component | 5 +++- CHANGELOG.md | 7 ++++++ pom.xml | 2 +- .../user/workspace/client/AppController.java | 24 ++++++++++++++++++- .../view/panels/GxtBorderLayoutPanel.java | 21 +++++++++++----- 7 files changed, 54 insertions(+), 13 deletions(-) diff --git a/.classpath b/.classpath index b4798ae..ac03a5f 100644 --- a/.classpath +++ b/.classpath @@ -1,12 +1,12 @@ - + - + @@ -35,5 +35,5 @@ - + diff --git a/.settings/com.gwtplugins.gdt.eclipse.core.prefs b/.settings/com.gwtplugins.gdt.eclipse.core.prefs index 96844a8..195e25d 100644 --- a/.settings/com.gwtplugins.gdt.eclipse.core.prefs +++ b/.settings/com.gwtplugins.gdt.eclipse.core.prefs @@ -1,4 +1,4 @@ eclipse.preferences.version=1 -lastWarOutDir=/home/francesco/git/workspace/target/workspace-6.24.0 +lastWarOutDir=/home/francesco/git/workspace/target/workspace-6.24.1 warSrcDir=src/main/webapp warSrcDirIsOutput=false diff --git a/.settings/org.eclipse.wst.common.component b/.settings/org.eclipse.wst.common.component index cf40ed3..6bf4058 100644 --- a/.settings/org.eclipse.wst.common.component +++ b/.settings/org.eclipse.wst.common.component @@ -1,10 +1,13 @@ - + + + uses + diff --git a/CHANGELOG.md b/CHANGELOG.md index 02dc542..646143b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,13 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [v6.25.0] [r4.25.0] - 2020-07-13 + +#### Enhancements + +[#19600] revisit the "Get Info" Dialog in a modern view + + ## [v6.24.1] [r4.24.0] - 2020-06-22 [#19493] Just to include the ckan-util-library patched diff --git a/pom.xml b/pom.xml index fdd69cb..ecf31a4 100644 --- a/pom.xml +++ b/pom.xml @@ -13,7 +13,7 @@ org.gcube.portlets.user workspace war - 6.24.1 + 6.25.0-SNAPSHOT gCube Workspace Portlet gCube Workspace Portlet is a web-gui to manage the gCube workspace, a collaborative area where users can exchange and organize information objects (workspace items) according to their specific needs. diff --git a/src/main/java/org/gcube/portlets/user/workspace/client/AppController.java b/src/main/java/org/gcube/portlets/user/workspace/client/AppController.java index aa4b188..1ff9c46 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/client/AppController.java +++ b/src/main/java/org/gcube/portlets/user/workspace/client/AppController.java @@ -102,6 +102,7 @@ import org.gcube.portlets.user.workspace.client.view.trash.WindowTrash; import org.gcube.portlets.user.workspace.client.view.versioning.WindowVersioning; import org.gcube.portlets.user.workspace.client.view.windows.DialogConfirm; import org.gcube.portlets.user.workspace.client.view.windows.DialogGetInfo; +import org.gcube.portlets.user.workspace.client.view.windows.DialogGetInfoBootstrap; import org.gcube.portlets.user.workspace.client.view.windows.InfoDisplay; import org.gcube.portlets.user.workspace.client.view.windows.MessageBoxAlert; import org.gcube.portlets.user.workspace.shared.GarbageItem; @@ -123,6 +124,7 @@ import org.gcube.portlets.widgets.wsexplorer.client.view.grid.ItemsTable.DISPLAY import org.gcube.portlets.widgets.wsexplorer.shared.Item; import com.extjs.gxt.ui.client.core.XDOM; +import com.extjs.gxt.ui.client.widget.ContentPanel; import com.extjs.gxt.ui.client.widget.LayoutContainer; import com.extjs.gxt.ui.client.widget.MessageBox; import com.extjs.gxt.ui.client.widget.layout.FitLayout; @@ -193,6 +195,7 @@ public class AppController implements SubscriberInterface { EventsTypeEnum.TRASH_EVENT, EventsTypeEnum.UPDATE_WORKSPACE_SIZE, EventsTypeEnum.UPDATED_VRE_PERMISSION, + EventsTypeEnum.GET_DETAILS_FOR_ITEM, EventsTypeEnum.FILE_VERSIONING_HISTORY_EVENT }); bind(); @@ -458,12 +461,19 @@ public class AppController implements SubscriberInterface { if(!event.isMultiSelection()){ //IS NOT MULTISELECTION doElementGridSelected(true, event.getSourceFile()); - + + //showing item details if east panel is visible + if(getMainPanel().getEastPanel().isVisible()) { + showDetails(event.getSourceFile()); + } + }else{ //IS MULTISELECTION wsPortlet.getGxtCardLayoutResultPanel().getToolBarItemFunctionalities().activeButtonForMultiSelection(true); wsPortlet.getGxtCardLayoutResultPanel().getToolBarItemDetails().enableInfoHistoryButtons(event.getSourceFile(), false); } + + } }); @@ -2305,4 +2315,16 @@ public class AppController implements SubscriberInterface { AppController.getEventBus().fireEvent(new FileVersioningEvent(WorkspaceVersioningOperation.SHOW, file, null, null, null)); } + + + @Override + public void showDetails(FileModel fileModel) { + GWT.log("show details for: "+fileModel.getName()); + ContentPanel eastPanel = this.getMainPanel().getEastPanel(); + eastPanel.removeAll(); + DialogGetInfoBootstrap dlg = new DialogGetInfoBootstrap(fileModel); + eastPanel.add(dlg); + eastPanel.setVisible(true); + eastPanel.layout(); + } } diff --git a/src/main/java/org/gcube/portlets/user/workspace/client/view/panels/GxtBorderLayoutPanel.java b/src/main/java/org/gcube/portlets/user/workspace/client/view/panels/GxtBorderLayoutPanel.java index 41f879e..1a8cf39 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/client/view/panels/GxtBorderLayoutPanel.java +++ b/src/main/java/org/gcube/portlets/user/workspace/client/view/panels/GxtBorderLayoutPanel.java @@ -90,11 +90,14 @@ public class GxtBorderLayoutPanel extends ContentPanel { north.setHeaderVisible(false); west.setHeaderVisible(false); - south.setHeading(ConstantsPortlet.DETAILS); + /* south.setHeading(ConstantsPortlet.DETAILS); south.setHeaderVisible(false); - south.setLayout(new FitLayout()); + south.setLayout(new FitLayout());*/ + east.setHeading(ConstantsPortlet.DETAILS); + east.setHeaderVisible(false); east.setVisible(false); + east.setLayout(new FitLayout()); // south.setVisible(false); } @@ -128,13 +131,12 @@ public class GxtBorderLayoutPanel extends ContentPanel { BorderLayoutData centerData = new BorderLayoutData(LayoutRegion.CENTER); centerData.setMargins(new Margins(0)); - BorderLayoutData eastData = new BorderLayoutData(LayoutRegion.EAST, 150,50,150); + BorderLayoutData eastData = new BorderLayoutData(LayoutRegion.EAST, 430,430,600); eastData.setSplit(true); eastData.setCollapsible(true); - eastData.setMargins(new Margins(0,0,0,1)); + eastData.setMargins(new Margins(0,0,0,5)); - BorderLayoutData southData = new BorderLayoutData(LayoutRegion.SOUTH, 30,30,30); southData.setSplit(true); southData.setCollapsible(false); @@ -142,6 +144,7 @@ public class GxtBorderLayoutPanel extends ContentPanel { north.add(this.searchAndFilterContainer); north.setScrollMode(Scroll.AUTOY); + west.add(this.expPanel); @@ -191,10 +194,12 @@ public class GxtBorderLayoutPanel extends ContentPanel { public void handleEvent(BoxComponentEvent be) { expPanel.getAsycTreePanel().setSizeTreePanel(expPanel.getWidth()-13, expPanel.getHeight()-10); // if(expPanel.getSmartFolderPanel()!=null) -// expPanel.getSmartFolderPanel().setSizeSmartPanel(expPanel.getWidth()-2, expPanel.getHeight()-29); +// expPaneleast.getSmartFolderPanel().setSizeSmartPanel(expPanel.getWidth()-2, expPanel.getHeight()-29); } }); + + east.setScrollMode(Scroll.AUTOY); add(north, northData); add(west, westData); @@ -228,4 +233,8 @@ public class GxtBorderLayoutPanel extends ContentPanel { public void collapseTreePanel() { west.collapse(); } + + public ContentPanel getEastPanel() { + return east; + } } \ No newline at end of file