You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2017/04/27 12:33:07 UTC
[21/35] isis git commit: ISIS-1603: spiking if can detect ESC to
close inline prompt
ISIS-1603: spiking if can detect ESC to close inline prompt
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/c8673f28
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/c8673f28
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/c8673f28
Branch: refs/heads/ISIS-1603
Commit: c8673f28bce39e8f256b4aba7031e29d1798813f
Parents: 4bdfb86
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon Apr 24 21:00:58 2017 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Thu Apr 27 13:26:39 2017 +0100
----------------------------------------------------------------------
.../actions/ActionParametersFormPanel.java | 2 +-
.../property/PropertyEditFormPanel.java | 39 ++++++++++++++++++++
.../ui/panels/PromptFormPanelAbstract.java | 13 ++++---
3 files changed, 48 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/c8673f28/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
index 7a7d16c..daf7c62 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
@@ -112,7 +112,7 @@ public class ActionParametersFormPanel extends PromptFormPanelAbstract<ActionMod
}
@Override
- protected void configureButtons(final AjaxButton okButton) {
+ protected void configureButtons(final AjaxButton okButton, final AjaxButton cancelButton) {
applyAreYouSure(okButton);
}
http://git-wip-us.apache.org/repos/asf/isis/blob/c8673f28/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditFormPanel.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditFormPanel.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditFormPanel.java
index 4e7b456..9623490 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditFormPanel.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/property/PropertyEditFormPanel.java
@@ -21,7 +21,11 @@ package org.apache.isis.viewer.wicket.ui.components.property;
import org.apache.wicket.Component;
import org.apache.wicket.MarkupContainer;
+import org.apache.wicket.ajax.AbstractDefaultAjaxBehavior;
import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.ajax.markup.html.form.AjaxButton;
+import org.apache.wicket.markup.head.IHeaderResponse;
+import org.apache.wicket.markup.head.JavaScriptContentHeaderItem;
import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.form.Form;
@@ -130,6 +134,41 @@ public class PropertyEditFormPanel extends PromptFormPanelAbstract<ScalarModel>
}
}
+
+ @Override
+ protected void configureButtons(final AjaxButton okButton, final AjaxButton cancelButton) {
+ if(getScalarModel().getPromptStyle() == PromptStyle.INLINE) {
+ cancelButton.add(new AbstractDefaultAjaxBehavior() {
+
+ private static final String PRE_JS =
+ ""+"$(document).ready( function() { \n"
+ + " $(document).bind('keyup', function(evt) { \n"
+ + " if (evt.keyCode == 27) { \n";
+ private static final String POST_JS =
+ ""+" evt.preventDefault(); \n "
+ + " } \n"
+ + " }); \n"
+ + "});";
+
+ @Override
+ public void renderHead(final Component component, final IHeaderResponse response) {
+ super.renderHead(component, response);
+
+ final String javascript = PRE_JS + getCallbackScript() + POST_JS;
+ response.render(
+ JavaScriptContentHeaderItem.forScript(javascript, component.getPath(), null));
+ }
+
+ @Override
+ protected void respond(final AjaxRequestTarget target) {
+ onCancel(target);
+ }
+
+
+ });
+ }
+ }
+
}
}
http://git-wip-us.apache.org/repos/asf/isis/blob/c8673f28/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PromptFormPanelAbstract.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PromptFormPanelAbstract.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PromptFormPanelAbstract.java
index c4edc5a..8a20f08 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PromptFormPanelAbstract.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PromptFormPanelAbstract.java
@@ -91,11 +91,12 @@ public abstract class PromptFormPanelAbstract<T extends IModel<?> & HasFormExecu
addOrReplace(formFeedback);
AjaxButton okButton = addOkButton();
- addCancelButton();
- configureButtons(okButton);
+ final AjaxButton cancelButton = addCancelButton();
+ configureButtons(okButton, cancelButton);
}
- protected abstract void addParameters();
+
+ protected abstract void addParameters();
protected AjaxButton addOkButton() {
AjaxButton okButton = settings.isUseIndicatorForFormSubmit()
@@ -150,7 +151,7 @@ public abstract class PromptFormPanelAbstract<T extends IModel<?> & HasFormExecu
}
- protected void addCancelButton() {
+ protected AjaxButton addCancelButton() {
AjaxButton cancelButton = new AjaxButton(ID_CANCEL_BUTTON, new ResourceModel("cancelLabel")) {
private static final long serialVersionUID = 1L;
@@ -169,9 +170,11 @@ public abstract class PromptFormPanelAbstract<T extends IModel<?> & HasFormExecu
cancelButton.setDefaultFormProcessing(false);
add(cancelButton);
+
+ return cancelButton;
}
- protected void configureButtons(final AjaxButton okButton) {
+ protected void configureButtons(final AjaxButton okButton, final AjaxButton cancelButton) {
}
private void onSubmitOf(