diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/TDOpen.java b/src/main/java/org/gcube/portlets/user/td/openwidget/client/TDOpen.java index 10c3dc7..f3350e2 100644 --- a/src/main/java/org/gcube/portlets/user/td/openwidget/client/TDOpen.java +++ b/src/main/java/org/gcube/portlets/user/td/openwidget/client/TDOpen.java @@ -16,7 +16,7 @@ import com.sencha.gxt.cell.core.client.ButtonCell.IconAlign; * */ public class TDOpen extends WizardWindow { - protected static final int WITHWIZARD=800; + protected static final int WITHWIZARD=820; protected static final int HEIGHTWIZARD=520; protected TDOpenSession tdOpenSession; diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesProperties.java b/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesProperties.java index d9e3f5b..6fa0771 100644 --- a/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesProperties.java +++ b/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesProperties.java @@ -27,5 +27,6 @@ public interface TabResourcesProperties extends PropertyAccess { ValueProvider date(); ValueProvider tableTypeName(); ValueProvider ownerLogin(); + ValueProvider locked(); } diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesSelectionCard.java b/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesSelectionCard.java index 4506735..749fc22 100644 --- a/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesSelectionCard.java +++ b/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesSelectionCard.java @@ -77,7 +77,8 @@ public class TabResourcesSelectionCard extends WizardCard { Command sayFinish = new Command() { public void execute() { - retrieveLastTable(); + ckeckIsLocked(); + } }; @@ -87,6 +88,25 @@ public class TabResourcesSelectionCard extends WizardCard { } + protected void ckeckIsLocked() { + + if (tdOpenSession.getSelectedTabResource().isLocked()) { + Log.debug( + "Attention", + "This tabular resource is locked"); + AlertMessageBox d = new AlertMessageBox("Attention", + "This tabular resource is locked"); + d.addHideHandler(new HideHandler() { + + public void onHide(HideEvent event) { + + } + }); + } else { + retrieveLastTable(); + } + } + public TDOpenSession getTdOpenSession() { return tdOpenSession; } diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesSelectionPanel.java b/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesSelectionPanel.java index f666f49..a452cf8 100644 --- a/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesSelectionPanel.java +++ b/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesSelectionPanel.java @@ -4,7 +4,6 @@ package org.gcube.portlets.user.td.openwidget.client; import java.util.ArrayList; -import java.util.Arrays; import java.util.List; import org.gcube.portlets.user.td.gwtservice.client.rpc.TDGWTServiceAsync; @@ -20,6 +19,7 @@ import org.gcube.portlets.user.td.wizardwidget.client.dataresource.ResourceBundl import org.gcube.portlets.user.td.wizardwidget.client.util.UtilsGXT3; import com.allen_sauer.gwt.log.client.Log; +import com.google.gwt.cell.client.AbstractCell; import com.google.gwt.core.client.GWT; import com.google.gwt.core.client.Scheduler; import com.google.gwt.core.client.Scheduler.ScheduledCommand; @@ -29,6 +29,7 @@ import com.google.gwt.event.logical.shared.HasSelectionHandlers; import com.google.gwt.event.logical.shared.SelectionEvent; import com.google.gwt.event.logical.shared.SelectionHandler; import com.google.gwt.event.shared.HandlerRegistration; +import com.google.gwt.safehtml.shared.SafeHtmlBuilder; import com.google.gwt.user.client.rpc.AsyncCallback; import com.sencha.gxt.core.client.IdentityValueProvider; import com.sencha.gxt.core.client.Style.SelectionMode; @@ -73,21 +74,6 @@ import com.sencha.gxt.widget.core.client.toolbar.ToolBar; public class TabResourcesSelectionPanel extends ContentPanel implements HasSelectionHandlers { - private static final TabResourcesProperties properties = GWT - .create(TabResourcesProperties.class); - - protected static final ColumnConfig nameColumn = new ColumnConfig( - properties.name(), 90, "Name"); - protected static final ColumnConfig typeColumn = new ColumnConfig( - properties.tabResourceType(), 30, "Type"); - protected static final ColumnConfig tableTypeNameColumn = new ColumnConfig( - properties.tableTypeName(), 30, "Table Type"); - protected static final ColumnConfig agencyColumn = new ColumnConfig( - properties.agency(), 60, "Agency"); - protected static final ColumnConfig ownerColumn = new ColumnConfig( - properties.ownerLogin(), 70, "Owner"); - protected static final ColumnConfig dateColumn = new ColumnConfig( - properties.date(), 50, "Creation Date"); protected Grid grid; protected ResourceBundle res; @@ -110,11 +96,8 @@ public class TabResourcesSelectionPanel extends ContentPanel implements e.printStackTrace(); } try { - buildPanel(properties.id(), - Arrays.> asList(nameColumn, - typeColumn, tableTypeNameColumn, ownerColumn, - agencyColumn, dateColumn), nameColumn); - + buildPanel(); + } catch (Throwable e) { Log.debug("Error building panel:" + e.getMessage()); e.printStackTrace(); @@ -123,13 +106,9 @@ public class TabResourcesSelectionPanel extends ContentPanel implements protected void init() { setHeaderVisible(false); - // new Resizable(this, Dir.E, Dir.SE, Dir.S); - } - protected void buildPanel(ModelKeyProvider keyProvider, - List> columns, - ColumnConfig autoexpandColumn) { + protected void buildPanel() { ToolBar toolBar = new ToolBar(); toolBar.add(new LabelToolItem("Search: ")); @@ -145,11 +124,59 @@ public class TabResourcesSelectionPanel extends ContentPanel implements IdentityValueProvider identity = new IdentityValueProvider(); final CheckBoxSelectionModel sm = new CheckBoxSelectionModel( identity); + + TabResourcesProperties properties = GWT + .create(TabResourcesProperties.class); + ColumnConfig nameColumn = new ColumnConfig( + properties.name(), 90, "Name"); + ColumnConfig typeColumn = new ColumnConfig( + properties.tabResourceType(), 30, "Type"); + ColumnConfig tableTypeNameColumn = new ColumnConfig( + properties.tableTypeName(), 30, "Table Type"); + ColumnConfig lockedColumn = new ColumnConfig( + properties.locked(), 20, "Locked"); + ColumnConfig agencyColumn = new ColumnConfig( + properties.agency(), 60, "Agency"); + ColumnConfig ownerColumn = new ColumnConfig( + properties.ownerLogin(), 70, "Owner"); + ColumnConfig dateColumn = new ColumnConfig( + properties.date(), 50, "Creation Date"); + + lockedColumn.setCell(new AbstractCell() { + + @Override + public void render(Context context, Boolean value, + SafeHtmlBuilder sb) { + + if (value) { + sb.appendHtmlConstant("true"); + + } else { + sb.appendHtmlConstant("true"); + } + + } + }); + + List> columns=new ArrayList>(); + columns.add(nameColumn); + columns.add(typeColumn); + columns.add(tableTypeNameColumn); + columns.add(lockedColumn); + columns.add(ownerColumn); + columns.add(agencyColumn); + columns.add(dateColumn); + ColumnModel cm = new ColumnModel(columns); + final ExtendedListStore store = new ExtendedListStore( - keyProvider); + properties.id()); searchField.addKeyUpHandler(new KeyUpHandler() { @@ -201,7 +228,7 @@ public class TabResourcesSelectionPanel extends ContentPanel implements sm.setSelectionMode(SelectionMode.SINGLE); grid.setLoader(loader); grid.setSelectionModel(sm); - grid.getView().setAutoExpandColumn(autoexpandColumn); + grid.getView().setAutoExpandColumn(nameColumn); grid.getView().setStripeRows(true); grid.getView().setColumnLines(true); grid.getView().setAutoFill(true); @@ -321,9 +348,9 @@ public class TabResourcesSelectionPanel extends ContentPanel implements + " TabularResources"); ArrayList avaibles = new ArrayList(); for (TabResource tResource : result) { - if (!tResource.isLocked()) { - avaibles.add(tResource); - } + //if (!tResource.isLocked()) { + avaibles.add(tResource); + //} } /* diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/ResourceBundleTDOpen.java b/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/ResourceBundleTDOpen.java index ed1d6ef..ac03cad 100644 --- a/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/ResourceBundleTDOpen.java +++ b/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/ResourceBundleTDOpen.java @@ -21,4 +21,20 @@ public interface ResourceBundleTDOpen extends ClientBundle { @Source("delete_32.png") ImageResource delete32(); + @Source("lock-red.png") + ImageResource lock(); + + @Source("lock-red_32.png") + ImageResource lock32(); + + @Source("lock-open-green.png") + ImageResource lockOpen(); + + @Source("lock-open-green_32.png") + ImageResource lockOpen32(); + + + + + } \ No newline at end of file diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/lock-open-green.png b/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/lock-open-green.png new file mode 100644 index 0000000..87c02c8 Binary files /dev/null and b/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/lock-open-green.png differ diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/lock-open-green_32.png b/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/lock-open-green_32.png new file mode 100644 index 0000000..669726f Binary files /dev/null and b/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/lock-open-green_32.png differ diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/lock-red.png b/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/lock-red.png new file mode 100644 index 0000000..383e81f Binary files /dev/null and b/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/lock-red.png differ diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/lock-red_32.png b/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/lock-red_32.png new file mode 100644 index 0000000..6596976 Binary files /dev/null and b/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/lock-red_32.png differ diff --git a/src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/lock-open-green.png b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/lock-open-green.png new file mode 100644 index 0000000..87c02c8 Binary files /dev/null and b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/lock-open-green.png differ diff --git a/src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/lock-open-green_32.png b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/lock-open-green_32.png new file mode 100644 index 0000000..669726f Binary files /dev/null and b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/lock-open-green_32.png differ diff --git a/src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/lock-red.png b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/lock-red.png new file mode 100644 index 0000000..383e81f Binary files /dev/null and b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/lock-red.png differ diff --git a/src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/lock-red_32.png b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/lock-red_32.png new file mode 100644 index 0000000..6596976 Binary files /dev/null and b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/lock-red_32.png differ