You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by rm...@apache.org on 2012/10/17 15:42:51 UTC
svn commit: r1399251 - in
/incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view:
action/ display/ edit/ form/ logon/
Author: rmatthews
Date: Wed Oct 17 13:42:50 2012
New Revision: 1399251
URL: http://svn.apache.org/viewvc?rev=1399251&view=rev
Log:
ISIS-162 - Improved form layout for various elements
Modified:
incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionForm.java
incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/CreateFormParameter.java
incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/display/AbstractFormView.java
incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/edit/EditObject.java
incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/form/HtmlFormBuilder.java
incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/logon/Logon.java
Modified: incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionForm.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionForm.java?rev=1399251&r1=1399250&r2=1399251&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionForm.java (original)
+++ incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/ActionForm.java Wed Oct 17 13:42:50 2012
@@ -58,6 +58,7 @@ public class ActionForm extends Abstract
parameters.showIcon = request.isRequested(SHOW_ICON, showIconByDefault());
parameters.buttonTitle = request.getOptionalProperty(BUTTON_TITLE);
parameters.formTitle = request.getOptionalProperty(FORM_TITLE);
+ parameters.labelDelimiter = request.getOptionalProperty(LABEL_DELIMITER, ":");
parameters.formId = request.getOptionalProperty(FORM_ID, request.nextFormId());
parameters.resultName = request.getOptionalProperty(RESULT_NAME);
parameters.resultOverride = request.getOptionalProperty(RESULT_OVERRIDE);
@@ -156,10 +157,8 @@ public class ActionForm extends Abstract
buttonTitle = "Ok";
}
- final String cancelTo = parameterObject.cancelTo == null ? "_generic.shtml?_result=" + objectId : parameterObject.cancelTo;
-
HtmlFormBuilder.createForm(request, ActionAction.ACTION + ".app", hiddenFields, formFields, parameterObject.className,
- parameterObject.id, formTitle, action.getDescription(), action.getHelp(), buttonTitle, errors, cancelTo);
+ parameterObject.id, formTitle, parameterObject.labelDelimiter, action.getDescription(), action.getHelp(), buttonTitle, errors, parameterObject.cancelTo);
request.popBlockContent();
}
Modified: incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/CreateFormParameter.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/CreateFormParameter.java?rev=1399251&r1=1399250&r2=1399251&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/CreateFormParameter.java (original)
+++ incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/action/CreateFormParameter.java Wed Oct 17 13:42:50 2012
@@ -39,4 +39,5 @@ public class CreateFormParameter {
public boolean showIcon;
public String completionMessage;
public String cancelTo;
+ public String labelDelimiter;
}
Modified: incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/display/AbstractFormView.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/display/AbstractFormView.java?rev=1399251&r1=1399250&r2=1399251&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/display/AbstractFormView.java (original)
+++ incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/display/AbstractFormView.java Wed Oct 17 13:42:50 2012
@@ -52,6 +52,7 @@ public abstract class AbstractFormView e
String title = request.getOptionalProperty(FORM_TITLE);
final String oddRowClass = request.getOptionalProperty(ODD_ROW_CLASS);
final String evenRowClass = request.getOptionalProperty(EVEN_ROW_CLASS);
+ final String labelDelimiter = request.getOptionalProperty(LABEL_DELIMITER, ":");
final boolean showIcons = request.isRequested(SHOW_ICON, showIconByDefault());
request.setBlockContent(tag);
@@ -78,13 +79,23 @@ public abstract class AbstractFormView e
title = null;
}
- write(request, object, fields, linkFields, classString, title, oddRowClass, evenRowClass, showIcons);
+ write(request, object, fields, linkFields, classString, title, labelDelimiter, oddRowClass, evenRowClass, showIcons);
} else {
request.skipUntilClose();
}
}
- private void write(final Request request, final ObjectAdapter object, final List<ObjectAssociation> fields, final LinkedObject[] linkFields, final String classString, final String title, final String oddRowClass, final String evenRowClass, final boolean showIcons) {
+ private void write(
+ final Request request,
+ final ObjectAdapter object,
+ final List<ObjectAssociation> fields,
+ final LinkedObject[] linkFields,
+ final String classString,
+ final String title,
+ final String labelDelimiter,
+ final String oddRowClass,
+ final String evenRowClass,
+ final boolean showIcons) {
request.appendHtml("<div" + classString + ">");
if (title != null) {
request.appendHtml("<div class=\"title\">");
@@ -111,7 +122,7 @@ public abstract class AbstractFormView e
}
request.appendHtml("<div " + cls + description + "><span class=\"label\">");
request.appendAsHtmlEncoded(field.getName());
- request.appendHtml(":</span>");
+ request.appendHtml(labelDelimiter + "</span>");
final LinkedObject linkedObject = linkFields[i];
addField(request, object, field, linkedObject, showIcons);
HelpLink.append(request, field.getDescription(), field.getHelp());
Modified: incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/edit/EditObject.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/edit/EditObject.java?rev=1399251&r1=1399250&r2=1399251&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/edit/EditObject.java (original)
+++ incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/edit/EditObject.java Wed Oct 17 13:42:50 2012
@@ -59,6 +59,7 @@ public class EditObject extends Abstract
final String cancelTo = request.getOptionalProperty(CANCEL_TO);
final boolean hideNonEditableFields = request.isRequested(HIDE_UNEDITABLE, false);
final boolean showIcon = request.isRequested(SHOW_ICON, showIconByDefault());
+ final String labelDelimiter = request.getOptionalProperty(LABEL_DELIMITER, ":");
String buttonTitle = request.getOptionalProperty(BUTTON_TITLE);
String formTitle = request.getOptionalProperty(FORM_TITLE);
final String formId = request.getOptionalProperty(FORM_ID, request.nextFormId());
@@ -163,7 +164,7 @@ public class EditObject extends Abstract
final HiddenInputField[] hiddenFieldArray = hiddenFields.toArray(new HiddenInputField[hiddenFields.size()]);
HtmlFormBuilder.createForm(request, EditAction.ACTION + ".app", hiddenFieldArray, formFields, className, id, formTitle,
- null, null, buttonTitle, errors, cancelTo);
+ labelDelimiter, null, null, buttonTitle, errors, cancelTo);
request.popBlockContent();
}
Modified: incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/form/HtmlFormBuilder.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/form/HtmlFormBuilder.java?rev=1399251&r1=1399250&r2=1399251&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/form/HtmlFormBuilder.java (original)
+++ incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/form/HtmlFormBuilder.java Wed Oct 17 13:42:50 2012
@@ -33,6 +33,7 @@ public class HtmlFormBuilder {
final String className,
final String id,
final String formTitle,
+ final String labelDelimiter,
final String description,
final String helpReference,
final String buttonTitle,
@@ -76,9 +77,9 @@ public class HtmlFormBuilder {
final String fieldSegment = createField(fld);
final String helpSegment = HelpLink.createHelpSegment(fld.getDescription(), fld.getHelpReference());
final String title = fld.getDescription().equals("") ? "" : " title=\"" + fld.getDescription() + "\"";
- request.appendHtml(" <div class=\"field\"><label class=\"label\" " + title + ">");
+ request.appendHtml(" <div class=\"field " + fld.getName() + "\"><label class=\"label\" " + title + ">");
request.appendAsHtmlEncoded(fld.getLabel());
- request.appendHtml(":</label>" + fieldSegment + errorSegment + helpSegment + "</div>\n");
+ request.appendHtml(labelDelimiter + "</label>" + fieldSegment + errorSegment + helpSegment + "</div>\n");
}
}
@@ -138,10 +139,11 @@ public class HtmlFormBuilder {
final String columnsSegment = field.getWidth() == 0 ? "" : " cols=\"" + field.getWidth() / field.getHeight() + "\"";
final String rowsSegment = field.getHeight() == 0 ? "" : " rows=\"" + field.getHeight() + "\"";
final String wrapSegment = !field.isWrapped() ? "" : " wrap=\"off\"";
- final String requiredSegment = !field.isRequired() ? "" : " <span class=\"required\">*</span>";
+ final String requiredSegment = !field.isRequired() ? "" : " class=\"required\"";
final String disabled = field.isEditable() ? "" : " disabled=\"disabled\"";
- final String maxLength = field.getMaxLength() == 0 ? "" : " rows=\"" + field.getMaxLength() + "\"";
- return "<textarea name=\"" + field.getName() + "\"" + columnsSegment + rowsSegment + wrapSegment + maxLength + disabled + ">" + Request.getEncoder().encoder(field.getValue()) + "</textarea>" + requiredSegment;
+ final String maxLength = field.getMaxLength() == 0 ? "" : " maxlength=\"" + field.getMaxLength() + "\"";
+ return "<textarea" + requiredSegment + " name=\"" + field.getName() + "\"" + columnsSegment + rowsSegment + wrapSegment
+ + maxLength + disabled + ">" + Request.getEncoder().encoder(field.getValue()) + "</textarea>";
}
private static String createPasswordField(final InputField field) {
@@ -158,10 +160,10 @@ public class HtmlFormBuilder {
final String valueSegment = value == null ? "" : " value=\"" + Request.getEncoder().encoder(value) + "\"";
final String lengthSegment = field.getWidth() == 0 ? "" : " size=\"" + field.getWidth() + "\"";
final String maxLengthSegment = field.getMaxLength() == 0 ? "" : " maxlength=\"" + field.getMaxLength() + "\"";
- final String requiredSegment = !field.isRequired() ? "" : " <span class=\"required\">*</span>";
+ final String requiredSegment = !field.isRequired() ? "" : " required";
final String disabled = field.isEditable() ? "" : " disabled=\"disabled\"";
- return "<input class=\"" + field.getDataType() + "\" + type=\"" + type + "\" name=\"" + field.getName() + "\"" +
- valueSegment + lengthSegment + maxLengthSegment + disabled + additionalAttributes + " />" + requiredSegment;
+ return "<input class=\"" + field.getDataType() + requiredSegment + "\" type=\"" + type + "\" name=\"" + field.getName() + "\"" +
+ valueSegment + lengthSegment + maxLengthSegment + disabled + additionalAttributes + " />";
}
private static String createCheckbox(final InputField field) {
@@ -172,12 +174,13 @@ public class HtmlFormBuilder {
}
private static String createOptions(final InputField field) {
- final StringBuffer str = new StringBuffer();
- final String disabled = field.isEditable() ? "" : " disabled=\"disabled\"";
- str.append("\n <select name=\"" + field.getName() + "\"" + disabled + ">\n");
final String[] options = field.getOptionsText();
final String[] ids = field.getOptionValues();
final int length = options.length;
+ final String classSegment = field.isRequired() && length == 0 ? " class=\"required\"" : "";
+ final String disabled = field.isEditable() ? "" : " disabled=\"disabled\"";
+ final StringBuffer str = new StringBuffer();
+ str.append("\n <select name=\"" + field.getName() + "\"" + disabled + classSegment + ">\n");
boolean offerOther = false;
for (int i = 0; i < length; i++) {
final String selectedSegment = field.getValue() == null || ids[i].equals(field.getValue()) ? " selected=\"selected\"" : "";
@@ -204,9 +207,6 @@ public class HtmlFormBuilder {
// enabled
str.append(" <input type=\"text\" name=\"" + field.getName() + "-other\"" + hideSegment + lengthSegment + disabled + " />");
}
- if (field.isRequired() && length == 0) {
- str.append(" <span class=\"required\">*</span>");
- }
str.append("\n");
return str.toString();
}
Modified: incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/logon/Logon.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/logon/Logon.java?rev=1399251&r1=1399250&r2=1399251&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/logon/Logon.java (original)
+++ incubator/isis/trunk/framework/viewer/scimpi/scimpi-dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/view/logon/Logon.java Wed Oct 17 13:42:50 2012
@@ -51,12 +51,13 @@ public class Logon extends AbstractEleme
}
public static void loginForm(final Request request, final String view) {
- String object = request.getOptionalProperty(OBJECT);
- String method = request.getOptionalProperty(METHOD, "logon");
- String result = request.getOptionalProperty(RESULT_NAME, "_user");
- String resultScope = request.getOptionalProperty(SCOPE, Scope.SESSION.name());
- String isisUser = request.getOptionalProperty("isis-user", "_web_default");
- String formId = request.getOptionalProperty(FORM_ID, request.nextFormId());
+ final String object = request.getOptionalProperty(OBJECT);
+ final String method = request.getOptionalProperty(METHOD, "logon");
+ final String result = request.getOptionalProperty(RESULT_NAME, "_user");
+ final String resultScope = request.getOptionalProperty(SCOPE, Scope.SESSION.name());
+ final String isisUser = request.getOptionalProperty("isis-user", "_web_default");
+ final String formId = request.getOptionalProperty(FORM_ID, request.nextFormId());
+ final String labelDelimiter = request.getOptionalProperty(LABEL_DELIMITER, ":");
// TODO error if all values are not set (not if use type is not set and all others are still defaults);
@@ -97,7 +98,7 @@ public class Logon extends AbstractEleme
final String id = request.getOptionalProperty(ID, "logon");
HtmlFormBuilder.createForm(request, "logon.app", hiddenFields.toArray(new HiddenInputField[hiddenFields.size()]), fields,
- className, id, formTitle, null, null, loginButtonTitle,
+ className, id, formTitle, labelDelimiter, null, null, loginButtonTitle,
isforThisForm && entryState != null ? entryState.getError() : null , null);
}