diff --git a/src/main/java/org/gcube/portlets/user/td/tablewidget/client/geometry/GeometryCreatePointPanel.java b/src/main/java/org/gcube/portlets/user/td/tablewidget/client/geometry/GeometryCreatePointPanel.java new file mode 100644 index 0000000..70059fe --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/td/tablewidget/client/geometry/GeometryCreatePointPanel.java @@ -0,0 +1,428 @@ +package org.gcube.portlets.user.td.tablewidget.client.geometry; + +import java.util.ArrayList; + +import org.gcube.portlets.user.td.columnwidget.client.properties.ColumnDataPropertiesCombo; +import org.gcube.portlets.user.td.gwtservice.client.rpc.TDGWTServiceAsync; +import org.gcube.portlets.user.td.gwtservice.shared.exception.TDGWTIsFinalException; +import org.gcube.portlets.user.td.gwtservice.shared.exception.TDGWTIsLockedException; +import org.gcube.portlets.user.td.gwtservice.shared.exception.TDGWTSessionExpiredException; +import org.gcube.portlets.user.td.gwtservice.shared.geospatial.GeospatialCreateCoordinatesSession; +import org.gcube.portlets.user.td.gwtservice.shared.tr.ColumnData; +import org.gcube.portlets.user.td.monitorwidget.client.MonitorDialog; +import org.gcube.portlets.user.td.monitorwidget.client.MonitorDialogListener; +import org.gcube.portlets.user.td.tablewidget.client.resources.ResourceBundle; +import org.gcube.portlets.user.td.tablewidget.client.util.UtilsGXT3; +import org.gcube.portlets.user.td.widgetcommonevent.client.event.ChangeTableRequestEvent; +import org.gcube.portlets.user.td.widgetcommonevent.client.event.SessionExpiredEvent; +import org.gcube.portlets.user.td.widgetcommonevent.client.type.ChangeTableRequestType; +import org.gcube.portlets.user.td.widgetcommonevent.client.type.ChangeTableWhy; +import org.gcube.portlets.user.td.widgetcommonevent.client.type.SessionExpiredType; +import org.gcube.portlets.user.td.widgetcommonevent.shared.OperationResult; +import org.gcube.portlets.user.td.widgetcommonevent.shared.TRId; +import org.gcube.portlets.user.td.widgetcommonevent.shared.tr.column.ColumnDataType; + +import com.allen_sauer.gwt.log.client.Log; +import com.google.gwt.core.client.GWT; +import com.google.gwt.event.logical.shared.SelectionEvent; +import com.google.gwt.event.logical.shared.SelectionHandler; +import com.google.gwt.user.client.rpc.AsyncCallback; +import com.google.web.bindery.event.shared.EventBus; +import com.sencha.gxt.cell.core.client.ButtonCell.IconAlign; +import com.sencha.gxt.cell.core.client.form.ComboBoxCell.TriggerAction; +import com.sencha.gxt.core.client.dom.ScrollSupport.ScrollMode; +import com.sencha.gxt.core.client.util.Margins; +import com.sencha.gxt.data.shared.LabelProvider; +import com.sencha.gxt.data.shared.ListStore; +import com.sencha.gxt.widget.core.client.FramedPanel; +import com.sencha.gxt.widget.core.client.button.TextButton; +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.event.SelectEvent; +import com.sencha.gxt.widget.core.client.event.SelectEvent.SelectHandler; +import com.sencha.gxt.widget.core.client.form.ComboBox; +import com.sencha.gxt.widget.core.client.form.FieldLabel; +import com.sencha.gxt.widget.core.client.info.Info; + +/** + * + * @author "Giancarlo Panichi" g.panichi@isti.cnr.it + * + */ +public class GeometryCreatePointPanel extends FramedPanel implements + MonitorDialogListener { + private static final String WIDTH = "640px"; + private static final String HEIGHT = "520px"; + + private TRId trId; + private EventBus eventBus; + private boolean created; + + private ArrayList columns; + private VerticalLayoutContainer vl; + + private TextButton createPointButton; + private ComboBox comboLatitude; + private ComboBox comboLongitude; + private ListStore storeComboLatitude; + private ListStore storeComboLongitude; + + public GeometryCreatePointPanel(TRId trId, EventBus eventBus) { + super(); + this.trId = trId; + + this.eventBus = eventBus; + this.created = false; + forceLayoutOnResize = true; + retrieveColumns(); + + } + + protected void testCreated() { + if (created) { + updateCombo(); + } else { + created = true; + create(); + } + } + + protected void updateCombo() { + storeComboLatitude.clear(); + storeComboLatitude.addAll(columns); + storeComboLatitude.commitChanges(); + comboLatitude.reset(); + comboLatitude.clear(); + + storeComboLongitude.clear(); + storeComboLongitude.addAll(columns); + storeComboLongitude.commitChanges(); + comboLongitude.reset(); + comboLongitude.clear(); + + onResize(); + forceLayout(); + + } + + protected void create() { + + setWidth(WIDTH); + setHeight(HEIGHT); + setHeaderVisible(false); + setBodyBorder(false); + + Log.debug("Create GeometryPointPanel(): [" + + trId.toString() + "]"); + + // Column Propierties + ColumnDataPropertiesCombo propsColumnData = GWT + .create(ColumnDataPropertiesCombo.class); + + // Latitude + storeComboLatitude = new ListStore(propsColumnData.id()); + storeComboLatitude.addAll(columns); + + comboLatitude = new ComboBox(storeComboLatitude, + propsColumnData.label()); + Log.trace("Combo ColumnData created"); + + addHandlersForComboColumnLatitude(propsColumnData.label()); + + comboLatitude.setEmptyText("Select a column..."); + comboLatitude.setWidth(191); + comboLatitude.setTypeAhead(false); + comboLatitude.setEditable(false); + comboLatitude.setTriggerAction(TriggerAction.ALL); + + // Longitude + storeComboLongitude = new ListStore(propsColumnData.id()); + storeComboLongitude.addAll(columns); + + comboLongitude = new ComboBox(storeComboLongitude, + propsColumnData.label()); + Log.trace("Combo ColumnData created"); + + addHandlersForComboColumnLongitude(propsColumnData.label()); + + comboLongitude.setEmptyText("Select a column..."); + comboLongitude.setWidth(191); + comboLongitude.setTypeAhead(false); + comboLongitude.setEditable(false); + comboLongitude.setTriggerAction(TriggerAction.ALL); + + + // Create + createPointButton = new TextButton("Create"); + createPointButton.setIcon(ResourceBundle.INSTANCE + .geospatialCoordinates()); + createPointButton.setIconAlign(IconAlign.RIGHT); + createPointButton.setTitle("Create Point"); + + createPointButton.addSelectHandler(new SelectHandler() { + + public void onSelect(SelectEvent event) { + onGeometryCreatePoint(); + + } + }); + + vl = new VerticalLayoutContainer(); + vl.setScrollMode(ScrollMode.AUTO); + vl.setAdjustForScroll(true); + + vl.add(new FieldLabel(comboLatitude, "Latitude"), + new VerticalLayoutData(1, -1)); + + vl.add(new FieldLabel(comboLongitude, "Longitude"), + new VerticalLayoutData(1, -1)); + + + vl.add(createPointButton, new VerticalLayoutData(-1, -1, + new Margins(10, 0, 10, 0))); + + add(vl); + + + + onResize(); + } + + private void addHandlersForComboColumnLatitude( + final LabelProvider labelProvider) { + comboLatitude.addSelectionHandler(new SelectionHandler() { + + @Override + public void onSelection(SelectionEvent event) { + Info.display( + "Latitude Selected", + "You selected " + + (event.getSelectedItem() == null ? "nothing" + : labelProvider.getLabel(event + .getSelectedItem()) + "!")); + Log.debug("Latitude selected: " + event.getSelectedItem()); + ColumnData latitude = event.getSelectedItem(); + updatedLatitude(latitude); + + } + + }); + + } + + protected void updatedLatitude(ColumnData latitude) { + // TODO Auto-generated method stub + + } + + private void addHandlersForComboColumnLongitude( + final LabelProvider labelProvider) { + comboLongitude.addSelectionHandler(new SelectionHandler() { + + @Override + public void onSelection(SelectionEvent event) { + Info.display( + "Longitude Selected", + "You selected " + + (event.getSelectedItem() == null ? "nothing" + : labelProvider.getLabel(event + .getSelectedItem()) + "!")); + Log.debug("Longitude selected: " + event.getSelectedItem()); + ColumnData longitude = event.getSelectedItem(); + updatedLongitude(longitude); + + } + + }); + + } + + protected void updatedLongitude(ColumnData longitude) { + // TODO Auto-generated method stub + + } + + + + + + protected void onGeometryCreatePoint() { + ColumnData latitude = comboLatitude.getCurrentValue(); + if (latitude != null) { + ColumnData longitude = comboLongitude.getCurrentValue(); + if (longitude != null) { + /*GeospatialCoordinatesType type=null; + GeospatialCreateCoordinatesSession gsCreateCoordinatesSession = new GeospatialCreateCoordinatesSession( + trId, latitude, longitude, type, null, null); + callGeometryCreatePoint(gsCreateCoordinatesSession);*/ + + } else { + UtilsGXT3.alert("Attention", "Select Longitude!"); + } + } else { + UtilsGXT3.alert("Attention", "Select Latitude!"); + } + } + + private void callGeometryCreatePoint( + GeospatialCreateCoordinatesSession gsCreateCoordinatesSession) { + TDGWTServiceAsync.INSTANCE.startGeospatialCreateCoordinates( + gsCreateCoordinatesSession, new AsyncCallback() { + + public void onFailure(Throwable caught) { + if (caught instanceof TDGWTSessionExpiredException) { + eventBus.fireEvent(new SessionExpiredEvent( + SessionExpiredType.EXPIREDONSERVER)); + } else { + if (caught instanceof TDGWTIsLockedException) { + Log.error(caught.getLocalizedMessage()); + UtilsGXT3.alert("Error Locked", + caught.getLocalizedMessage()); + } else { + if (caught instanceof TDGWTIsFinalException) { + Log.error(caught.getLocalizedMessage()); + UtilsGXT3.alert("Error Final", + caught.getLocalizedMessage()); + } else { + Log.debug("Create Geospatial Coordinates Error: " + + caught.getLocalizedMessage()); + UtilsGXT3 + .alert("Error Creating Geospatial Coordinates", + "Error creating geospatial coordinates: " + + caught.getLocalizedMessage()); + } + } + } + } + + public void onSuccess(String taskId) { + openMonitorDialog(taskId); + + } + + }); + + } + + protected void retrieveColumns() { + TDGWTServiceAsync.INSTANCE.getColumns(trId, + new AsyncCallback>() { + + public void onFailure(Throwable caught) { + if (caught instanceof TDGWTSessionExpiredException) { + eventBus.fireEvent(new SessionExpiredEvent( + SessionExpiredType.EXPIREDONSERVER)); + } else { + if (caught instanceof TDGWTIsLockedException) { + Log.error(caught.getLocalizedMessage()); + UtilsGXT3.alert("Error Locked", + caught.getLocalizedMessage()); + } else { + if (caught instanceof TDGWTIsFinalException) { + Log.error(caught.getLocalizedMessage()); + UtilsGXT3.alert("Error Final", + caught.getLocalizedMessage()); + } else { + Log.error("load combo failure:" + + caught.getLocalizedMessage()); + UtilsGXT3.alert("Error", + "Error retrieving columns of tabular resource:" + + trId.getId()); + } + } + } + + } + + public void onSuccess(ArrayList result) { + Log.trace("loaded " + result.size() + " ColumnData"); + columns = new ArrayList(); + + for (ColumnData column : result) { + ColumnDataType columnDataType = ColumnDataType + .getColumnDataTypeFromId(column + .getDataTypeName()); + if (columnDataType + .compareTo(ColumnDataType.Integer) == 0 + || columnDataType + .compareTo(ColumnDataType.Numeric) == 0) { + columns.add(column); + } + + } + if (columns.size() < 1) { + Log.debug("Attention no Integer or Numeric column is present in the tabular resource"); + UtilsGXT3 + .alert("Attention", + "No Integer or Numeric column is present in the tabular resource!"); + } + testCreated(); + + } + + }); + + } + + public void update(TRId trId) { + this.trId = trId; + + retrieveColumns(); + } + + protected void close() { + /* + * if (parent != null) { parent.close(); } + */ + } + + // / + protected void openMonitorDialog(String taskId) { + MonitorDialog monitorDialog = new MonitorDialog(taskId, eventBus); + monitorDialog.addProgressDialogListener(this); + monitorDialog.show(); + } + + @Override + public void operationComplete(OperationResult operationResult) { + ChangeTableWhy why = ChangeTableWhy.TABLEUPDATED; + ChangeTableRequestEvent changeTableRequestEvent = new ChangeTableRequestEvent( + ChangeTableRequestType.GEOSPATIALCREATECOORDINATES, + operationResult.getTrId(), why); + eventBus.fireEvent(changeTableRequestEvent); + close(); + } + + @Override + public void operationFailed(Throwable caught, String reason, String details) { + UtilsGXT3.alert(reason, details); + close(); + + } + + @Override + public void operationStopped(OperationResult operationResult, + String reason, String details) { + ChangeTableWhy why = ChangeTableWhy.TABLECURATION; + ChangeTableRequestEvent changeTableRequestEvent = new ChangeTableRequestEvent( + ChangeTableRequestType.GEOSPATIALCREATECOORDINATES, + operationResult.getTrId(), why); + eventBus.fireEvent(changeTableRequestEvent); + close(); + + } + + @Override + public void operationAborted() { + close(); + + } + + @Override + public void operationPutInBackground() { + close(); + + } + +} diff --git a/src/main/java/org/gcube/portlets/user/td/tablewidget/client/geospatial/GeospatialCreateCoordinatesPanel.java b/src/main/java/org/gcube/portlets/user/td/tablewidget/client/geospatial/GeospatialCreateCoordinatesPanel.java index 087afcc..206be6e 100644 --- a/src/main/java/org/gcube/portlets/user/td/tablewidget/client/geospatial/GeospatialCreateCoordinatesPanel.java +++ b/src/main/java/org/gcube/portlets/user/td/tablewidget/client/geospatial/GeospatialCreateCoordinatesPanel.java @@ -30,12 +30,17 @@ import com.allen_sauer.gwt.log.client.Log; import com.google.gwt.core.client.GWT; import com.google.gwt.event.logical.shared.SelectionEvent; import com.google.gwt.event.logical.shared.SelectionHandler; +import com.google.gwt.event.logical.shared.ValueChangeEvent; +import com.google.gwt.event.logical.shared.ValueChangeHandler; import com.google.gwt.user.client.rpc.AsyncCallback; +import com.google.gwt.user.client.ui.HasValue; +import com.google.gwt.user.client.ui.HorizontalPanel; import com.google.web.bindery.event.shared.EventBus; import com.sencha.gxt.cell.core.client.ButtonCell.IconAlign; import com.sencha.gxt.cell.core.client.form.ComboBoxCell.TriggerAction; import com.sencha.gxt.core.client.dom.ScrollSupport.ScrollMode; import com.sencha.gxt.core.client.util.Margins; +import com.sencha.gxt.core.client.util.ToggleGroup; import com.sencha.gxt.data.shared.LabelProvider; import com.sencha.gxt.data.shared.ListStore; import com.sencha.gxt.widget.core.client.FramedPanel; @@ -46,6 +51,7 @@ import com.sencha.gxt.widget.core.client.event.SelectEvent; import com.sencha.gxt.widget.core.client.event.SelectEvent.SelectHandler; import com.sencha.gxt.widget.core.client.form.ComboBox; import com.sencha.gxt.widget.core.client.form.FieldLabel; +import com.sencha.gxt.widget.core.client.form.Radio; import com.sencha.gxt.widget.core.client.info.Info; /** @@ -65,6 +71,7 @@ public class GeospatialCreateCoordinatesPanel extends FramedPanel implements private boolean created; private ArrayList columns; + private ArrayList quadrantColumns; private VerticalLayoutContainer vl; private TextButton createCoordinatesButton; @@ -73,6 +80,12 @@ public class GeospatialCreateCoordinatesPanel extends FramedPanel implements private ComboBox comboGsCoordinatesType; private ListStore storeComboLatitude; private ListStore storeComboLongitude; + private ListStore storeComboQuadrant; + private ComboBox comboQuadrant; + private Radio hasQuadrantTrue; + private Radio hasQuadrantFalse; + private FieldLabel comboQuadrantField; + private FieldLabel hasQuadrantField; public GeospatialCreateCoordinatesPanel(TRId trId, RequestProperties requestProperties, EventBus eventBus) { @@ -111,15 +124,20 @@ public class GeospatialCreateCoordinatesPanel extends FramedPanel implements comboLongitude.reset(); comboLongitude.clear(); - if (gsCoordinatesType != null) { - comboGsCoordinatesType.setValue(gsCoordinatesType); - } + storeComboQuadrant.clear(); + storeComboQuadrant.addAll(quadrantColumns); + storeComboQuadrant.commitChanges(); + comboQuadrant.reset(); + comboQuadrant.clear(); - onResize(); - forceLayout(); + updateForCoordinatesType(); + + } + + protected void create() { setWidth(WIDTH); @@ -141,7 +159,7 @@ public class GeospatialCreateCoordinatesPanel extends FramedPanel implements comboLatitude = new ComboBox(storeComboLatitude, propsColumnData.label()); - Log.trace("Combo ColumnData created"); + Log.trace("Combo Latide created"); addHandlersForComboColumnLatitude(propsColumnData.label()); @@ -157,7 +175,7 @@ public class GeospatialCreateCoordinatesPanel extends FramedPanel implements comboLongitude = new ComboBox(storeComboLongitude, propsColumnData.label()); - Log.trace("Combo ColumnData created"); + Log.trace("Combo Longitude created"); addHandlersForComboColumnLongitude(propsColumnData.label()); @@ -178,7 +196,7 @@ public class GeospatialCreateCoordinatesPanel extends FramedPanel implements comboGsCoordinatesType = new ComboBox( storeComboGsCoordinatesType, propsGeospatialCoordinatesType.label()); - Log.trace("Combo ColumnData created"); + Log.trace("Combo Geospatial Column Type created"); addHandlersForComboGsCoordinatesType(propsGeospatialCoordinatesType .label()); @@ -189,6 +207,67 @@ public class GeospatialCreateCoordinatesPanel extends FramedPanel implements comboGsCoordinatesType.setEditable(false); comboGsCoordinatesType.setTriggerAction(TriggerAction.ALL); + // Has Quadrant + hasQuadrantTrue = new Radio(); + hasQuadrantTrue.setBoxLabel("True"); + hasQuadrantTrue.setValue(true); + + hasQuadrantFalse = new Radio(); + hasQuadrantFalse.setBoxLabel("False"); + + ToggleGroup hasQuadrantGroup = new ToggleGroup(); + hasQuadrantGroup.add(hasQuadrantTrue); + hasQuadrantGroup.add(hasQuadrantFalse); + + hasQuadrantGroup + .addValueChangeHandler(new ValueChangeHandler>() { + + @Override + public void onValueChange( + ValueChangeEvent> event) { + try { + if (hasQuadrantTrue.getValue()) { + comboQuadrantField.setVisible(true); + } else { + comboQuadrantField.setVisible(false); + } + + forceLayout(); + + } catch (Exception e) { + Log.error("ToggleGroup: onValueChange " + + e.getLocalizedMessage()); + } + + } + }); + + HorizontalPanel hasQuadrantPanel = new HorizontalPanel(); + hasQuadrantPanel.add(hasQuadrantTrue); + hasQuadrantPanel.add(hasQuadrantFalse); + + hasQuadrantField = new FieldLabel(hasQuadrantPanel, "Has Quadrant"); + hasQuadrantField + .setToolTip("Select true if you want select quadrant column"); + + // Quadrant + storeComboQuadrant = new ListStore(propsColumnData.id()); + storeComboQuadrant.addAll(quadrantColumns); + + comboQuadrant = new ComboBox(storeComboQuadrant, + propsColumnData.label()); + Log.trace("Combo Quadrant created"); + + addHandlersForComboQuadrant(propsColumnData.label()); + + comboQuadrant.setEmptyText("Select a column..."); + comboQuadrant.setWidth(191); + comboQuadrant.setTypeAhead(false); + comboQuadrant.setEditable(false); + comboQuadrant.setTriggerAction(TriggerAction.ALL); + + comboQuadrantField = new FieldLabel(comboQuadrant, "Quadrant"); + // Create createCoordinatesButton = new TextButton("Create"); createCoordinatesButton.setIcon(ResourceBundle.INSTANCE @@ -217,16 +296,18 @@ public class GeospatialCreateCoordinatesPanel extends FramedPanel implements vl.add(new FieldLabel(comboGsCoordinatesType, "Type"), new VerticalLayoutData(1, -1)); + vl.add(hasQuadrantField, new VerticalLayoutData(-1, -1)); + + vl.add(comboQuadrantField, new VerticalLayoutData(1, -1)); + vl.add(createCoordinatesButton, new VerticalLayoutData(-1, -1, new Margins(10, 0, 10, 0))); add(vl); - if (gsCoordinatesType != null) { - comboGsCoordinatesType.setValue(gsCoordinatesType); - } + updateForCoordinatesType(); - onResize(); + } private void addHandlersForComboColumnLatitude( @@ -301,7 +382,7 @@ public class GeospatialCreateCoordinatesPanel extends FramedPanel implements Log.debug("Type selected: " + event.getSelectedItem()); GeospatialCoordinatesType type = event .getSelectedItem(); - updatedType(type); + updatedComboGsCoordinatesType(type); } @@ -309,11 +390,71 @@ public class GeospatialCreateCoordinatesPanel extends FramedPanel implements } - protected void updatedType(GeospatialCoordinatesType type) { - // TODO Auto-generated method stub + protected void updatedComboGsCoordinatesType(GeospatialCoordinatesType type) { + gsCoordinatesType=type; + updateForCoordinatesType(); + + } + + protected void updateForCoordinatesType() { + switch (gsCoordinatesType) { + case C_SQUARE: + hasQuadrantField.setVisible(false); + comboQuadrantField.setVisible(false); + comboGsCoordinatesType.setValue(gsCoordinatesType); + break; + case OCEAN_AREA: + hasQuadrantTrue.setValue(true); + hasQuadrantField.setVisible(true); + comboQuadrantField.setVisible(true); + comboGsCoordinatesType.setValue(gsCoordinatesType); + break; + default: + hasQuadrantField.setVisible(false); + comboQuadrantField.setVisible(false); + break; + } + + onResize(); + forceLayout(); + } + + + private void addHandlersForComboQuadrant( + final LabelProvider labelProvider) { + comboQuadrant.addSelectionHandler(new SelectionHandler() { + + @Override + public void onSelection(SelectionEvent event) { + Info.display( + "Quadrant Selected", + "You selected " + + (event.getSelectedItem() == null ? "nothing" + : labelProvider.getLabel(event + .getSelectedItem()) + "!")); + Log.debug("Quadrant selected: " + event.getSelectedItem()); + ColumnData quadrant = event.getSelectedItem(); + updatedQuadrant(quadrant); + + } + + }); } + protected void updatedQuadrant(ColumnData quadrant) { + // TODO Auto-generated method stub + + } + + protected boolean hasQuadrant() { + if (hasQuadrantTrue.getValue()) { + return true; + } else { + return false; + } + } + protected void onGeospatialCreateCoordinates() { ColumnData latitude = comboLatitude.getCurrentValue(); if (latitude != null) { @@ -322,9 +463,41 @@ public class GeospatialCreateCoordinatesPanel extends FramedPanel implements GeospatialCoordinatesType type = comboGsCoordinatesType .getCurrentValue(); if (type != null) { - GeospatialCreateCoordinatesSession gsCreateCoordinatesSession = new GeospatialCreateCoordinatesSession( - trId, latitude, longitude, type); - callGeospatialCreateCoordinates(gsCreateCoordinatesSession); + GeospatialCreateCoordinatesSession gsCreateCoordinatesSession; + switch(type){ + case C_SQUARE: + gsCreateCoordinatesSession = new GeospatialCreateCoordinatesSession( + trId, latitude, longitude, type, false, null); + callGeospatialCreateCoordinates(gsCreateCoordinatesSession); + break; + case OCEAN_AREA: + if(hasQuadrant()){ + ColumnData quadrant = comboQuadrant.getCurrentValue(); + if(quadrant!=null){ + gsCreateCoordinatesSession = new GeospatialCreateCoordinatesSession( + trId, latitude, longitude, type, true, quadrant); + callGeospatialCreateCoordinates(gsCreateCoordinatesSession); + } else { + UtilsGXT3.alert("Attention", + "Select Quadrant column!"); + break; + } + + } else { + gsCreateCoordinatesSession = new GeospatialCreateCoordinatesSession( + trId, latitude, longitude, type, false, null); + callGeospatialCreateCoordinates(gsCreateCoordinatesSession); + } + + + break; + default: + UtilsGXT3.alert("Attention", + "Select valid geospatial coordinates type!"); + break; + + } + } else { UtilsGXT3.alert("Attention", "Invalid Geospatial Coordinates Type!"); @@ -417,10 +590,14 @@ public class GeospatialCreateCoordinatesPanel extends FramedPanel implements .getColumnDataTypeFromId(column .getDataTypeName()); if (columnDataType - .compareTo(ColumnDataType.Integer) == 0 - || columnDataType - .compareTo(ColumnDataType.Numeric) == 0) { + .compareTo(ColumnDataType.Numeric) == 0) { columns.add(column); + } else { + if (columnDataType + .compareTo(ColumnDataType.Integer) == 0) { + columns.add(column); + quadrantColumns.add(column); + } } }