diff --git a/src/main/java/org/gcube/portlets/user/td/client/TabularDataController.java b/src/main/java/org/gcube/portlets/user/td/client/TabularDataController.java
index 963ef0e..dc82727 100644
--- a/src/main/java/org/gcube/portlets/user/td/client/TabularDataController.java
+++ b/src/main/java/org/gcube/portlets/user/td/client/TabularDataController.java
@@ -37,6 +37,7 @@ import org.gcube.portlets.user.td.rulewidget.client.RuleApplyDialog;
import org.gcube.portlets.user.td.rulewidget.client.RuleDeleteDialog;
import org.gcube.portlets.user.td.rulewidget.client.RuleOpenDialog;
import org.gcube.portlets.user.td.rulewidget.client.RuleShareDialog;
+import org.gcube.portlets.user.td.rulewidget.client.multicolumn.RuleOnTableNewWizard;
import org.gcube.portlets.user.td.sdmxexportwidget.client.SDMXExportWizardTD;
import org.gcube.portlets.user.td.sdmximportwidget.client.SDMXImportWizardTD;
import org.gcube.portlets.user.td.sharewidget.client.TRShare;
@@ -894,24 +895,30 @@ public class TabularDataController {
break;
case COLUMN_BATCH_REPLACE:
break;
- case RULE_NEW:
- openNewRule();
- break;
case RULE_MODIFY:
openModifyRule();
break;
case RULE_DELETE:
openDeleteRule();
break;
- case RULE_APPLY:
- openApplyRule();
- break;
case RULES_ACTIVE:
- openRulesAppliedOnTabularResource();
+ openRulesActiveOnTabularResource();
break;
case RULE_SHARE:
openShareRule();
break;
+ case RULE_ON_COLUMN_NEW:
+ openOnColumnNewRule();
+ break;
+ case RULE_ON_COLUMN_APPLY:
+ openOnColumnApplyRule();
+ break;
+ case RULE_ON_TABLE_NEW:
+ openOnTableNewRule();
+ break;
+ case RULE_ON_TABLE_APPLY:
+ openOnTableApplyRule();
+ break;
case TEMPLATE_OPEN:
openTemplateOpen();
break;
@@ -1712,12 +1719,7 @@ public class TabularDataController {
});
}
- private void openNewRule() {
- Log.debug("Request Open New Rule Dialog");
- RuleOnColumnCreateDialog cfDialog = new RuleOnColumnCreateDialog(eventBus);
- cfDialog.show();
- }
private void openModifyRule() {
Log.debug("Request Open Modify Rule Dialog");
@@ -1726,6 +1728,8 @@ public class TabularDataController {
}
+
+
private void openDeleteRule() {
Log.debug("Request Open Delete Rule Dialog");
RuleDeleteDialog cfDialog = new RuleDeleteDialog(eventBus);
@@ -1733,10 +1737,11 @@ public class TabularDataController {
}
- private void openApplyRule() {
- Log.debug("Request Open Apply Rule Dialog");
+
+ private void openRulesActiveOnTabularResource() {
+ Log.debug("Request Open Rules Active on TabularResource Dialog");
if (trId != null) {
- RuleApplyDialog raDialog = new RuleApplyDialog(
+ RuleActiveDialog raDialog = new RuleActiveDialog(
trId, eventBus);
raDialog.show();
} else {
@@ -1755,10 +1760,19 @@ public class TabularDataController {
}
- private void openRulesAppliedOnTabularResource() {
- Log.debug("Request Open Rules Applied on TabularResource Dialog");
+
+
+ private void openOnColumnNewRule() {
+ Log.debug("Request Open On Column New Rule Dialog");
+ RuleOnColumnCreateDialog cfDialog = new RuleOnColumnCreateDialog(eventBus);
+ cfDialog.show();
+
+ }
+
+ private void openOnColumnApplyRule() {
+ Log.debug("Request Open On Column Apply Rule Dialog");
if (trId != null) {
- RuleActiveDialog raDialog = new RuleActiveDialog(
+ RuleApplyDialog raDialog = new RuleApplyDialog(
trId, eventBus);
raDialog.show();
} else {
@@ -1770,6 +1784,64 @@ public class TabularDataController {
}
+ private void openOnTableNewRule() {
+ Log.debug("Request Open On Table New Rule Dialog");
+ GWT.runAsync(new RunAsyncCallback() {
+
+ public void onSuccess() {
+ openWizard();
+ RuleOnTableNewWizard ruleOnTableNewWizard = new RuleOnTableNewWizard(eventBus);
+
+ ruleOnTableNewWizard.addListener(new WizardListener() {
+ public void failed(String title, String message,
+ String details, Throwable throwable) {
+ UtilsGXT3.alert(title, message + " " + details);
+ resumeUIState();
+ }
+
+ public void completed(TRId id) {
+ resumeUIState();
+
+ }
+
+ @Override
+ public void putInBackground() {
+ Log.debug("PutInBakground");
+ resumeUIState();
+ }
+
+ public void aborted() {
+ resumeUIState();
+ }
+ });
+
+ ruleOnTableNewWizard.show();
+ }
+
+ public void onFailure(Throwable reason) {
+ asyncCodeLoadingFailed(reason);
+ }
+ });
+
+
+ }
+
+ private void openOnTableApplyRule() {
+ Log.debug("Request Open On Table Apply Rule Dialog");
+ /*if (trId != null) {
+ RuleApplyDialog raDialog = new RuleApplyDialog(
+ trId, eventBus);
+ raDialog.show();
+ } else {
+ Log.error("TRId is null");
+ UtilsGXT3.alert("Error",
+ "No current tabular resource present");
+ }*/
+
+
+ }
+
+
private void callDiscard() {
diff --git a/src/main/java/org/gcube/portlets/user/td/client/ribbon/RuleToolBar.java b/src/main/java/org/gcube/portlets/user/td/client/ribbon/RuleToolBar.java
index b1b808a..d07bbd6 100644
--- a/src/main/java/org/gcube/portlets/user/td/client/ribbon/RuleToolBar.java
+++ b/src/main/java/org/gcube/portlets/user/td/client/ribbon/RuleToolBar.java
@@ -46,6 +46,10 @@ public class RuleToolBar {
private TextButton ruleOnColumnNewButton;
private TextButton ruleOnColumnApplyButton;
+ // On Table
+ private TextButton ruleOnTableNewButton;
+ private TextButton ruleOnTableApplyButton;
+
public RuleToolBar(EventBus eventBus) {
this.eventBus = eventBus;
build();
@@ -107,20 +111,17 @@ public class RuleToolBar {
ruleLayout.setWidget(0, 1, ruleDeleteButton);
ruleLayout.getFlexCellFormatter().setRowSpan(0, 1, 2);
- ruleActiveButton = new TextButton(
- msgs.ruleActiveButton(),
+ ruleActiveButton = new TextButton(msgs.ruleActiveButton(),
TabularDataResources.INSTANCE.ruleActive32());
ruleActiveButton.disable();
ruleActiveButton.setScale(ButtonScale.LARGE);
ruleActiveButton.setIconAlign(IconAlign.TOP);
- ruleActiveButton.setToolTip(msgs
- .ruleActiveButtonToolTip());
+ ruleActiveButton.setToolTip(msgs.ruleActiveButtonToolTip());
ruleActiveButton.setArrowAlign(ButtonArrowAlign.BOTTOM);
ruleActiveButton.addSelectHandler(new SelectHandler() {
public void onSelect(SelectEvent event) {
- eventBus.fireEvent(new RibbonEvent(
- RibbonType.RULES_ACTIVE));
+ eventBus.fireEvent(new RibbonEvent(RibbonType.RULES_ACTIVE));
}
});
@@ -157,34 +158,34 @@ public class RuleToolBar {
FlexTable ruleOnColumnLayout = new FlexTable();
ruleOnColumnGroup.add(ruleOnColumnLayout);
- ruleOnColumnNewButton = new TextButton(msgs.ruleNewButton(),
+ ruleOnColumnNewButton = new TextButton(msgs.ruleOnColumnNewButton(),
TabularDataResources.INSTANCE.ruleColumnAdd32());
ruleOnColumnNewButton.enable();
- ruleOnColumnNewButton.setToolTip(msgs.ruleNewButtonToolTip());
+ ruleOnColumnNewButton.setToolTip(msgs.ruleOnColumnNewButtonToolTip());
ruleOnColumnNewButton.setScale(ButtonScale.LARGE);
ruleOnColumnNewButton.setIconAlign(IconAlign.TOP);
ruleOnColumnNewButton.setArrowAlign(ButtonArrowAlign.BOTTOM);
ruleOnColumnNewButton.addSelectHandler(new SelectHandler() {
public void onSelect(SelectEvent event) {
- eventBus.fireEvent(new RibbonEvent(RibbonType.RULE_NEW));
+ eventBus.fireEvent(new RibbonEvent(RibbonType.RULE_ON_COLUMN_NEW));
}
});
ruleOnColumnLayout.setWidget(0, 0, ruleOnColumnNewButton);
ruleOnColumnLayout.getFlexCellFormatter().setRowSpan(0, 0, 2);
- ruleOnColumnApplyButton = new TextButton(msgs.ruleApplyButton(),
+ ruleOnColumnApplyButton = new TextButton(msgs.ruleOnColumnApplyButton(),
TabularDataResources.INSTANCE.ruleColumnApply32());
ruleOnColumnApplyButton.disable();
ruleOnColumnApplyButton.setScale(ButtonScale.LARGE);
ruleOnColumnApplyButton.setIconAlign(IconAlign.TOP);
- ruleOnColumnApplyButton.setToolTip(msgs.ruleApplyButtonToolTip());
+ ruleOnColumnApplyButton.setToolTip(msgs.ruleOnColumnApplyButtonToolTip());
ruleOnColumnApplyButton.setArrowAlign(ButtonArrowAlign.BOTTOM);
ruleOnColumnApplyButton.addSelectHandler(new SelectHandler() {
public void onSelect(SelectEvent event) {
- eventBus.fireEvent(new RibbonEvent(RibbonType.RULE_APPLY));
+ eventBus.fireEvent(new RibbonEvent(RibbonType.RULE_ON_COLUMN_APPLY));
}
});
@@ -193,6 +194,53 @@ public class RuleToolBar {
cleanCells(ruleLayout.getElement());
+ // Table Rules
+ ButtonGroup ruleOnTableGroup = new ButtonGroup();
+ ruleOnTableGroup.setId("On Table");
+ ruleOnTableGroup.setStyleName("ribbon");
+ ruleOnTableGroup.setHeadingText(msgs.ruleOnTableGroupHeadingText());
+
+ toolBar.add(ruleOnTableGroup);
+
+ FlexTable ruleOnTableLayout = new FlexTable();
+ ruleOnTableGroup.add(ruleOnTableLayout);
+
+ ruleOnTableNewButton = new TextButton(msgs.ruleOnTableNewButton(),
+ TabularDataResources.INSTANCE.ruleTableAdd32());
+ ruleOnTableNewButton.enable();
+ ruleOnTableNewButton.setToolTip(msgs.ruleOnTableNewButtonToolTip());
+ ruleOnTableNewButton.setScale(ButtonScale.LARGE);
+ ruleOnTableNewButton.setIconAlign(IconAlign.TOP);
+ ruleOnTableNewButton.setArrowAlign(ButtonArrowAlign.BOTTOM);
+ ruleOnTableNewButton.addSelectHandler(new SelectHandler() {
+
+ public void onSelect(SelectEvent event) {
+ eventBus.fireEvent(new RibbonEvent(RibbonType.RULE_ON_TABLE_NEW));
+ }
+ });
+
+ ruleOnTableLayout.setWidget(0, 0, ruleOnTableNewButton);
+ ruleOnTableLayout.getFlexCellFormatter().setRowSpan(0, 0, 2);
+
+ ruleOnTableApplyButton = new TextButton(msgs.ruleOnTableApplyButton(),
+ TabularDataResources.INSTANCE.ruleTableApply32());
+ ruleOnTableApplyButton.disable();
+ ruleOnTableApplyButton.setScale(ButtonScale.LARGE);
+ ruleOnTableApplyButton.setIconAlign(IconAlign.TOP);
+ ruleOnTableApplyButton.setToolTip(msgs.ruleOnTableApplyButtonToolTip());
+ ruleOnTableApplyButton.setArrowAlign(ButtonArrowAlign.BOTTOM);
+ ruleOnTableApplyButton.addSelectHandler(new SelectHandler() {
+
+ public void onSelect(SelectEvent event) {
+ eventBus.fireEvent(new RibbonEvent(RibbonType.RULE_ON_TABLE_APPLY));
+ }
+ });
+
+ ruleOnTableLayout.setWidget(0, 1, ruleOnTableApplyButton);
+ ruleOnTableLayout.getFlexCellFormatter().setRowSpan(0, 1, 2);
+
+ cleanCells(ruleLayout.getElement());
+
eventBus.addHandler(UIStateEvent.TYPE,
new UIStateEvent.UIStateHandler() {
@@ -226,6 +274,8 @@ public class RuleToolBar {
ruleShareButton.enable();
ruleOnColumnNewButton.enable();
ruleOnColumnApplyButton.disable();
+ ruleOnTableNewButton.enable();
+ ruleOnTableApplyButton.disable();
break;
case TR_CLOSE:
case TR_READONLY:
@@ -235,7 +285,8 @@ public class RuleToolBar {
ruleShareButton.enable();
ruleOnColumnNewButton.enable();
ruleOnColumnApplyButton.disable();
-
+ ruleOnTableNewButton.enable();
+ ruleOnTableApplyButton.disable();
break;
case TR_OPEN:
case TABLEUPDATE:
@@ -245,8 +296,9 @@ public class RuleToolBar {
ruleActiveButton.enable();
ruleShareButton.enable();
ruleOnColumnNewButton.enable();
- ruleOnColumnApplyButton.enable();
-
+ ruleOnColumnApplyButton.enable();
+ ruleOnTableNewButton.enable();
+ ruleOnTableApplyButton.enable();
break;
case WIZARD_OPEN:
ruleOpenButton.disable();
@@ -255,6 +307,8 @@ public class RuleToolBar {
ruleShareButton.disable();
ruleOnColumnNewButton.disable();
ruleOnColumnApplyButton.disable();
+ ruleOnTableNewButton.disable();
+ ruleOnTableApplyButton.disable();
break;
default:
break;
diff --git a/src/main/java/org/gcube/portlets/user/td/client/ribbon/RuleToolBarMessages.java b/src/main/java/org/gcube/portlets/user/td/client/ribbon/RuleToolBarMessages.java
index 96b5efe..9e19e58 100644
--- a/src/main/java/org/gcube/portlets/user/td/client/ribbon/RuleToolBarMessages.java
+++ b/src/main/java/org/gcube/portlets/user/td/client/ribbon/RuleToolBarMessages.java
@@ -42,18 +42,32 @@ public interface RuleToolBarMessages extends Messages {
String ruleOnColumnGroupHeadingText();
@DefaultMessage("New")
- String ruleNewButton();
+ String ruleOnColumnNewButton();
@DefaultMessage("New")
- String ruleNewButtonToolTip();
+ String ruleOnColumnNewButtonToolTip();
@DefaultMessage("Apply")
- String ruleApplyButton();
+ String ruleOnColumnApplyButton();
@DefaultMessage("Apply")
- String ruleApplyButtonToolTip();
+ String ruleOnColumnApplyButtonToolTip();
+ @DefaultMessage("On Table")
+ String ruleOnTableGroupHeadingText();
+ @DefaultMessage("New")
+ String ruleOnTableNewButton();
+
+ @DefaultMessage("New")
+ String ruleOnTableNewButtonToolTip();
+
+ @DefaultMessage("Apply")
+ String ruleOnTableApplyButton();
+
+ @DefaultMessage("Apply")
+ String ruleOnTableApplyButtonToolTip();
+
diff --git a/src/main/resources/org/gcube/portlets/user/td/client/ribbon/RuleToolBarMessages.properties b/src/main/resources/org/gcube/portlets/user/td/client/ribbon/RuleToolBarMessages.properties
index 59378ab..94892b7 100644
--- a/src/main/resources/org/gcube/portlets/user/td/client/ribbon/RuleToolBarMessages.properties
+++ b/src/main/resources/org/gcube/portlets/user/td/client/ribbon/RuleToolBarMessages.properties
@@ -8,7 +8,13 @@ ruleShareButtonToolTip = Share
ruleActiveButton = Active
ruleActiveButtonToolTip = Active
ruleOnColumnGroupHeadingText = On Column
-ruleNewButton = New
-ruleNewButtonToolTip = New
-ruleApplyButton = Apply
-ruleApplyButtonToolTip = Apply
+ruleOnColumnNewButton = New
+ruleOnColumnNewButtonToolTip = New
+ruleOnColumnApplyButton = Apply
+ruleOnColumnApplyButtonToolTip = Apply
+ruleOnTableGroupHeadingText = On Table
+ruleOnTableNewButton = New
+ruleOnTableNewButtonToolTip = New
+ruleOnTableApplyButton = Apply
+ruleOnTableApplyButtonToolTip = Apply
+
diff --git a/src/main/resources/org/gcube/portlets/user/td/client/ribbon/RuleToolBarMessages_es.properties b/src/main/resources/org/gcube/portlets/user/td/client/ribbon/RuleToolBarMessages_es.properties
index bd7b460..a705e68 100644
--- a/src/main/resources/org/gcube/portlets/user/td/client/ribbon/RuleToolBarMessages_es.properties
+++ b/src/main/resources/org/gcube/portlets/user/td/client/ribbon/RuleToolBarMessages_es.properties
@@ -8,7 +8,12 @@ ruleShareButtonToolTip = Cuota
ruleActiveButton = Activo
ruleActiveToolTip = Activo
ruleOnColumnGroupHeadingText = On Columna
-ruleNewButton = Nuevo
-ruleNewButtonToolTip = Nuevo
-ruleApplyButton = Aplicar
-ruleApplyButtonToolTip = Aplicar
\ No newline at end of file
+ruleOnColumnNewButton = Nuevo
+ruleOnColumnNewButtonToolTip = Nuevo
+ruleOnColumnApplyButton = Aplicar
+ruleOnColumnApplyButtonToolTip = Aplicar
+ruleOnTableGroupHeadingText = On Tabla
+ruleOnTableNewButton = Nuevo
+ruleOnTableNewButtonToolTip = Nuevo
+ruleOnTableApplyButton = Aplicar
+ruleOnTableApplyButtonToolTip = Aplicar
\ No newline at end of file
diff --git a/src/main/resources/org/gcube/portlets/user/td/client/ribbon/RuleToolBarMessages_it.properties b/src/main/resources/org/gcube/portlets/user/td/client/ribbon/RuleToolBarMessages_it.properties
index 188430d..d299c1e 100644
--- a/src/main/resources/org/gcube/portlets/user/td/client/ribbon/RuleToolBarMessages_it.properties
+++ b/src/main/resources/org/gcube/portlets/user/td/client/ribbon/RuleToolBarMessages_it.properties
@@ -8,7 +8,12 @@ ruleShareButtonToolTip = Condividi
ruleActiveButton = Attive
ruleActiveButtonToolTip = Attive
ruleOnColumnGroupHeadingText = Su Colonna
-ruleNewButton = Nuova
-ruleNewButtonToolTip = Nuova
-ruleApplyButton = Applica
-ruleApplyButtonToolTip = Applica
\ No newline at end of file
+ruleOnColumnNewButton = Nuova
+ruleOnColumnNewButtonToolTip = Nuova
+ruleOnColumnApplyButton = Applica
+ruleOnColumnApplyButtonToolTip = Applica
+ruleOnTableGroupHeadingText = Su Tabella
+ruleOnTableNewButton = Nuova
+ruleOnTableNewButtonToolTip = Nuova
+ruleOnTableApplyButton = Applica
+ruleOnTableApplyButtonToolTip = Applica
\ No newline at end of file
diff --git a/src/main/resources/org/gcube/portlets/user/td/tabulardataportlet.gwt.xml b/src/main/resources/org/gcube/portlets/user/td/tabulardataportlet.gwt.xml
index 2fe84cf..a54958c 100644
--- a/src/main/resources/org/gcube/portlets/user/td/tabulardataportlet.gwt.xml
+++ b/src/main/resources/org/gcube/portlets/user/td/tabulardataportlet.gwt.xml
@@ -99,11 +99,11 @@
- -->
+ -->
+
-