1 package de.orangecafe.amazonrcp.gui.forms;
2
3 import org.springframework.richclient.form.AbstractDetailForm;
4 import org.springframework.richclient.form.builder.TableFormBuilder;
5 import org.springframework.binding.form.HierarchicalFormModel;
6 import org.springframework.binding.value.ValueModel;
7 import org.springframework.binding.value.support.ObservableList;
8
9 import javax.swing.*;
10
11
12
13
14 public class SearchResultDetailForm extends AbstractDetailForm {
15 public SearchResultDetailForm(final HierarchicalFormModel hierarchicalFormModel, final String formId, final ValueModel valueModel, final ObservableList observableList) {
16 super(hierarchicalFormModel, formId, valueModel, observableList);
17 }
18
19 protected JComponent createFormControl() {
20 JSplitPane splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
21
22 splitPane.setLeftComponent(createLeftPane());
23 splitPane.setRightComponent(createRightPane());
24
25 splitPane.setDividerLocation(((int) (getActiveWindow().getControl().getWidth() * 0.7)));
26
27 return splitPane;
28 }
29
30 @Override
31 public void reset() {
32
33
34
35 }
36
37 private JComponent createLeftPane() {
38 TableFormBuilder formBuilder = new TableFormBuilder(getBindingFactory());
39
40 formBuilder.add("itemAttributes.title");
41 formBuilder.row();
42 formBuilder.add("itemAttributes.author");
43 formBuilder.row();
44 formBuilder.add("itemAttributes.ISBN");
45 formBuilder.row();
46 formBuilder.add("itemAttributes.numberOfPages");
47 formBuilder.row();
48 formBuilder.add("offerSummary.lowestNewPrice");
49 formBuilder.row();
50 formBuilder.add("itemAttributes.publicationDate");
51 formBuilder.row();
52 formBuilder.add("itemAttributes.publisher");
53 formBuilder.row();
54 formBuilder.add("detailPageURL");
55
56
57
58
59 return getComponentFactory().createScrollPane(formBuilder.getForm());
60 }
61
62 private JComponent createRightPane() {
63 TableFormBuilder formBuilder = new TableFormBuilder(getBindingFactory());
64
65 formBuilder.getLayoutBuilder().cell(getBindingFactory().createBinding(com.amazon.webservices.awsecommerceservice._2007_04_04.Image.class, "mediumImage").getControl());
66
67
68 return formBuilder.getForm();
69 }
70 }