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/21 18:16:24 UTC
[2/5] isis git commit: ISIS-1603: updates pom.xml,
trivial changes in PageAbstract and PanelAbstract, the TextFieldXxxModels,
also ScalarPanelAbstract
ISIS-1603: updates pom.xml, trivial changes in PageAbstract and PanelAbstract, the TextFieldXxxModels, also ScalarPanelAbstract
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/ca40bda0
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/ca40bda0
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/ca40bda0
Branch: refs/heads/ISIS-1603-reapply
Commit: ca40bda015e5f2dd3424cd370b88bbfdbcd03686
Parents: 55ab1f8
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Fri Apr 21 13:31:48 2017 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Fri Apr 21 13:31:48 2017 +0100
----------------------------------------------------------------------
core/pom.xml | 13 +++++++++++++
core/viewer-wicket-ui/pom.xml | 8 +++++++-
.../components/scalars/ScalarPanelAbstract.java | 19 +++++++++++++------
.../components/scalars/TextFieldStringModel.java | 11 +++++++++++
.../components/scalars/TextFieldValueModel.java | 12 ++++++++++--
.../viewer/wicket/ui/pages/PageAbstract.java | 4 +++-
.../viewer/wicket/ui/panels/PanelAbstract.java | 5 -----
7 files changed, 57 insertions(+), 15 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/ca40bda0/core/pom.xml
----------------------------------------------------------------------
diff --git a/core/pom.xml b/core/pom.xml
index 150c5f1..6fb09a7 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -149,6 +149,7 @@
<select2.version>4.0.3</select2.version>
<jquery-ui.version>1.11.4</jquery-ui.version>
+ <x-editable.version>1.5.1</x-editable.version>
<guice.version>4.1.0</guice.version>
<picocontainer.version>2.15</picocontainer.version>
@@ -1626,6 +1627,18 @@ ${license.additional-notes}
<dependency>
<groupId>org.webjars</groupId>
+ <artifactId>x-editable-bootstrap</artifactId>
+ <version>${x-editable.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.webjars</groupId>
+ <artifactId>bootstrap</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.webjars</groupId>
<artifactId>select2</artifactId>
<version>${select2.version}</version>
</dependency>
http://git-wip-us.apache.org/repos/asf/isis/blob/ca40bda0/core/viewer-wicket-ui/pom.xml
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/pom.xml b/core/viewer-wicket-ui/pom.xml
index e2ff0af..43a9353 100644
--- a/core/viewer-wicket-ui/pom.xml
+++ b/core/viewer-wicket-ui/pom.xml
@@ -56,6 +56,7 @@
</build>
<dependencies>
+
<dependency>
<groupId>org.apache.isis.core</groupId>
<artifactId>isis-core-viewer-wicket-model</artifactId>
@@ -92,7 +93,12 @@
<artifactId>wicketstuff-select2</artifactId>
</dependency>
- <dependency>
+ <dependency>
+ <groupId>org.webjars</groupId>
+ <artifactId>x-editable-bootstrap</artifactId>
+ </dependency>
+
+ <dependency>
<groupId>org.webjars</groupId>
<artifactId>select2</artifactId>
</dependency>
http://git-wip-us.apache.org/repos/asf/isis/blob/ca40bda0/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java
index a394fb4..8f93090 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/ScalarPanelAbstract.java
@@ -37,6 +37,7 @@ import org.apache.wicket.markup.html.panel.Fragment;
import org.apache.wicket.model.Model;
import org.apache.isis.applib.annotation.ActionLayout;
+import org.apache.isis.applib.annotation.PropertyEditStyle;
import org.apache.isis.applib.annotation.Where;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
@@ -74,6 +75,8 @@ public abstract class ScalarPanelAbstract extends PanelAbstract<ScalarModel> imp
protected static final String ID_SCALAR_IF_REGULAR = "scalarIfRegular";
protected static final String ID_SCALAR_NAME = "scalarName";
protected static final String ID_SCALAR_VALUE = "scalarValue";
+ protected static final String ID_SCALAR_VALUE_EDIT_INLINE = "scalarValueEditInline";
+ protected static final String ID_SCALAR_VALUE_EDIT_INLINE_LABEL = "scalarValueEditInlineLabel";
protected static final String ID_SCALAR_IF_COMPACT = "scalarIfCompact";
@@ -164,7 +167,7 @@ public abstract class ScalarPanelAbstract extends PanelAbstract<ScalarModel> imp
}
protected Rendering getRendering() {
- return Rendering.renderingFor(getModel().getRenderingHint());
+ return Rendering.renderingFor(scalarModel.getRenderingHint());
}
protected Component getLabelForCompact() {
@@ -199,7 +202,7 @@ public abstract class ScalarPanelAbstract extends PanelAbstract<ScalarModel> imp
/**
* hook for highly dynamic components, eg conditional choices.
- *
+ *
* <p>
* Returning <tt>true</tt> means that the component is always rebuilt prior to
* every {@link #onBeforeRender() render}ing.
@@ -288,8 +291,10 @@ public abstract class ScalarPanelAbstract extends PanelAbstract<ScalarModel> imp
}
protected void addEditPropertyTo(final MarkupContainer markupContainer) {
- final String disableReasonIfAny = scalarModel.disable(getRendering().getWhere());
- if (disableReasonIfAny == null && scalarModel.isViewMode()) {
+
+ final PropertyEditStyle editStyle = this.scalarModel.getEditStyle();
+ if(editStyle == PropertyEditStyle.DIALOG) {
+
final WebMarkupContainer editProperty = new WebMarkupContainer(ID_EDIT_PROPERTY);
editProperty.setOutputMarkupId(true);
@@ -301,11 +306,12 @@ public abstract class ScalarPanelAbstract extends PanelAbstract<ScalarModel> imp
.getFrom(ScalarPanelAbstract.this).getActionPrompt();
PropertyEditPromptHeaderPanel titlePanel = new PropertyEditPromptHeaderPanel(prompt.getTitleId(),
- scalarModel);
+ ScalarPanelAbstract.this.scalarModel);
final PropertyEditPanel propertyEditPanel =
(PropertyEditPanel) getComponentFactoryRegistry().createComponent(
- ComponentType.PROPERTY_EDIT_PROMPT, prompt.getContentId(), scalarModel);
+ ComponentType.PROPERTY_EDIT_PROMPT, prompt.getContentId(),
+ ScalarPanelAbstract.this.scalarModel);
propertyEditPanel.setShowHeader(false);
@@ -317,6 +323,7 @@ public abstract class ScalarPanelAbstract extends PanelAbstract<ScalarModel> imp
});
markupContainer.addOrReplace(editProperty);
+
} else {
Components.permanentlyHide(markupContainer, ID_EDIT_PROPERTY);
}
http://git-wip-us.apache.org/repos/asf/isis/blob/ca40bda0/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/TextFieldStringModel.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/TextFieldStringModel.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/TextFieldStringModel.java
new file mode 100644
index 0000000..051969f
--- /dev/null
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/TextFieldStringModel.java
@@ -0,0 +1,11 @@
+package org.apache.isis.viewer.wicket.ui.components.scalars;
+
+public class TextFieldStringModel extends TextFieldValueModel<String> {
+
+ private static final long serialVersionUID = 1L;
+
+ public TextFieldStringModel(final TextFieldValueModel.ScalarModelProvider parent) {
+ super(parent);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/isis/blob/ca40bda0/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/TextFieldValueModel.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/TextFieldValueModel.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/TextFieldValueModel.java
index 4f69b40..b2a290a 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/TextFieldValueModel.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/scalars/TextFieldValueModel.java
@@ -29,12 +29,12 @@ import org.apache.isis.viewer.wicket.model.models.ScalarModel;
/**
* For custom {@link ScalarPanelTextFieldAbstract}s to use as the {@link Model}
- * of their {@link TextField} (as constructed in {@link ScalarPanelTextFieldAbstract#createTextFieldForRegular()}).
+ * of their {@link TextField} (as constructed in {@link ScalarPanelTextFieldAbstract#createTextFieldForRegular(String)}).
*/
public class TextFieldValueModel<T extends Serializable> extends Model<T> {
private static final long serialVersionUID = 1L;
-
+
public interface ScalarModelProvider {
ScalarModel getModel();
AdapterManager getAdapterManager();
@@ -67,4 +67,12 @@ public class TextFieldValueModel<T extends Serializable> extends Model<T> {
scalarModelProvider.getModel().setObject(objectAdapter);
}
}
+
+ // FIXME: a bit of a hack to just use toString(), probably want to format somehow.
+ public String getObjectAsString() {
+ T object = getObject();
+ return object != null ? object.toString() : null;
+ }
+
+
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/isis/blob/ca40bda0/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.java
index d7dad78..be3313d 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/PageAbstract.java
@@ -282,7 +282,9 @@ public abstract class PageAbstract extends WebPage implements ActionPromptProvid
}
private void addBootLint(final IHeaderResponse response) {
- response.render(BootlintHeaderItem.INSTANCE);
+ // rather than using the default BootlintHeaderItem.INSTANCE;
+ // this allows us to assign 'form-control' class to an <a> (for x-editable styling)
+ response.render(new BootlintHeaderItem("bootlint.showLintReportForCurrentDocument(['E042'], {'problemFree': false});"));
}
private boolean isModernBrowser() {
http://git-wip-us.apache.org/repos/asf/isis/blob/ca40bda0/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PanelAbstract.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PanelAbstract.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PanelAbstract.java
index 0995a80..4b43e78 100644
--- a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PanelAbstract.java
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/panels/PanelAbstract.java
@@ -116,11 +116,6 @@ public abstract class PanelAbstract<T extends IModel<?>> extends Panel {
return UiHintContainer.Util.hintContainerOf(this);
}
- // seemes to be unused
- public <T extends UiHintContainer> T getUiHintContainer(final Class<T> additionalConstraint) {
- return UiHintContainer.Util.hintContainerOf(this, additionalConstraint);
- }
-
// ///////////////////////////////////////////////////////////////////
// Convenience