1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 package info.magnolia.ui.vaadin.gwt.client.dialog.dialoglayout;
35
36 import info.magnolia.ui.vaadin.gwt.client.form.VForm;
37 import info.magnolia.ui.vaadin.gwt.client.form.VFormView;
38
39 import com.google.gwt.user.client.ui.SimplePanel;
40 import com.google.gwt.user.client.ui.Widget;
41
42
43
44
45 public class VAdaptingToFormDialogViewImpl extends SimplePanel implements VBaseDialogView {
46
47 private VForm form;
48
49 private Presenter presenter;
50
51 public VAdaptingToFormDialogViewImpl() {
52 setStyleName("dialog-panel");
53 }
54
55 @Override
56 public Widget asWidget() {
57 return this;
58 }
59
60 @Override
61 public void addAction(String name, String label) {
62 form.getView().addAction(name, label);
63 }
64
65 @Override
66 public void setDescription(String description) {
67 form.getView().setDescription(description);
68 }
69
70 @Override
71 public void setCaption(String caption) {
72 form.getView().setCaption(caption);
73 }
74
75 @Override
76 public int getContentWidth() {
77 return form.getView().getFormWidth();
78 }
79
80 @Override
81 public int getContentHeight() {
82 return form.getView().getFormHeight();
83 }
84
85 @Override
86 public void setContent(Widget contentWidget) {
87 if (contentWidget instanceof VForm) {
88 this.form = ((VForm)contentWidget);
89 this.form.getView().setPresenter(new VFormView.Presenter() {
90 @Override
91 public void fireAction(String action) {
92 presenter.fireAction(action);
93 }
94
95 @Override
96 public void runLayout() {
97
98 }
99 });
100 setWidget(contentWidget);
101 }
102 }
103
104 @Override
105 public Widget getContent() {
106 return getWidget();
107 }
108
109 @Override
110 public void setPresenter(final Presenter presenter) {
111 this.presenter = presenter;
112 if (form != null) {
113 form.getView().setPresenter(new VFormView.Presenter() {
114 @Override
115 public void fireAction(String action) {
116 presenter.fireAction(action);
117 }
118
119 @Override
120 public void runLayout() {
121 form.runLayout();
122 }
123 });
124 }
125 }
126
127 @Override
128 public void setActionLabel(String actionName, String label) {
129 }
130
131 @Override
132 public Presenter getPresenter() {
133 return presenter;
134 }
135
136 }