This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch v3
in repository https://gitbox.apache.org/repos/asf/causeway.git


The following commit(s) were added to refs/heads/v3 by this push:
     new 251e72fc80b CAUSEWAY-2297: misnomer 'scalar' when allows plural (part 
8)
251e72fc80b is described below

commit 251e72fc80be8a5fe31eecbb1660ae01ee1a1af0
Author: Andi Huber <[email protected]>
AuthorDate: Tue Nov 26 07:27:57 2024 +0100

    CAUSEWAY-2297: misnomer 'scalar' when allows plural (part 8)
    
    - mignotes
    - renaming enum, html wicket:id
---
 antora/components/relnotes/modules/ROOT/nav.adoc   |  1 +
 .../modules/ROOT/pages/2024/2.2.0/mignotes.adoc    |  7 +++++
 .../modules/ROOT/pages/2024/2.2.0/relnotes.adoc    |  9 ++++++
 .../modules/ROOT/pages/2024/3.2.0/mignotes.adoc    | 33 ++++++++++++++++++++++
 .../modules/ROOT/pages/2024/3.2.0/relnotes.adoc    | 32 +++++++++++++++++++++
 .../PdfJsViewerPanelComponentFactory.java          |  2 +-
 .../testdomain/conf/Configuration_usingWicket.java |  2 +-
 .../commons/model/components/UiComponentType.java  | 27 ++++++++----------
 .../components/actions/ActionParametersForm.java   |  4 +--
 .../actions/ActionParametersFormPanel.html         |  2 +-
 .../actions/ActionParametersFormPanel.java         |  2 +-
 ...bstract.java => AttributeComponentFactory.java} |  6 ++--
 ...tributeComponentFactoryWithTypeConstraint.java} |  8 +++---
 .../blobclob/BlobAttributePanelFactory.java        |  4 +--
 .../blobclob/ClobAttributePanelFactory.java        |  4 +--
 .../bool/BooleanAttributePanelFactory.java         |  4 +--
 .../choices/ChoicesSelect2PanelFactory.java        |  4 +--
 .../attributes/image/JavaAwtImagePanelFactory.java |  4 +--
 .../markup/MarkupAttributePanelFactories.java      |  4 +--
 .../passwd/PasswordAttributePanelFactory.java      |  4 +--
 .../string/StringAttributePanelFactory.java        |  4 +--
 .../value/ValueFallbackAttributePanelFactory.java  |  4 +--
 .../ajaxtable/columns/SingularColumn.java          |  2 +-
 .../components/entity/fieldset/PropertyGroup.java  |  2 +-
 .../ui/components/property/PropertyEditForm.java   |  2 +-
 .../components/property/PropertyEditFormPanel.html |  2 +-
 .../ui/components/tree/TreePanelFactories.java     |  4 +--
 .../components/ComponentFactoryConfigWkt.java      | 14 ++++-----
 28 files changed, 138 insertions(+), 59 deletions(-)

diff --git a/antora/components/relnotes/modules/ROOT/nav.adoc 
b/antora/components/relnotes/modules/ROOT/nav.adoc
index 3442271cc67..a4746807867 100644
--- a/antora/components/relnotes/modules/ROOT/nav.adoc
+++ b/antora/components/relnotes/modules/ROOT/nav.adoc
@@ -3,6 +3,7 @@
 
 
 * 2024
+** xref:relnotes:ROOT:2024/2.2.0/relnotes.adoc[2.2.0] and 
xref:relnotes:ROOT:2024/3.2.0/relnotes.adoc[3.2.0]
 ** xref:relnotes:ROOT:2024/2.1.0/relnotes.adoc[2.1.0] and 
xref:relnotes:ROOT:2024/3.1.0/relnotes.adoc[3.1.0]
 ** xref:relnotes:ROOT:2024/2.0.0/relnotes.adoc[2.0.0] and 
xref:relnotes:ROOT:2024/3.0.0/relnotes.adoc[3.0.0]
 ** xref:relnotes:ROOT:2024/2.0.0-RC4/relnotes.adoc[2.0.0-RC4]
diff --git 
a/antora/components/relnotes/modules/ROOT/pages/2024/2.2.0/mignotes.adoc 
b/antora/components/relnotes/modules/ROOT/pages/2024/2.2.0/mignotes.adoc
new file mode 100644
index 00000000000..40f40dd35c9
--- /dev/null
+++ b/antora/components/relnotes/modules/ROOT/pages/2024/2.2.0/mignotes.adoc
@@ -0,0 +1,7 @@
+= Migrating from 2.1.0 to 2.2.0
+
+:Notice: Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license agreements. See the NOTICE file distributed with this work 
for additional information regarding copyright ownership. The ASF licenses this 
file to you under the Apache License, Version 2.0 (the "License"); you may not 
use this file except in compliance with the License. You may obtain a copy of 
the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by 
applicable law or ag [...]
+:page-partial:
+
+
+No specific migration notes have been recorded to date.
diff --git 
a/antora/components/relnotes/modules/ROOT/pages/2024/2.2.0/relnotes.adoc 
b/antora/components/relnotes/modules/ROOT/pages/2024/2.2.0/relnotes.adoc
new file mode 100644
index 00000000000..45299236fca
--- /dev/null
+++ b/antora/components/relnotes/modules/ROOT/pages/2024/2.2.0/relnotes.adoc
@@ -0,0 +1,9 @@
+[[r2.2.0]]
+= 2.2.0
+
+:Notice: Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license agreements. See the NOTICE file distributed with this work 
for additional information regarding copyright ownership. The ASF licenses this 
file to you under the Apache License, Version 2.0 (the "License"); you may not 
use this file except in compliance with the License. You may obtain a copy of 
the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by 
applicable law or ag [...]
+:page-partial:
+
+v2.2.0 and v3.2.0 are being released at the same time, and are broadly 
equivalent.
+
+*TODO* include::partial$2024/2.2.0/_relnotes.adoc[]
diff --git 
a/antora/components/relnotes/modules/ROOT/pages/2024/3.2.0/mignotes.adoc 
b/antora/components/relnotes/modules/ROOT/pages/2024/3.2.0/mignotes.adoc
new file mode 100644
index 00000000000..0ef347cab27
--- /dev/null
+++ b/antora/components/relnotes/modules/ROOT/pages/2024/3.2.0/mignotes.adoc
@@ -0,0 +1,33 @@
+= Migrating from 3.1.0 to 3.2.0
+
+:Notice: Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license agreements. See the NOTICE file distributed with this work 
for additional information regarding copyright ownership. The ASF licenses this 
file to you under the Apache License, Version 2.0 (the "License"); you may not 
use this file except in compliance with the License. You may obtain a copy of 
the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by 
applicable law or ag [...]
+:page-partial:
+
+== Renaming of Term 'scalar' -> 'attribute'
+
+Since the initial design of the framework, UI components exist to represent a 
single `property` or `parameter` 
+such as domain-object references or values (textual, temporal, numerical 
etc.).  
+
+The term to refer to both (action) parameters and (domain object) properties 
collectively was `scalar`. 
+Unfortunately this is a misnomer, because parameters are also allowed to be 
multi-valued, 
+hence the term `scalar` is potentially misleading.  
+
+Searching for a better fitting term we came up with `attribute`, 
+as we are referring to both method parameters and instance fields collectively 
as *attributes* of a _class_ or _method_. 
+(While not on point, at least `attribute` is not misleading regarding 
cardinality.)
+
+Hence many UI and model classes needed to be renamed accordingly.  
+
+[source,java]
+.some examples
+----
+//UiComponentType.SCALAR_NAME_AND_VALUE 
+UiComponentType.ATTRIBUTE_NAME_AND_VALUE
+
+//import org.apache.causeway.viewer.wicket.model.models.ScalarModel;
+import org.apache.causeway.viewer.wicket.model.models.UiAttributeWkt;
+
+//import 
org.apache.causeway.viewer.wicket.ui.components.scalars.ComponentFactoryScalarTypeConstrainedAbstract;
+import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryWithTypeConstraint;
+
+----
\ No newline at end of file
diff --git 
a/antora/components/relnotes/modules/ROOT/pages/2024/3.2.0/relnotes.adoc 
b/antora/components/relnotes/modules/ROOT/pages/2024/3.2.0/relnotes.adoc
new file mode 100644
index 00000000000..94f95e9861d
--- /dev/null
+++ b/antora/components/relnotes/modules/ROOT/pages/2024/3.2.0/relnotes.adoc
@@ -0,0 +1,32 @@
+[[r3.2.0]]
+= 3.2.0
+
+:Notice: Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license agreements. See the NOTICE file distributed with this work 
for additional information regarding copyright ownership. The ASF licenses this 
file to you under the Apache License, Version 2.0 (the "License"); you may not 
use this file except in compliance with the License. You may obtain a copy of 
the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by 
applicable law or ag [...]
+:page-partial:
+
+v2.2.0 and v3.2.0 are being released at the same time, and are broadly 
equivalent in terms of the features.
+However, they have different baseline dependencies, and some new features did 
not make it into the v2 branch.
+ 
+*TODO* include::partial$2024/2.2.0/_relnotes.adoc[]
+
+'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+== Version 3.2.0
+
+Version `3.2.0` also has these additional changes not present in the `2.2.0`:
+
+=== New Feature (1)
+
+*TODO* incomplete list
+
+Improved UI Table Search/Filter Bar and Row Selection Handling:
+
+* link:https://issues.apache.org/jira/browse/CAUSEWAY-3829[CAUSEWAY-3829] - ...
+* link:https://issues.apache.org/jira/browse/CAUSEWAY-3830[CAUSEWAY-3830] - ...
+* link:https://issues.apache.org/jira/browse/CAUSEWAY-3831[CAUSEWAY-3831] - ...
+* link:https://issues.apache.org/jira/browse/CAUSEWAY-3832[CAUSEWAY-3832] - ...
+
+=== Won't Fix
+
+*TODO*
+
diff --git 
a/extensions/vw/pdfjs/wicket/ui/src/main/java/org/apache/causeway/extensions/pdfjs/wkt/ui/components/PdfJsViewerPanelComponentFactory.java
 
b/extensions/vw/pdfjs/wicket/ui/src/main/java/org/apache/causeway/extensions/pdfjs/wkt/ui/components/PdfJsViewerPanelComponentFactory.java
index 1b1e895480d..97300ddfc42 100644
--- 
a/extensions/vw/pdfjs/wicket/ui/src/main/java/org/apache/causeway/extensions/pdfjs/wkt/ui/components/PdfJsViewerPanelComponentFactory.java
+++ 
b/extensions/vw/pdfjs/wicket/ui/src/main/java/org/apache/causeway/extensions/pdfjs/wkt/ui/components/PdfJsViewerPanelComponentFactory.java
@@ -36,7 +36,7 @@ public class PdfJsViewerPanelComponentFactory extends 
ComponentFactoryAbstract {
 
     @Inject
     public PdfJsViewerPanelComponentFactory() {
-        super(UiComponentType.SCALAR_NAME_AND_VALUE, PdfJsViewerPanel.class);
+        super(UiComponentType.ATTRIBUTE_NAME_AND_VALUE, 
PdfJsViewerPanel.class);
     }
 
     @Override
diff --git 
a/regressiontests/base/src/main/java/org/apache/causeway/testdomain/conf/Configuration_usingWicket.java
 
b/regressiontests/base/src/main/java/org/apache/causeway/testdomain/conf/Configuration_usingWicket.java
index 3b3f036c640..bc5fe0e8d26 100644
--- 
a/regressiontests/base/src/main/java/org/apache/causeway/testdomain/conf/Configuration_usingWicket.java
+++ 
b/regressiontests/base/src/main/java/org/apache/causeway/testdomain/conf/Configuration_usingWicket.java
@@ -187,7 +187,7 @@ public class Configuration_usingWicket {
                 return id() + 
":scalarTypeContainer:scalarIfRegularInlinePromptForm:inputForm";
             }
             default String scalarField() {
-                return 
"property:scalarNameAndValue:scalarTypeContainer:scalarIfRegular:"
+                return 
"property:attributeNameAndValue:scalarTypeContainer:scalarIfRegular:"
                     + RegularFrame.FIELD.getContainerId() + ":"
                     + FieldFrame.SCALAR_VALUE_CONTAINER.getContainerId() + 
":scalarValue";
             }
diff --git 
a/viewers/commons/model/src/main/java/org/apache/causeway/viewer/commons/model/components/UiComponentType.java
 
b/viewers/commons/model/src/main/java/org/apache/causeway/viewer/commons/model/components/UiComponentType.java
index 1da0dd4cd4f..ecfa58afac6 100644
--- 
a/viewers/commons/model/src/main/java/org/apache/causeway/viewer/commons/model/components/UiComponentType.java
+++ 
b/viewers/commons/model/src/main/java/org/apache/causeway/viewer/commons/model/components/UiComponentType.java
@@ -29,10 +29,9 @@ import lombok.RequiredArgsConstructor;
 /**
  * Enumerates the different types of UI <i>Components</i> that can be 
constructed
  * using component factories.
- *
  * <p>
- * Some are fine-grained (such as {@link 
UiComponentType#SCALAR_NAME_AND_VALUE}, a
- * panel to represent a single scalar property or parameter), but others are
+ * Some are fine-grained (such as {@link 
UiComponentType#ATTRIBUTE_NAME_AND_VALUE}, a
+ * panel to represent a single property or parameter), but others are
  * somewhat larger (such as {@link UiComponentType#ENTITY}, representing an
  * entity, with its actions, properties and collections).
  */
@@ -49,7 +48,6 @@ public enum UiComponentType {
     WELCOME,
     /**
      * List of services and their actions.
-     *
      * <p>
      * Could be rendered using a JavaScript or DHTML menu, an accordion, or a
      * tree view.
@@ -73,14 +71,12 @@ public enum UiComponentType {
     ENTITY_SUMMARY,
     /**
      * A single &quot;parented&quot; collection of an entity.
-     *
      * <p>
-     *     Note that the default implementation is actually a wrapper that 
provides a selector over all available
-     *     individual representations of the entity by way of {@link 
#COLLECTION_CONTENTS} component type.  The
-     *     framework provides a number of implementations of this lower-level 
component: as a table, as
-     *     collapsed/hidden, as a summary.  Any additional representations 
that are found that can render the
-     *     collection (eg map, calendar) are added to the selector.
-     * </p>
+     * Note that the default implementation is actually a wrapper that 
provides a selector over all available
+     * individual representations of the entity by way of {@link 
#COLLECTION_CONTENTS} component type.  The
+     * framework provides a number of implementations of this lower-level 
component: as a table, as
+     * collapsed/hidden, as a summary.  Any additional representations that 
are found that can render the
+     * collection (eg map, calendar) are added to the selector.
      */
     ENTITY_COLLECTION,
     /**
@@ -88,9 +84,12 @@ public enum UiComponentType {
      */
     VALUE,
     /**
-     * The name and value of a single property or parameter, ie a scalar.
+     * The name and value of a single property or parameter, ie an attribute.
+     * <p>
+     * We refer to both method parameters and instance fields collectively as 
"attributes" of a class or method.
+     * (Parameters can be single- or multi-valued.)
      */
-    SCALAR_NAME_AND_VALUE,
+    ATTRIBUTE_NAME_AND_VALUE,
     /**
      * The parameter form (dialog box) of an action.
      */
@@ -147,12 +146,10 @@ public enum UiComponentType {
      * acts as a fallback whenever a more suitable factory cannot be located.
      */
     UNKNOWN,
-
     /**
      * The header (navigation bar) of the page
      */
     HEADER,
-
     /**
      * The footer of the page
      */
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/actions/ActionParametersForm.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/actions/ActionParametersForm.java
index 2949b895074..599ae9943b6 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/actions/ActionParametersForm.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/actions/ActionParametersForm.java
@@ -93,8 +93,8 @@ extends PromptFormAbstract<ActionModel> {
 
         // returned ScalarPanelAbstract should already have added any 
associated LinkAndLabel(s)
         var component = getComponentFactoryRegistry()
-                .addOrReplaceComponent(container, 
ActionParametersFormPanel.ID_SCALAR_NAME_AND_VALUE,
-                        UiComponentType.SCALAR_NAME_AND_VALUE, 
scalarParamModel);
+                .addOrReplaceComponent(container, 
ActionParametersFormPanel.ID_ATTRIBUTE_NAME_AND_VALUE,
+                        UiComponentType.ATTRIBUTE_NAME_AND_VALUE, 
scalarParamModel);
 
         _Casts.castTo(AttributePanel.class, component)
         .ifPresent(scalarPanel->{
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/actions/ActionParametersFormPanel.html
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/actions/ActionParametersFormPanel.html
index a1582fafcc1..28aa8330e73 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/actions/ActionParametersFormPanel.html
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/actions/ActionParametersFormPanel.html
@@ -24,7 +24,7 @@
                 <form wicket:id="inputForm" method="post" 
class="form-horizontal actionParametersForm">
                     <fieldset class="inputFormTable parameters">
                         <div wicket:id="parameters" class="parameter">
-                          <div wicket:id="scalarNameAndValue">[scalar]</div>
+                          <div wicket:id="attributeNameAndValue">[parameter 
name and value(s)]</div>
                         </div>
                         <span wicket:id="feedback"></span>
                         <div class="buttons">
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
index b940460d684..34250d2b545 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/actions/ActionParametersFormPanel.java
@@ -38,7 +38,7 @@ extends PromptFormPanelAbstract<ManagedObject, ActionModel> {
 
     static final String ID_ACTION_PARAMETERS = "parameters";
     static final String ID_INPUT_FORM = "inputForm";
-    public static final String ID_SCALAR_NAME_AND_VALUE = "scalarNameAndValue";
+    public static final String ID_ATTRIBUTE_NAME_AND_VALUE = 
"attributeNameAndValue";
 
     public ActionParametersFormPanel(final String id, final ActionModel 
actionModel) {
         super(id, actionModel);
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/AttributeComponentFactoryAbstract.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/AttributeComponentFactory.java
similarity index 91%
rename from 
viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/AttributeComponentFactoryAbstract.java
rename to 
viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/AttributeComponentFactory.java
index 2b48ca61dc7..00a447e0525 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/AttributeComponentFactoryAbstract.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/AttributeComponentFactory.java
@@ -25,12 +25,12 @@ import 
org.apache.causeway.viewer.commons.model.components.UiComponentType;
 import org.apache.causeway.viewer.wicket.model.models.UiAttributeWkt;
 import org.apache.causeway.viewer.wicket.ui.ComponentFactoryAbstract;
 
-public abstract class AttributeComponentFactoryAbstract
+public abstract class AttributeComponentFactory
 extends ComponentFactoryAbstract {
 
-    protected AttributeComponentFactoryAbstract(
+    protected AttributeComponentFactory(
             final Class<?> componentClass) {
-        super(UiComponentType.SCALAR_NAME_AND_VALUE, componentClass);
+        super(UiComponentType.ATTRIBUTE_NAME_AND_VALUE, componentClass);
     }
 
     @Override
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/AttributeComponentFactoryTypeConstrainedAbstract.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/AttributeComponentFactoryWithTypeConstraint.java
similarity index 89%
rename from 
viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/AttributeComponentFactoryTypeConstrainedAbstract.java
rename to 
viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/AttributeComponentFactoryWithTypeConstraint.java
index 963cad5f97b..2083f4086d3 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/AttributeComponentFactoryTypeConstrainedAbstract.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/AttributeComponentFactoryWithTypeConstraint.java
@@ -23,8 +23,8 @@ import 
org.apache.causeway.viewer.wicket.model.models.UiAttributeWkt;
 
 import lombok.Getter;
 
-public abstract class AttributeComponentFactoryTypeConstrainedAbstract
-extends AttributeComponentFactoryAbstract {
+public abstract class AttributeComponentFactoryWithTypeConstraint
+extends AttributeComponentFactory {
 
     /**
      * Provides discrimination based on {@link 
UiAttributeWkt#isScalarTypeAnyOf(Can)}.
@@ -34,13 +34,13 @@ extends AttributeComponentFactoryAbstract {
     @Getter
     private final Can<Class<?>> scalarTypes;
 
-    protected AttributeComponentFactoryTypeConstrainedAbstract(
+    protected AttributeComponentFactoryWithTypeConstraint(
             final Class<?> componentClass,
             final Class<?> scalarType) {
         this(componentClass, Can.ofSingleton(scalarType));
     }
 
-    protected AttributeComponentFactoryTypeConstrainedAbstract(
+    protected AttributeComponentFactoryWithTypeConstraint(
             final Class<?> componentClass,
             final Can<Class<?>> scalarTypes) {
         super(componentClass);
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/blobclob/BlobAttributePanelFactory.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/blobclob/BlobAttributePanelFactory.java
index 37017baa4a1..41ba758ca82 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/blobclob/BlobAttributePanelFactory.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/blobclob/BlobAttributePanelFactory.java
@@ -22,12 +22,12 @@ import org.apache.wicket.Component;
 
 import org.apache.causeway.viewer.wicket.model.models.UiAttributeWkt;
 import org.apache.causeway.viewer.wicket.ui.ComponentFactory;
-import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryTypeConstrainedAbstract;
+import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryWithTypeConstraint;
 
 /**
  * {@link ComponentFactory} for {@link BlobAttributePanel}.
  */
-public class BlobAttributePanelFactory extends 
AttributeComponentFactoryTypeConstrainedAbstract {
+public class BlobAttributePanelFactory extends 
AttributeComponentFactoryWithTypeConstraint {
 
     public BlobAttributePanelFactory() {
         super(BlobAttributePanel.class, 
org.apache.causeway.applib.value.Blob.class);
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/blobclob/ClobAttributePanelFactory.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/blobclob/ClobAttributePanelFactory.java
index 38f2d011c93..db892461754 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/blobclob/ClobAttributePanelFactory.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/blobclob/ClobAttributePanelFactory.java
@@ -22,12 +22,12 @@ import org.apache.wicket.Component;
 
 import org.apache.causeway.viewer.wicket.model.models.UiAttributeWkt;
 import org.apache.causeway.viewer.wicket.ui.ComponentFactory;
-import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryTypeConstrainedAbstract;
+import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryWithTypeConstraint;
 
 /**
  * {@link ComponentFactory} for {@link BlobAttributePanel}.
  */
-public class ClobAttributePanelFactory extends 
AttributeComponentFactoryTypeConstrainedAbstract {
+public class ClobAttributePanelFactory extends 
AttributeComponentFactoryWithTypeConstraint {
 
     public ClobAttributePanelFactory() {
         super(ClobAttributePanel.class, 
org.apache.causeway.applib.value.Clob.class);
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/bool/BooleanAttributePanelFactory.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/bool/BooleanAttributePanelFactory.java
index 287a1d5d25e..9e74ce46a33 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/bool/BooleanAttributePanelFactory.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/bool/BooleanAttributePanelFactory.java
@@ -23,12 +23,12 @@ import org.apache.wicket.Component;
 import org.apache.causeway.commons.collections.Can;
 import org.apache.causeway.viewer.wicket.model.models.UiAttributeWkt;
 import org.apache.causeway.viewer.wicket.ui.ComponentFactory;
-import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryTypeConstrainedAbstract;
+import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryWithTypeConstraint;
 
 /**
  * {@link ComponentFactory} for {@link BooleanAttributePanel}.
  */
-public class BooleanAttributePanelFactory extends 
AttributeComponentFactoryTypeConstrainedAbstract {
+public class BooleanAttributePanelFactory extends 
AttributeComponentFactoryWithTypeConstraint {
 
     public BooleanAttributePanelFactory() {
         super(BooleanAttributePanel.class, Can.of(boolean.class, 
Boolean.class));
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/choices/ChoicesSelect2PanelFactory.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/choices/ChoicesSelect2PanelFactory.java
index 1e15ed74810..7cd8789a82d 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/choices/ChoicesSelect2PanelFactory.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/choices/ChoicesSelect2PanelFactory.java
@@ -20,11 +20,11 @@ package 
org.apache.causeway.viewer.wicket.ui.components.attributes.choices;
 
 import org.apache.causeway.commons.internal.exceptions._Exceptions;
 import org.apache.causeway.viewer.wicket.model.models.UiAttributeWkt;
-import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryAbstract;
+import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactory;
 import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributePanel;
 
 public class ChoicesSelect2PanelFactory
-extends AttributeComponentFactoryAbstract {
+extends AttributeComponentFactory {
 
     private static enum ComponentSort {
         TITLE_BADGE,
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/image/JavaAwtImagePanelFactory.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/image/JavaAwtImagePanelFactory.java
index a45d5c010d7..dd30a85dc62 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/image/JavaAwtImagePanelFactory.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/image/JavaAwtImagePanelFactory.java
@@ -23,10 +23,10 @@ import org.apache.wicket.Component;
 import org.apache.causeway.core.metamodel.util.Facets;
 import org.apache.causeway.core.metamodel.valuesemantics.ImageValueSemantics;
 import org.apache.causeway.viewer.wicket.model.models.UiAttributeWkt;
-import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryAbstract;
+import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactory;
 
 public class JavaAwtImagePanelFactory
-extends AttributeComponentFactoryAbstract {
+extends AttributeComponentFactory {
 
     public JavaAwtImagePanelFactory() {
         super(JavaAwtImagePanel.class);
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/markup/MarkupAttributePanelFactories.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/markup/MarkupAttributePanelFactories.java
index d4ccc4748c7..950f61026bc 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/markup/MarkupAttributePanelFactories.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/markup/MarkupAttributePanelFactories.java
@@ -30,7 +30,7 @@ import 
org.apache.causeway.viewer.wicket.model.models.UiAttributeWkt;
 import org.apache.causeway.viewer.wicket.model.models.ValueModel;
 import org.apache.causeway.viewer.wicket.ui.ComponentFactory;
 import org.apache.causeway.viewer.wicket.ui.ComponentFactoryAbstract;
-import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryTypeConstrainedAbstract;
+import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryWithTypeConstraint;
 
 /**
  * {@link ComponentFactory} for {@link MarkupAttributePanel}.
@@ -50,7 +50,7 @@ public class MarkupAttributePanelFactories {
     // -- PARENTED (ABSTRACT)
 
     public static abstract class ParentedAbstract<T extends Serializable>
-    extends AttributeComponentFactoryTypeConstrainedAbstract {
+    extends AttributeComponentFactoryWithTypeConstraint {
         private final Class<T> valueType;
 
         protected ParentedAbstract(final Class<T> valueType) {
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/passwd/PasswordAttributePanelFactory.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/passwd/PasswordAttributePanelFactory.java
index 6cfb8da9a3f..d647c146b53 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/passwd/PasswordAttributePanelFactory.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/passwd/PasswordAttributePanelFactory.java
@@ -22,12 +22,12 @@ import org.apache.wicket.Component;
 
 import org.apache.causeway.viewer.wicket.model.models.UiAttributeWkt;
 import org.apache.causeway.viewer.wicket.ui.ComponentFactory;
-import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryTypeConstrainedAbstract;
+import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryWithTypeConstraint;
 
 /**
  * {@link ComponentFactory} for {@link PasswordAttributePanel}.
  */
-public class PasswordAttributePanelFactory extends 
AttributeComponentFactoryTypeConstrainedAbstract {
+public class PasswordAttributePanelFactory extends 
AttributeComponentFactoryWithTypeConstraint {
 
     public PasswordAttributePanelFactory() {
         super(PasswordAttributePanel.class, 
org.apache.causeway.applib.value.Password.class);
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/string/StringAttributePanelFactory.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/string/StringAttributePanelFactory.java
index 3cce2164684..ae16b72a8b9 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/string/StringAttributePanelFactory.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/string/StringAttributePanelFactory.java
@@ -23,10 +23,10 @@ import 
org.apache.wicket.request.resource.CssResourceReference;
 
 import org.apache.causeway.core.metamodel.util.Facets;
 import org.apache.causeway.viewer.wicket.model.models.UiAttributeWkt;
-import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryTypeConstrainedAbstract;
+import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryWithTypeConstraint;
 import org.apache.causeway.viewer.wicket.ui.panels.PanelUtil;
 
-public class StringAttributePanelFactory extends 
AttributeComponentFactoryTypeConstrainedAbstract {
+public class StringAttributePanelFactory extends 
AttributeComponentFactoryWithTypeConstraint {
 
     public StringAttributePanelFactory() {
         super(StringAttributePanel.class, String.class);
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/value/ValueFallbackAttributePanelFactory.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/value/ValueFallbackAttributePanelFactory.java
index aa3e558b719..44f3a753c27 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/value/ValueFallbackAttributePanelFactory.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/value/ValueFallbackAttributePanelFactory.java
@@ -22,13 +22,13 @@ import org.apache.wicket.Component;
 
 import org.apache.causeway.viewer.wicket.model.models.UiAttributeWkt;
 import org.apache.causeway.viewer.wicket.ui.ComponentFactory;
-import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryAbstract;
+import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactory;
 
 /**
  * {@link ComponentFactory} for the {@link ValueFallbackAttributePanel}.
  */
 public class ValueFallbackAttributePanelFactory
-extends AttributeComponentFactoryAbstract {
+extends AttributeComponentFactory {
 
     public ValueFallbackAttributePanelFactory() {
         // not asking the super-type to validate types, so no value types need 
be provided.
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/SingularColumn.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/SingularColumn.java
index 2a33c9b7178..98b49c8134d 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/SingularColumn.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/collectioncontents/ajaxtable/columns/SingularColumn.java
@@ -59,7 +59,7 @@ extends AssociationColumnAbstract {
                         ViewOrEditMode.VIEWING,
                         collectionVariant.getColumnRenderingHint());
 
-        return findComponentFactory(UiComponentType.SCALAR_NAME_AND_VALUE, 
propertyModel)
+        return findComponentFactory(UiComponentType.ATTRIBUTE_NAME_AND_VALUE, 
propertyModel)
                 .createComponent(componentId, propertyModel);
     }
 
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/entity/fieldset/PropertyGroup.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/entity/fieldset/PropertyGroup.java
index 10f3808e9e0..12201b55dcd 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/entity/fieldset/PropertyGroup.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/entity/fieldset/PropertyGroup.java
@@ -187,7 +187,7 @@ public class PropertyGroup extends 
PanelAbstract<ManagedObject, UiObjectWkt> imp
                 entityModel.getPropertyModel(property, ViewOrEditMode.VIEWING, 
RenderingHint.REGULAR);
 
         final Component scalarNameAndValueComponent = 
getComponentFactoryRegistry()
-                .addOrReplaceComponent(container, ID_PROPERTY, 
UiComponentType.SCALAR_NAME_AND_VALUE, attributeModel);
+                .addOrReplaceComponent(container, ID_PROPERTY, 
UiComponentType.ATTRIBUTE_NAME_AND_VALUE, attributeModel);
 //XXX[CAUSEWAY-3026] this is a bad idea
 //        if(scalarNameAndValueComponent instanceof MarkupContainer) {
 //            Wkt.cssAppend(scalarNameAndValueComponent, 
attributeModel.getIdentifier());
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/property/PropertyEditForm.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/property/PropertyEditForm.java
index f2a145a0a20..ec5446936d7 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/property/PropertyEditForm.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/property/PropertyEditForm.java
@@ -52,7 +52,7 @@ extends PromptFormAbstract<PropertyModel> {
         var container = Wkt.containerAdd(this, 
PropertyEditFormPanel.ID_PROPERTY);
 
         var component = getComponentFactoryRegistry()
-                .addOrReplaceComponent(container, 
UiComponentType.SCALAR_NAME_AND_VALUE, propertyModel);
+                .addOrReplaceComponent(container, 
UiComponentType.ATTRIBUTE_NAME_AND_VALUE, propertyModel);
 
         _Casts.castTo(AttributePanel.class, component)
         .ifPresent(propertyModelSubscriber->
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/property/PropertyEditFormPanel.html
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/property/PropertyEditFormPanel.html
index f4e9f43b35c..fc9a7576c78 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/property/PropertyEditFormPanel.html
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/property/PropertyEditFormPanel.html
@@ -24,7 +24,7 @@
                 <form wicket:id="inputForm" method="post" 
class="form-horizontal propertyEditForm">
                     <fieldset class="inputFormTable parameters">
                         <div wicket:id="property" class="property">
-                          <div wicket:id="scalarNameAndValue">[scalar]</div>
+                          <div wicket:id="attributeNameAndValue">[property 
name and value]</div>
                         </div>
                         <span wicket:id="feedback"></span>
                         
diff --git 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/tree/TreePanelFactories.java
 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/tree/TreePanelFactories.java
index c2832ae385a..c51b9ec4477 100644
--- 
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/tree/TreePanelFactories.java
+++ 
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/tree/TreePanelFactories.java
@@ -26,7 +26,7 @@ import 
org.apache.causeway.viewer.wicket.model.models.UiAttributeWkt;
 import org.apache.causeway.viewer.wicket.model.models.ValueModel;
 import org.apache.causeway.viewer.wicket.ui.ComponentFactory;
 import org.apache.causeway.viewer.wicket.ui.ComponentFactoryAbstract;
-import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryAbstract;
+import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactory;
 
 /**
  * {@link ComponentFactory} for {@link TreeAttributePanel}.
@@ -35,7 +35,7 @@ public class TreePanelFactories {
 
     // -- PARENTED
 
-    static class Parented extends AttributeComponentFactoryAbstract {
+    static class Parented extends AttributeComponentFactory {
 
         public Parented() {
             super(TreeAttributePanel.class);
diff --git 
a/viewers/wicket/viewer/src/main/java/org/apache/causeway/viewer/wicket/viewer/registries/components/ComponentFactoryConfigWkt.java
 
b/viewers/wicket/viewer/src/main/java/org/apache/causeway/viewer/wicket/viewer/registries/components/ComponentFactoryConfigWkt.java
index 3f218012a11..6c340556dee 100644
--- 
a/viewers/wicket/viewer/src/main/java/org/apache/causeway/viewer/wicket/viewer/registries/components/ComponentFactoryConfigWkt.java
+++ 
b/viewers/wicket/viewer/src/main/java/org/apache/causeway/viewer/wicket/viewer/registries/components/ComponentFactoryConfigWkt.java
@@ -48,7 +48,7 @@ import 
org.apache.causeway.viewer.wicket.ui.components.actionlinks.serviceaction
 import 
org.apache.causeway.viewer.wicket.ui.components.actionlinks.serviceactions.TertiaryMenuPanelFactory;
 import 
org.apache.causeway.viewer.wicket.ui.components.actions.ActionParametersFormPanelFactory;
 import 
org.apache.causeway.viewer.wicket.ui.components.actions.ActionParametersPanelFactory;
-import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryTypeConstrainedAbstract;
+import 
org.apache.causeway.viewer.wicket.ui.components.attributes.AttributeComponentFactoryWithTypeConstraint;
 import 
org.apache.causeway.viewer.wicket.ui.components.attributes.NumericAttributePanel;
 import 
org.apache.causeway.viewer.wicket.ui.components.attributes.blobclob.BlobAttributePanelFactory;
 import 
org.apache.causeway.viewer.wicket.ui.components.attributes.blobclob.ClobAttributePanelFactory;
@@ -268,7 +268,7 @@ public class ComponentFactoryConfigWkt {
     // -- UTILTIY
 
     @SuppressWarnings({ "rawtypes", "unchecked" })
-    public static <T extends Serializable> 
AttributeComponentFactoryTypeConstrainedAbstract
+    public static <T extends Serializable> 
AttributeComponentFactoryWithTypeConstraint
     createForValueSemantics(final ValueSemanticsProvider<T> valueSemantics) {
 
         if(valueSemantics.isNumberType()) {
@@ -287,7 +287,7 @@ public class ComponentFactoryConfigWkt {
     }
 
     public static class ScalarPanelFactoryForTextField<T extends Serializable>
-    extends AttributeComponentFactoryTypeConstrainedAbstract {
+    extends AttributeComponentFactoryWithTypeConstraint {
 
         private final Class<T> valueTypeClass;
 
@@ -303,7 +303,7 @@ public class ComponentFactoryConfigWkt {
     }
 
     public static class ScalarPanelFactoryForNumberField<T extends 
Serializable>
-    extends AttributeComponentFactoryTypeConstrainedAbstract {
+    extends AttributeComponentFactoryWithTypeConstraint {
 
         private final Class<T> valueTypeClass;
 
@@ -319,7 +319,7 @@ public class ComponentFactoryConfigWkt {
     }
 
     public static class ScalarPanelFactoryForTemporalPicker<T extends 
Serializable & Temporal>
-    extends AttributeComponentFactoryTypeConstrainedAbstract {
+    extends AttributeComponentFactoryWithTypeConstraint {
 
         private final Class<T> valueTypeClass;
 
@@ -337,7 +337,7 @@ public class ComponentFactoryConfigWkt {
     }
 
     public static class ScalarPanelFactoryForCompositeValue<T extends 
Serializable>
-    extends AttributeComponentFactoryTypeConstrainedAbstract {
+    extends AttributeComponentFactoryWithTypeConstraint {
 
         private final Class<T> valueTypeClass;
 
@@ -363,7 +363,7 @@ public class ComponentFactoryConfigWkt {
 
         // collect those registered up to this point, so we don't override 
with generic ones at steps below
         var registeredScalarTypes =
-                
componentFactories.stream(AttributeComponentFactoryTypeConstrainedAbstract.class)
+                
componentFactories.stream(AttributeComponentFactoryWithTypeConstraint.class)
                 .flatMap(f->f.getScalarTypes().stream())
                 .collect(Collectors.toSet());
 


Reply via email to