diff --git a/pom.xml b/pom.xml index c333c8f..0d84a4f 100644 --- a/pom.xml +++ b/pom.xml @@ -154,6 +154,14 @@ [1.0.0-SNAPSHOT,2.0.0-SNAPSHOT) provided + + + + org.gcube.portlets.user + tabular-data-resources-widget + [1.0.0-SNAPSHOT,2.0.0-SNAPSHOT) + provided + diff --git a/src/main/java/org/gcube/portlets/user/td/toolboxwidget/ToolBox.gwt.xml b/src/main/java/org/gcube/portlets/user/td/toolboxwidget/ToolBox.gwt.xml index 6d1c639..28f057d 100644 --- a/src/main/java/org/gcube/portlets/user/td/toolboxwidget/ToolBox.gwt.xml +++ b/src/main/java/org/gcube/portlets/user/td/toolboxwidget/ToolBox.gwt.xml @@ -1,36 +1,42 @@ - - + + - - - + + + - - - - - - + + + + + + - - - - - - - - - - - - - - + + + + - - - + + + + + + + + + + + + + + + + diff --git a/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/ToolBox.java b/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/ToolBox.java index 6244032..61b8c5e 100644 --- a/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/ToolBox.java +++ b/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/ToolBox.java @@ -6,6 +6,7 @@ import org.gcube.portlets.user.td.columnwidget.client.LabelColumnPanel; import org.gcube.portlets.user.td.columnwidget.client.create.AddColumnPanel; import org.gcube.portlets.user.td.informationwidget.client.TabularResourceProperties; import org.gcube.portlets.user.td.monitorwidget.client.background.MonitorBackgroundPanel; +import org.gcube.portlets.user.td.resourceswidget.client.ResourcesPanel; import org.gcube.portlets.user.td.tablewidget.client.ChangeTableTypePanel; import org.gcube.portlets.user.td.tablewidget.client.history.HistoryPanel; import org.gcube.portlets.user.td.tablewidget.client.normalize.DenormalizePanel; @@ -53,6 +54,7 @@ public class ToolBox extends TabPanel { protected NormalizePanel normalizePanel; protected DenormalizePanel denormalizePanel; protected MonitorBackgroundPanel monitorBackgroundPanel; + protected ResourcesPanel resourcesPanel; // protected TdTaskController tdTaskController; // protected DialogBox tdTaskMainWindow; @@ -111,6 +113,9 @@ public class ToolBox extends TabPanel { setActiveWidget(historyPanel); } + + + public void openColumnTypeChangeTab(TRId trId, String columnName) { Log.debug("Open Column Type Change Tab"); @@ -250,6 +255,15 @@ public class ToolBox extends TabPanel { setActiveWidget(duplicatesRowsPanel); } + + public void openResourcesTab(TRId trId) { + Log.debug("Open Resources Tab"); + if (resourcesPanel == null) { + addResourcesPanel(trId); + } + setActiveWidget(resourcesPanel); + + } // Close public void closePropertiesTabs() { @@ -383,7 +397,18 @@ public class ToolBox extends TabPanel { denormalizePanel = null; } } + + public void closeResourcesPanel() { + Log.debug("Close ResourcesPanel Tab"); + if (resourcesPanel != null) { + remove(resourcesPanel); + resourcesPanel = null; + } + } + + // + public void updateTabs() { try { Log.debug("Update ToolBox Tabs"); @@ -407,8 +432,14 @@ public class ToolBox extends TabPanel { if (validationsTasksPanel != null) { validationsTasksPanel.update(); - //validationsTasksPanel.forceLayout(); + } + + if (resourcesPanel != null) { + resourcesPanel.update(); + + } + if (changeColumnTypePanel != null) { remove(changeColumnTypePanel); @@ -748,6 +779,28 @@ public class ToolBox extends TabPanel { }); }; + + protected void addResourcesPanel(TRId trId) { + TabItemConfig resourcesItemConf = new TabItemConfig( + "Resources", true); + + resourcesPanel = new ResourcesPanel(trId, eventBus); + add(resourcesPanel, resourcesItemConf); + + addBeforeCloseHandler(new BeforeCloseHandler() { + + public void onBeforeClose(BeforeCloseEvent event) { + if (resourcesPanel == event.getItem()) { + remove(resourcesPanel); + resourcesPanel = null; + + } + + } + + }); + }; + protected void addDuplicatesRowsPanel(TRId trId) { TabItemConfig duplicatesRowsDeleteItemConf = new TabItemConfig( diff --git a/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/ToolBoxPanel.java b/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/ToolBoxPanel.java index 4091eb9..8dc89ec 100644 --- a/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/ToolBoxPanel.java +++ b/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/ToolBoxPanel.java @@ -157,10 +157,12 @@ public class ToolBoxPanel extends ContentPanel { case DENORMALIZEPANEL: doDenormalizeTab(event); break; - case MONITORBACKGROUNDPANEL: doMonitorBackgroundTab(event); break; + case RESOURCESPANEL: + doResourcesTab(event); + break; default: break; @@ -414,6 +416,26 @@ public class ToolBoxPanel extends ContentPanel { Log.debug("ToolBoxPanel No table open"); } } + + protected void doResourcesTab(WidgetRequestEvent event) { + Log.debug("WidgetRequestEvent.ResourcesPanel : [" + + event.getTrId() + "]"); + if (uiStateType == UIStateType.TR_OPEN + || uiStateType == UIStateType.TABLECURATION + || uiStateType == UIStateType.TABLEUPDATE) { + if (state == ToolBoxPanelState.OPENED) { + toolBox.openResourcesTab(event.getTrId()); + Log.debug("ToolBoxPanelSTate.OPENED Add Tabs"); + } else { + enable(); + expand(); + state = ToolBoxPanelState.OPENED; + toolBox.openResourcesTab(event.getTrId()); + } + } else { + Log.debug("ToolBoxPanel No table open"); + } + } protected void doNormalizeTab(WidgetRequestEvent event) { Log.debug("WidgetRequestEvent.NoramlizePanel : [" + event.getTrId() @@ -517,6 +539,7 @@ public class ToolBoxPanel extends ContentPanel { toolBox.closeValidationsTasksPanel(); toolBox.closeNormalizePanel(); toolBox.closeDenormalizePanel(); + toolBox.closeResourcesPanel(); Log.debug("ToolBoxPanel Closed"); } diff --git a/src/main/resources/org/gcube/portlets/user/td/toolboxwidget/ToolBox.gwt.xml b/src/main/resources/org/gcube/portlets/user/td/toolboxwidget/ToolBox.gwt.xml index 8c8ebff..776802c 100644 --- a/src/main/resources/org/gcube/portlets/user/td/toolboxwidget/ToolBox.gwt.xml +++ b/src/main/resources/org/gcube/portlets/user/td/toolboxwidget/ToolBox.gwt.xml @@ -1,40 +1,43 @@ - - + + - - - + + + - - - - - - + + + + + + - - - - - - - - - - - - - - - - - - + + + + - - - + + + + + + + + + + + + + + + + +