]> git.argeo.org Git - gpl/argeo-jcr.git/blob - swt/org.argeo.cms.jcr.ui/src/org/argeo/cms/ui/internal/SimpleEditableImage.java
Merge tag 'v2.3.18' into testing
[gpl/argeo-jcr.git] / swt / org.argeo.cms.jcr.ui / src / org / argeo / cms / ui / internal / SimpleEditableImage.java
1 package org.argeo.cms.ui.internal;
2
3 import javax.jcr.RepositoryException;
4
5 import org.argeo.api.cms.ux.Cms2DSize;
6 import org.argeo.cms.swt.CmsSwtUtils;
7 import org.argeo.cms.ui.util.CmsUiUtils;
8 import org.argeo.cms.ui.widgets.EditableImage;
9 import org.argeo.cms.ux.AbstractImageManager;
10 import org.argeo.cms.ux.CmsUxUtils;
11 import org.eclipse.swt.widgets.Composite;
12 import org.eclipse.swt.widgets.Control;
13 import org.eclipse.swt.widgets.Text;
14
15 /** NOT working yet. */
16 public class SimpleEditableImage extends EditableImage {
17 private static final long serialVersionUID = -5689145523114022890L;
18
19 private String src;
20 private Cms2DSize imageSize;
21
22 public SimpleEditableImage(Composite parent, int swtStyle) {
23 super(parent, swtStyle);
24 // load(getControl());
25 getParent().layout();
26 }
27
28 public SimpleEditableImage(Composite parent, int swtStyle, String src, Cms2DSize imageSize) {
29 super(parent, swtStyle);
30 this.src = src;
31 this.imageSize = imageSize;
32 }
33
34 @Override
35 protected Control createControl(Composite box, String style) {
36 if (isEditing()) {
37 return createText(box, style);
38 } else {
39 return createLabel(box, style);
40 }
41 }
42
43 protected String createImgTag() throws RepositoryException {
44 String imgTag;
45 if (src != null)
46 imgTag = CmsUxUtils.img(src, imageSize);
47 else
48 imgTag = CmsUiUtils.noImg(imageSize != null ? imageSize : AbstractImageManager.NO_IMAGE_SIZE);
49 return imgTag;
50 }
51
52 protected Text createText(Composite box, String style) {
53 Text text = new Text(box, getStyle());
54 CmsSwtUtils.style(text, style);
55 return text;
56 }
57
58 public String getSrc() {
59 return src;
60 }
61
62 public void setSrc(String src) {
63 this.src = src;
64 }
65
66 public Cms2DSize getImageSize() {
67 return imageSize;
68 }
69
70 public void setImageSize(Cms2DSize imageSize) {
71 this.imageSize = imageSize;
72 }
73
74 }