This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/causeway.git
The following commit(s) were added to refs/heads/master by this push:
new c9949ba309 CAUSEWAY-3356: JavaAwtImagePanel fixes and CSS improvements
c9949ba309 is described below
commit c9949ba309916e049474261cf438b6186d02d4cd
Author: Andi Huber <[email protected]>
AuthorDate: Thu Feb 9 12:11:03 2023 +0100
CAUSEWAY-3356: JavaAwtImagePanel fixes and CSS improvements
---
.../scalars/image/JavaAwtImagePanel.css} | 14 +++----
.../scalars/image/JavaAwtImagePanel.java | 25 ++++++------
.../JavaAwtImagePanelCssResourceReference.java | 44 +++++++++++++++++++++
...ImagePanel.html => JavaAwtImagePanel_LEFT.html} | 2 +-
...ImagePanel.html => JavaAwtImagePanel_NONE.html} | 10 ++---
...magePanel.html => JavaAwtImagePanel_RIGHT.html} | 6 +--
...tImagePanel.html => JavaAwtImagePanel_TOP.html} | 9 +++--
.../{WicketImageUtil.java => _WktImageUtil.java} | 2 +-
.../components/scalars/image/wupb-progressBar.css | 44 ---------------------
.../viewer/wicket/ui/pages/PageAbstract.java | 2 +
.../wicket/ui/pages/images/bg_header_brown.png | Bin 13866 -> 0 bytes
.../viewer/wicket/ui/pages/images/icon_appuser.png | Bin 365 -> 0 bytes
.../viewer/wicket/ui/pages/images/logo.pdn | Bin 7403 -> 0 bytes
.../viewer/wicket/ui/pages/images/logo.png | Bin 1562 -> 0 bytes
.../viewer/wicket/ui/util/WktHeaderItems.java | 10 +++++
15 files changed, 88 insertions(+), 80 deletions(-)
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/HeaderContributorProvider.java
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.css
similarity index 78%
rename from
viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/HeaderContributorProvider.java
rename to
viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.css
index 5946d61dc6..9992f8c135 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/HeaderContributorProvider.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.css
@@ -16,12 +16,10 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.causeway.viewer.wicket.ui;
-
-import org.apache.wicket.markup.html.IHeaderContributor;
-
-// TODO unused. Remove ?!
-public interface HeaderContributorProvider {
-
- IHeaderContributor getHeaderContributor();
+
+ /* give BufferedImage(s) some space */
+.javaAwtImagePanel.image img {
+ margin: 4px;
+ padding: 4px;
+ border: 1px solid #00000018;
}
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.java
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.java
index b75cf11d6b..1cdb6cac35 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.java
@@ -20,10 +20,10 @@ package
org.apache.causeway.viewer.wicket.ui.components.scalars.image;
import org.apache.wicket.feedback.ComponentFeedbackMessageFilter;
import org.apache.wicket.markup.html.basic.Label;
-import org.apache.wicket.model.Model;
-import org.apache.causeway.commons.internal.base._Strings;
+import org.apache.causeway.applib.annotation.LabelPosition;
import org.apache.causeway.core.metamodel.object.ManagedObject;
+import org.apache.causeway.core.metamodel.util.Facets;
import
org.apache.causeway.viewer.commons.model.decorators.FormLabelDecorator.FormLabelDecorationModel;
import org.apache.causeway.viewer.wicket.model.models.ScalarModel;
import
org.apache.causeway.viewer.wicket.ui.components.scalars.ScalarPanelAbstract;
@@ -54,7 +54,7 @@ extends PanelAbstract<ManagedObject, ScalarModel> {
Wkt.add(this, createScalarNameLabel(ID_SCALAR_NAME));
- val wicketImage = WicketImageUtil.asWicketImage(ID_SCALAR_VALUE,
scalarModel())
+ val wicketImage = _WktImageUtil.asWicketImage(ID_SCALAR_VALUE,
scalarModel())
.orElse(null);
if(wicketImage != null) {
addOrReplace(wicketImage);
@@ -67,20 +67,21 @@ extends PanelAbstract<ManagedObject, ScalarModel> {
} else {
WktComponents.permanentlyHide(this, ID_SCALAR_VALUE, ID_FEEDBACK);
}
+ }
+ @Override
+ public String getVariation() {
+ val scalarModel = scalarModel();
+ return Facets.labelAt(scalarModel.getMetaModel())
+ .map(LabelPosition::name)
+ .orElse(LabelPosition.LEFT.name());
}
- /** copied over from {@link ScalarPanelAbstract} */
+ /** see also {@link ScalarPanelAbstract} */
protected Label createScalarNameLabel(final String id) {
- val labelCaption = Model.of(scalarModel().getFriendlyName());
-
- final Label scalarNameLabel = Wkt.label(id, labelCaption);
- if(_Strings.isNullOrEmpty(labelCaption.getObject())) {
- return scalarNameLabel;
- }
-
val scalarModel = scalarModel();
+ val scalarNameLabel = Wkt.label(id, scalarModel.getFriendlyName());
WktDecorators.getFormLabel()
.decorate(scalarNameLabel, FormLabelDecorationModel
@@ -88,7 +89,7 @@ extends PanelAbstract<ManagedObject, ScalarModel> {
&& scalarModel.isEnabled()));
scalarModel.getDescribedAs()
- .ifPresent(describedAs->WktTooltips.addTooltip(scalarNameLabel,
describedAs));
+ .ifPresent(describedAs->WktTooltips.addTooltip(scalarNameLabel,
describedAs));
return scalarNameLabel;
}
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanelCssResourceReference.java
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanelCssResourceReference.java
new file mode 100644
index 0000000000..8a60bdb9bf
--- /dev/null
+++
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanelCssResourceReference.java
@@ -0,0 +1,44 @@
+/*
+ * 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 agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.causeway.viewer.wicket.ui.components.scalars.image;
+
+import org.apache.wicket.markup.head.CssHeaderItem;
+import org.apache.wicket.request.resource.CssResourceReference;
+
+import lombok.Getter;
+import lombok.experimental.Accessors;
+
+public class JavaAwtImagePanelCssResourceReference extends
CssResourceReference {
+ private static final long serialVersionUID = 1L;
+
+ @Getter(lazy = true) @Accessors(fluent = true)
+ private static final JavaAwtImagePanelCssResourceReference instance =
+ new JavaAwtImagePanelCssResourceReference();
+
+ public static CssHeaderItem asHeaderItem() {
+ return
CssHeaderItem.forReference(JavaAwtImagePanelCssResourceReference.instance());
+ }
+
+ /**
+ * Private constructor.
+ */
+ private JavaAwtImagePanelCssResourceReference() {
+ super(JavaAwtImagePanelCssResourceReference.class,
"JavaAwtImagePanel.css");
+ }
+}
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.html
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel_LEFT.html
similarity index 98%
copy from
viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.html
copy to
viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel_LEFT.html
index 0c0343d695..644c980986 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.html
+++
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel_LEFT.html
@@ -21,7 +21,7 @@
<body>
<wicket:panel>
<div class="javaAwtImagePanel image scalarPanel">
- <label >
+ <label>
<span wicket:id="scalarName"
class="scalarName">[Label text]</span>
<span class="scalarValue">
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.html
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel_NONE.html
similarity index 79%
copy from
viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.html
copy to
viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel_NONE.html
index 0c0343d695..d6e729544a 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.html
+++
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel_NONE.html
@@ -21,13 +21,9 @@
<body>
<wicket:panel>
<div class="javaAwtImagePanel image scalarPanel">
- <label >
- <span wicket:id="scalarName"
- class="scalarName">[Label text]</span>
- <span class="scalarValue">
- <img wicket:id="scalarValue"/>
- </span>
- </label>
+ <span class="scalarValue">
+ <img wicket:id="scalarValue"/>
+ </span>
<span wicket:id="feedback"></span>
</div>
</wicket:panel>
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.html
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel_RIGHT.html
similarity index 98%
copy from
viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.html
copy to
viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel_RIGHT.html
index 0c0343d695..0880b252fa 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.html
+++
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel_RIGHT.html
@@ -21,12 +21,12 @@
<body>
<wicket:panel>
<div class="javaAwtImagePanel image scalarPanel">
- <label >
- <span wicket:id="scalarName"
- class="scalarName">[Label text]</span>
+ <label>
<span class="scalarValue">
<img wicket:id="scalarValue"/>
</span>
+ <span wicket:id="scalarName"
+ class="scalarName">[Label text]</span>
</label>
<span wicket:id="feedback"></span>
</div>
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.html
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel_TOP.html
similarity index 88%
rename from
viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.html
rename to
viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel_TOP.html
index 0c0343d695..0ee55ba281 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel.html
+++
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/JavaAwtImagePanel_TOP.html
@@ -21,13 +21,14 @@
<body>
<wicket:panel>
<div class="javaAwtImagePanel image scalarPanel">
- <label >
+ <label>
<span wicket:id="scalarName"
class="scalarName">[Label text]</span>
- <span class="scalarValue">
- <img wicket:id="scalarValue"/>
- </span>
</label>
+ <br/>
+ <span class="scalarValue">
+ <img wicket:id="scalarValue"/>
+ </span>
<span wicket:id="feedback"></span>
</div>
</wicket:panel>
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/WicketImageUtil.java
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/_WktImageUtil.java
similarity index 99%
rename from
viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/WicketImageUtil.java
rename to
viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/_WktImageUtil.java
index db6312da7c..7ba6440a6e 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/WicketImageUtil.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/_WktImageUtil.java
@@ -40,7 +40,7 @@ import lombok.val;
import lombok.experimental.UtilityClass;
@UtilityClass
-public class WicketImageUtil {
+class _WktImageUtil {
public Optional<Image> asWicketImage(
final @NonNull String id,
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/wupb-progressBar.css
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/wupb-progressBar.css
deleted file mode 100644
index a9c862fd92..0000000000
---
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/scalars/image/wupb-progressBar.css
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * 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 agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-/* PROGRESS BAR */
-
- div.wupb-uploadStatus {
- margin: 5px;
- color: #aaa;
- }
-
- div.wupb-progressBar {
- margin: 5px;
- }
-
- div.wupb-progressBar .wupb-border {
- background:
url("../org.apache.causeway.viewer.wicket.ui.components.scalars.image.JavaAwtImagePanel/progress-remainder.gif")
repeat-x;
- background-color: #eee;
- border-left: 1px solid grey;
- border-right: 1px solid grey;
- width: 100%;
- }
-
- div.wupb-progressBar .wupb-background {
- background:
url("../org.apache.causeway.viewer.wicket.ui.components.scalars.image.JavaAwtImagePanel/progress-bar.gif")
repeat-x;
- background-color: #507090;
- height: 18px;
- width: 0%;
- }
-/* END PROGRESS BAR */
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/PageAbstract.java
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/PageAbstract.java
index 0d6d916186..1e9f356045 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/PageAbstract.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/PageAbstract.java
@@ -66,6 +66,7 @@ import
org.apache.causeway.viewer.wicket.ui.app.registry.ComponentFactoryRegistr
import
org.apache.causeway.viewer.wicket.ui.app.registry.HasComponentFactoryRegistry;
import
org.apache.causeway.viewer.wicket.ui.components.actionprompt.ActionPromptModalWindow;
import
org.apache.causeway.viewer.wicket.ui.components.actionpromptsb.ActionPromptSidebar;
+import
org.apache.causeway.viewer.wicket.ui.components.scalars.image.JavaAwtImagePanelCssResourceReference;
import
org.apache.causeway.viewer.wicket.ui.components.widgets.breadcrumbs.BreadcrumbModel;
import
org.apache.causeway.viewer.wicket.ui.components.widgets.breadcrumbs.BreadcrumbModelProvider;
import org.apache.causeway.viewer.wicket.ui.errors.ExceptionModel;
@@ -243,6 +244,7 @@ implements ActionPromptProvider {
.contributeThemeSpecificOverrides(getApplication(), response);
response.render(SidebarCssResourceReference.asHeaderItem());
+ response.render(JavaAwtImagePanelCssResourceReference.asHeaderItem());
response.render(LiveQueryJsResourceReference.asHeaderItem());
response.render(CausewayWicketViewerJsResourceReference.asHeaderItem());
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/images/bg_header_brown.png
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/images/bg_header_brown.png
deleted file mode 100644
index 402a311324..0000000000
Binary files
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/images/bg_header_brown.png
and /dev/null differ
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/images/icon_appuser.png
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/images/icon_appuser.png
deleted file mode 100644
index cdf4f49cbc..0000000000
Binary files
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/images/icon_appuser.png
and /dev/null differ
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/images/logo.pdn
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/images/logo.pdn
deleted file mode 100644
index 4d7e16926d..0000000000
Binary files
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/images/logo.pdn
and /dev/null differ
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/images/logo.png
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/images/logo.png
deleted file mode 100644
index ed41531e05..0000000000
Binary files
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/pages/images/logo.png
and /dev/null differ
diff --git
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/util/WktHeaderItems.java
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/util/WktHeaderItems.java
index 8952d608c0..4ecdf6b667 100644
---
a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/util/WktHeaderItems.java
+++
b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/util/WktHeaderItems.java
@@ -21,11 +21,14 @@ package org.apache.causeway.viewer.wicket.ui.util;
import java.nio.charset.StandardCharsets;
import java.util.stream.Collectors;
+import org.apache.wicket.markup.head.CssHeaderItem;
+import org.apache.wicket.markup.head.CssReferenceHeaderItem;
import org.apache.wicket.markup.head.HeaderItem;
import org.apache.wicket.markup.head.IHeaderResponse;
import org.apache.wicket.markup.head.JavaScriptReferenceHeaderItem;
import org.apache.wicket.markup.head.OnDomReadyHeaderItem;
import org.apache.wicket.markup.html.IHeaderContributor;
+import org.apache.wicket.request.resource.CssResourceReference;
import org.apache.wicket.request.resource.JavaScriptResourceReference;
import org.apache.causeway.commons.internal.base._Strings;
@@ -61,6 +64,13 @@ public class WktHeaderItems {
new JavaScriptResourceReference(resourceLocation,
resourceName));
}
+ public CssReferenceHeaderItem forCssReference(
+ final @NonNull Class<?> resourceLocation,
+ final @NonNull String resourceName) {
+ return CssHeaderItem.forReference(
+ new CssResourceReference(resourceLocation, resourceName));
+ }
+
@RequiredArgsConstructor
public class HeaderContributor
implements IHeaderContributor {