indvdum@1
|
1 |
package ru.indvdum.mywork.vaadin;
|
indvdum@1
|
2 |
|
indvdum@5
|
3 |
import static ru.indvdum.mywork.MyWork.EM;
|
indvdum@5
|
4 |
|
indvdum@5
|
5 |
import java.util.List;
|
indvdum@5
|
6 |
|
indvdum@5
|
7 |
import javax.persistence.Query;
|
indvdum@5
|
8 |
|
indvdum@5
|
9 |
import ru.indvdum.mywork.openjpa.model.Day;
|
indvdum@7
|
10 |
import ru.indvdum.mywork.openjpa.model.Task;
|
indvdum@7
|
11 |
import ru.indvdum.mywork.openjpa.model.Work;
|
indvdum@2
|
12 |
|
indvdum@1
|
13 |
import com.vaadin.Application;
|
indvdum@6
|
14 |
import com.vaadin.addon.jpacontainer.JPAContainer;
|
indvdum@6
|
15 |
import com.vaadin.addon.jpacontainer.provider.LocalEntityProvider;
|
indvdum@7
|
16 |
import com.vaadin.ui.Alignment;
|
indvdum@7
|
17 |
import com.vaadin.ui.Button;
|
indvdum@7
|
18 |
import com.vaadin.ui.HorizontalLayout;
|
indvdum@7
|
19 |
import com.vaadin.ui.TabSheet;
|
indvdum@6
|
20 |
import com.vaadin.ui.Table;
|
indvdum@6
|
21 |
import com.vaadin.ui.VerticalLayout;
|
indvdum@1
|
22 |
import com.vaadin.ui.Window;
|
indvdum@7
|
23 |
import com.vaadin.ui.Button.ClickEvent;
|
indvdum@7
|
24 |
import com.vaadin.ui.Button.ClickListener;
|
indvdum@1
|
25 |
|
indvdum@1
|
26 |
/**
|
indvdum@1
|
27 |
* @author indvdum
|
indvdum@5
|
28 |
* 12.08.2011 17:31:53
|
indvdum@1
|
29 |
*
|
indvdum@1
|
30 |
*/
|
indvdum@1
|
31 |
public class MyWorkApplication extends Application {
|
indvdum@1
|
32 |
|
indvdum@1
|
33 |
@Override
|
indvdum@1
|
34 |
public void init() {
|
indvdum@1
|
35 |
Window window = new Window();
|
indvdum@1
|
36 |
setMainWindow(window);
|
indvdum@6
|
37 |
|
indvdum@7
|
38 |
TabSheet tabSheet = new TabSheet();
|
indvdum@7
|
39 |
tabSheet.setSizeFull();
|
indvdum@7
|
40 |
window.setContent(tabSheet);
|
indvdum@7
|
41 |
|
indvdum@7
|
42 |
VerticalLayout vlMain = new VerticalLayout();
|
indvdum@8
|
43 |
vlMain.setSizeFull();
|
indvdum@7
|
44 |
vlMain.setMargin(true);
|
indvdum@7
|
45 |
vlMain.setSpacing(true);
|
indvdum@7
|
46 |
tabSheet.addTab(vlMain, "Main page", null);
|
indvdum@7
|
47 |
|
indvdum@7
|
48 |
LocalEntityProvider dayProvider = new LocalEntityProvider(Day.class);
|
indvdum@7
|
49 |
dayProvider.setEntityManager(EM);
|
indvdum@7
|
50 |
JPAContainer<Day> dayContainer = new JPAContainer(Day.class);
|
indvdum@7
|
51 |
dayContainer.setEntityProvider(dayProvider);
|
indvdum@7
|
52 |
|
indvdum@8
|
53 |
Table dayTable = new Table();
|
indvdum@7
|
54 |
dayTable.setSelectable(true);
|
indvdum@7
|
55 |
dayTable.setEditable(false);
|
indvdum@7
|
56 |
dayTable.setImmediate(true);
|
indvdum@7
|
57 |
dayTable.setSizeFull();
|
indvdum@7
|
58 |
dayTable.setContainerDataSource(dayContainer);
|
indvdum@8
|
59 |
dayTable.setVisibleColumns(new String[]{
|
indvdum@8
|
60 |
"day",
|
indvdum@8
|
61 |
"startWork",
|
indvdum@8
|
62 |
"endWork",
|
indvdum@8
|
63 |
"hours",
|
indvdum@8
|
64 |
});
|
indvdum@7
|
65 |
vlMain.addComponent(dayTable);
|
indvdum@7
|
66 |
vlMain.setExpandRatio(dayTable, 1f);
|
indvdum@7
|
67 |
|
indvdum@7
|
68 |
LocalEntityProvider taskProvider = new LocalEntityProvider(Task.class);
|
indvdum@7
|
69 |
taskProvider.setEntityManager(EM);
|
indvdum@7
|
70 |
JPAContainer<Task> taskContainer = new JPAContainer(Task.class);
|
indvdum@7
|
71 |
taskContainer.setEntityProvider(taskProvider);
|
indvdum@7
|
72 |
|
indvdum@7
|
73 |
Table taskTable = new Table();
|
indvdum@7
|
74 |
taskTable.setSelectable(true);
|
indvdum@7
|
75 |
taskTable.setEditable(false);
|
indvdum@7
|
76 |
taskTable.setImmediate(true);
|
indvdum@7
|
77 |
taskTable.setSizeFull();
|
indvdum@7
|
78 |
taskTable.setContainerDataSource(taskContainer);
|
indvdum@8
|
79 |
taskTable.setVisibleColumns(new String[]{
|
indvdum@8
|
80 |
"name",
|
indvdum@8
|
81 |
"description",
|
indvdum@8
|
82 |
});
|
indvdum@8
|
83 |
taskTable.setColumnWidth("description", 300);
|
indvdum@7
|
84 |
vlMain.addComponent(taskTable);
|
indvdum@7
|
85 |
vlMain.setExpandRatio(taskTable, 1f);
|
indvdum@8
|
86 |
|
indvdum@8
|
87 |
LocalEntityProvider workProvider = new LocalEntityProvider(Work.class);
|
indvdum@8
|
88 |
workProvider.setEntityManager(EM);
|
indvdum@8
|
89 |
JPAContainer<Task> workContainer = new JPAContainer(Work.class);
|
indvdum@8
|
90 |
workContainer.setEntityProvider(workProvider);
|
indvdum@8
|
91 |
|
indvdum@8
|
92 |
Table workTable = new Table();
|
indvdum@8
|
93 |
workTable.setSelectable(true);
|
indvdum@8
|
94 |
workTable.setEditable(false);
|
indvdum@8
|
95 |
workTable.setImmediate(true);
|
indvdum@8
|
96 |
workTable.setSizeFull();
|
indvdum@8
|
97 |
workTable.setContainerDataSource(workContainer);
|
indvdum@8
|
98 |
workTable.setVisibleColumns(new String[]{
|
indvdum@8
|
99 |
"dayName",
|
indvdum@8
|
100 |
"taskName",
|
indvdum@8
|
101 |
"hours",
|
indvdum@8
|
102 |
"result",
|
indvdum@8
|
103 |
});
|
indvdum@8
|
104 |
workTable.setColumnWidth("result", 200);
|
indvdum@8
|
105 |
vlMain.addComponent(workTable);
|
indvdum@8
|
106 |
vlMain.setExpandRatio(workTable, 1f);
|
indvdum@1
|
107 |
}
|
indvdum@1
|
108 |
}
|