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 a19e0d1..e9a6ea3 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 @@ -8,6 +8,7 @@ import org.gcube.portlets.user.td.informationwidget.client.TabularResourceProper 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.geometry.GeometryCreatePointPanel; import org.gcube.portlets.user.td.tablewidget.client.geospatial.GeospatialCreateCoordinatesPanel; import org.gcube.portlets.user.td.tablewidget.client.history.HistoryPanel; import org.gcube.portlets.user.td.tablewidget.client.normalize.DenormalizePanel; @@ -36,6 +37,12 @@ import com.sencha.gxt.widget.core.client.event.SelectEvent; //import org.gcube.portlets.user.td.taskswidget.client.TdTaskController; +/** + * + * @author giancarlo + * email: g.panichi@isti.cnr.it + * + */ public class ToolBox extends TabPanel { private EventBus eventBus; @@ -60,10 +67,11 @@ public class ToolBox extends TabPanel { private MonitorBackgroundPanel monitorBackgroundPanel; private ResourcesPanel resourcesPanel; private GeospatialCreateCoordinatesPanel geospatialCreateCoordinatesPanel; - - // private TdTaskController tdTaskController; - // private DialogBox tdTaskMainWindow; + private GeometryCreatePointPanel geometryCreatePointPanel; + + private FramedPanel taskPanel; + public ToolBox(String name, EventBus eventBus, ToolBoxPanel toolBoxPanel) { super(); @@ -77,7 +85,7 @@ public class ToolBox extends TabPanel { setTabScroll(true); setCloseContextMenu(true); - // setResizeTabs(true); + } @@ -289,6 +297,22 @@ public class ToolBox extends TabPanel { setActiveWidget(geospatialCreateCoordinatesPanel); } + + + + public void openGeometryCreatePointTab(TRId trId) { + Log.debug("Open GeospatialCreateCoordinates Tab"); + if (geometryCreatePointPanel == null) { + addGeometryCreatePointPanel(trId); + } else { + geometryCreatePointPanel.update(trId); + } + setActiveWidget(geometryCreatePointPanel); + + + } + + // Close public void closePropertiesTabs() { @@ -446,7 +470,14 @@ public class ToolBox extends TabPanel { } } - + public void closeGeometryCreatePointPanel() { + Log.debug("Close GeometryCreatePoint Tab"); + if (geometryCreatePointPanel != null) { + remove(geometryCreatePointPanel); + geometryCreatePointPanel = null; + } + + } // public void updateTabs() { @@ -543,6 +574,12 @@ public class ToolBox extends TabPanel { geospatialCreateCoordinatesPanel = null; } + + if (geometryCreatePointPanel != null) { + remove(geometryCreatePointPanel); + geometryCreatePointPanel = null; + } + forceLayout(); } catch (Throwable e) { @@ -558,7 +595,7 @@ public class ToolBox extends TabPanel { helpPanel.setHeaderVisible(false); add(helpPanel, propertiesItemConf); - }; + } protected void addTrProperties() { TabItemConfig propertiesItemConf = new TabItemConfig("Properties", true); @@ -902,6 +939,31 @@ public class ToolBox extends TabPanel { }); }; + + private void addGeometryCreatePointPanel(TRId trId) { + TabItemConfig geometryCreatePointItemConf = new TabItemConfig( + "Point", true); + + geometryCreatePointPanel = new GeometryCreatePointPanel( + trId, eventBus); + add(geometryCreatePointPanel, + geometryCreatePointItemConf); + + addBeforeCloseHandler(new BeforeCloseHandler() { + + public void onBeforeClose(BeforeCloseEvent event) { + if (geometryCreatePointPanel == event.getItem()) { + remove(geometryCreatePointPanel); + geometryCreatePointPanel = null; + + } + + } + + }); + + } + protected void addDuplicatesRowsPanel(TRId trId) { TabItemConfig duplicatesRowsDeleteItemConf = new TabItemConfig( @@ -1003,4 +1065,6 @@ public class ToolBox extends TabPanel { } + + } diff --git a/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/ToolBoxEntry.java b/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/ToolBoxEntry.java index 320af72..0a1a87a 100644 --- a/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/ToolBoxEntry.java +++ b/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/ToolBoxEntry.java @@ -6,7 +6,12 @@ import com.google.gwt.user.client.ui.RootPanel; import com.google.web.bindery.event.shared.EventBus; import com.google.web.bindery.event.shared.SimpleEventBus; - +/** + * + * @author giancarlo + * email: g.panichi@isti.cnr.it + * + */ public class ToolBoxEntry implements EntryPoint { 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 695db71..17b001a 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 @@ -10,6 +10,12 @@ import com.allen_sauer.gwt.log.client.Log; import com.google.web.bindery.event.shared.EventBus; import com.sencha.gxt.widget.core.client.ContentPanel; +/** + * + * @author giancarlo + * email: g.panichi@isti.cnr.it + * + */ public class ToolBoxPanel extends ContentPanel { private EventBus eventBus; @@ -166,6 +172,10 @@ public class ToolBoxPanel extends ContentPanel { case GEOSPATIALCREATECOORDINATESPANEL: doGeospatialCreateCoordinatesTab(event); break; + case GEOMETRYCREATEPOINTPANEL: + doGeometryCreatePointTab(event); + break; + default: break; @@ -481,6 +491,29 @@ public class ToolBoxPanel extends ContentPanel { } } + protected void doGeometryCreatePointTab(WidgetRequestEvent event) { + Log.debug("WidgetRequestEvent.GeometryCreatePointPanel : [" + + event.getTrId() + "]"); + if (uiStateType == UIStateType.TR_OPEN + || uiStateType == UIStateType.TABLECURATION + || uiStateType == UIStateType.TABLEUPDATE) { + if (state == ToolBoxPanelState.OPENED) { + toolBox.openGeometryCreatePointTab(event.getTrId()); + Log.debug("ToolBoxPanelSTate.OPENED Add Tabs"); + } else { + enable(); + expand(); + state = ToolBoxPanelState.OPENED; + toolBox.openGeometryCreatePointTab(event.getTrId()); + } + } else { + Log.debug("ToolBoxPanel No table open"); + } + } + + + + protected void doNormalizeTab(WidgetRequestEvent event) { Log.debug("WidgetRequestEvent.NoramlizePanel : [" + event.getTrId() @@ -587,6 +620,7 @@ public class ToolBoxPanel extends ContentPanel { toolBox.closeDenormalizePanel(); toolBox.closeResourcesPanel(); toolBox.closeGeospatialCreateCoordinatesPanel(); + toolBox.closeGeometryCreatePointPanel(); Log.debug("ToolBoxPanel Closed"); } diff --git a/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/ToolBoxPanelState.java b/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/ToolBoxPanelState.java index 706a0cc..52e668d 100644 --- a/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/ToolBoxPanelState.java +++ b/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/ToolBoxPanelState.java @@ -1,5 +1,11 @@ package org.gcube.portlets.user.td.toolboxwidget.client; +/** + * + * @author giancarlo + * email: g.panichi@isti.cnr.it + * + */ public enum ToolBoxPanelState { CLOSED, OPENED; diff --git a/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/help/HelpPanel.java b/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/help/HelpPanel.java index 6f07539..9749c88 100644 --- a/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/help/HelpPanel.java +++ b/src/main/java/org/gcube/portlets/user/td/toolboxwidget/client/help/HelpPanel.java @@ -10,6 +10,12 @@ import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer; import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer.VerticalLayoutData; import com.sencha.gxt.widget.core.client.form.FieldSet; +/** + * + * @author giancarlo + * email: g.panichi@isti.cnr.it + * + */ public class HelpPanel extends FramedPanel { protected String headingTitle;