1 /**
2 * Copyright 2010 The Kuali Foundation Licensed under the
3 * Educational Community License, Version 2.0 (the "License"); you may
4 * not use this file except in compliance with the License. You may
5 * obtain a copy of the License at
6 *
7 * http://www.osedu.org/licenses/ECL-2.0
8 *
9 * Unless required by applicable law or agreed to in writing,
10 * software distributed under the License is distributed on an "AS IS"
11 * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
12 * or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15
16 package org.kuali.student.common.ui.client;
17
18 import java.util.ArrayList;
19 import java.util.List;
20
21 import org.kuali.student.common.ui.client.widgets.ApplicationPanel;
22 import org.kuali.student.common.ui.client.widgets.KSButton;
23 import org.kuali.student.common.ui.client.widgets.headers.KSHeader;
24 import org.kuali.student.common.ui.client.widgets.table.SimpleWidgetTable;
25
26 import com.google.gwt.core.client.EntryPoint;
27 import com.google.gwt.event.dom.client.ClickEvent;
28 import com.google.gwt.event.dom.client.ClickHandler;
29 import com.google.gwt.user.client.ui.AbsolutePanel;
30 import com.google.gwt.user.client.ui.Composite;
31 import com.google.gwt.user.client.ui.HTML;
32 import com.google.gwt.user.client.ui.HorizontalPanel;
33 import com.google.gwt.user.client.ui.Label;
34 import com.google.gwt.user.client.ui.RootPanel;
35 import com.google.gwt.user.client.ui.VerticalPanel;
36 import com.google.gwt.user.client.ui.Widget;
37
38 public class CommonUITest implements EntryPoint {
39
40 @Override
41 public void onModuleLoad() {
42 final AbsolutePanel panel = ApplicationPanel.get();
43
44 //panel.add(new TableDemoPanel());
45 //panel.add(new KSLightBoxDemo());
46 // panel.add(new HeaderDemo());
47 KSHeader ksHeader = new KSHeader();
48 panel.add(ksHeader);
49 /*
50 panel.add(new Button("Test Notifications", new ClickHandler() {
51 @Override
52 public void onClick(final ClickEvent event) {
53 KSNotifier.add(new KSNotification("Thisisalongmessagethatwillneedtowordwrapbutnotallofitisverywordwrapfriendlyasyoucanplainlysee", false, 10000));
54 new Timer() {
55
56 @Override
57 public void run() {
58 KSNotifier.add(new KSNotification("Short message <a href='http://xkcd.com/' target='_blank'>with html</a>", true, 10000));
59 new Timer() {
60
61 @Override
62 public void run() {
63 KSNotifier.add(new KSNotification(new Image("images/common/KS_logo_white_transparent.png"), 10000));
64 }
65 }.schedule(5000);
66 }
67 }.schedule(5000);
68 }
69 }));
70
71 // flood out the body to test scrolling
72 for (int i=0; i<500; i++) {
73 panel.add(new Label("label " + i));
74 }
75 */
76 }
77
78 public static class TestLightboxContent extends Composite {
79 final VerticalPanel panel = new VerticalPanel();
80 final HorizontalPanel buttonPanel = new HorizontalPanel();
81 final HorizontalPanel horizontalContent = new HorizontalPanel();
82 final VerticalPanel verticalContent = new VerticalPanel();
83
84 public TestLightboxContent() {
85 super.initWidget(panel);
86 panel.add(buttonPanel);
87 panel.add(horizontalContent);
88 panel.add(verticalContent);
89
90 for (int i=0; i<50; i++) {
91 horizontalContent.add(new HTML("<div style='padding-left: 1em'>item " + i + "</div>"));
92 verticalContent.add(new Label("item " + i));
93 }
94
95 buttonPanel.add(new KSButton("horizontal", new ClickHandler() {
96 @Override
97 public void onClick(ClickEvent event) {
98 for (int i=0; i<10; i++) {
99 horizontalContent.add(new HTML("<div style='padding-left: 1em'>item " + i + "</div>"));
100 }
101 }
102 }));
103
104 buttonPanel.add(new KSButton("vertical", new ClickHandler() {
105 @Override
106 public void onClick(ClickEvent event) {
107 for (int i=0; i<10; i++) {
108 verticalContent.add(new Label("item " + i));
109 }
110 }
111 }));
112
113 }
114 }
115
116 public void onModuleLoad_Original() {
117 /*final ClickHandler handler = new ClickHandler(){
118
119 @Override
120 public void onClick(ClickEvent event) {
121 // TODO Auto-generated method stub
122
123 }};
124
125 KSWrapper wrapper = new KSWrapper();
126 StylishDropDown dropDown = new StylishDropDown("Navigation", Theme.INSTANCE.getCommonImages().getWarningIcon(), MenuImageLocation.RIGHT);
127 dropDown.addStyleName("KS-Navigation-DropDown");
128 dropDown.setShowSelectedItem(true);
129 List<KSMenuItemData> items = new ArrayList<KSMenuItemData>();
130 items.add(new KSMenuItemData("Curriculum Management"){{setClickHandler(handler); setShownIcon(Theme.INSTANCE.getCommonImages().getOkIcon());}});
131 items.add(new KSMenuItemData("Organizations"));
132 items.add(new KSMenuItemData("Rice"));
133 dropDown.setArrowImage(Theme.INSTANCE.getCommonImages().getDropDownIconWhite());
134 dropDown.setItems(items);
135
136 StylishDropDown dropDown2 = new StylishDropDown("Propose New Curriculum", Theme.INSTANCE.getCommonImages().getWarningIcon(), MenuImageLocation.LEFT);
137 dropDown2.addStyleName("KS-LPNavigation-DropDown");
138 dropDown2.setShowSelectedItem(false);
139 List<KSMenuItemData> proposeItems = new ArrayList<KSMenuItemData>();
140 proposeItems.add(new KSMenuItemData("Courses"){{
141 addSubItem(new KSMenuItemData("Academic Course", handler));
142 addSubItem(new KSMenuItemData("Non Academic Course", handler));
143 }});
144 proposeItems.add(new KSMenuItemData("Programs"){{
145 addSubItem(new KSMenuItemData("Undergraduate"){{
146 addSubItem(new KSMenuItemData("Associate Degree", handler));
147 addSubItem(new KSMenuItemData("Baccalaureate Degree Major", handler));
148 addSubItem(new KSMenuItemData("Baccalaureate Degree Minor", handler));
149 addSubItem(new KSMenuItemData("Undergraduate Certificate", handler));
150 }});
151 addSubItem(new KSMenuItemData("Graduate"){{
152 addSubItem(new KSMenuItemData("Graduate Certificate", handler));
153 addSubItem(new KSMenuItemData("Masters Degree", handler));
154 addSubItem(new KSMenuItemData("Doctoral Degree", handler));
155 }});
156 addSubItem(new KSMenuItemData("Professional"){{
157 addSubItem(new KSMenuItemData("Professional Degree", handler));
158 addSubItem(new KSMenuItemData("Professional Certificate", handler));
159 }});
160 }});
161
162 proposeItems.add(new KSMenuItemData("Experiential Learning"){{
163 addSubItem(new KSMenuItemData("Externship", handler));
164 addSubItem(new KSMenuItemData("Internship", handler));
165 addSubItem(new KSMenuItemData("Practicum", handler));
166 }});
167
168 dropDown2.setItems(proposeItems);
169
170 //KSLumLandingPage landing = new KSLumLandingPage();
171 //wrapper.setContent(landing);
172
173 RootPanel.get().add(new KSDatePicker());
174 RootPanel.get().add(dropDown);
175 RootPanel.get().add(dropDown2);*/
176 //final KSLabel label = new KSLabel("Name");
177
178 //RootPanel.get().add(label);
179 /* final KSTitleContainerImpl title = new KSTitleContainerImpl();
180 title.setTitle("NAME1");
181 KSButton button = new KSButton("Change", new ClickHandler(){
182
183 @Override
184 public void onClick(ClickEvent event) {
185 title.setTitle("NEW NAME");
186 //label.
187 }});
188 RootPanel.get().add(title);*/
189 List<String> columns = new ArrayList<String>();
190 columns.add("Name");
191 columns.add("Permissions");
192 columns.add("Workflow Permissions");
193 columns.add("Remove Person");
194 SimpleWidgetTable table = new SimpleWidgetTable(columns);
195 List<Widget> widgets = new ArrayList<Widget>();
196 widgets.add(new Label("Hello"));
197 widgets.add(new Label("Hello2"));
198 widgets.add(new Label(""));
199 widgets.add(new Label("Hello4"));
200 table.addRow(widgets);
201 RootPanel.get().add(table);
202
203 /* KSWrapper wrapper = new KSWrapper();
204
205 KSTitleContainerImpl container = new KSTitleContainerImpl("Introduction to Geology", "Unsubmitted Proposal", "Workflow Overview");
206 KSTabPanel tabPanel = new KSTabPanel();
207 container.setContent(tabPanel);
208
209 VerticalPanel vPanel = new VerticalPanel();
210 vPanel.add(new KSButton("Button"));
211 vPanel.add(new KSLabel("Label"));
212 vPanel.add(Theme.INSTANCE.getCommonImages().getAsterisk());
213 vPanel.add(new KSRichEditor());
214 KSBasicMenu menu = new KSBasicMenu();
215 List<KSMenuItemData> menuItems = new ArrayList<KSMenuItemData>();
216 menuItems.add(new KSMenuItemData("Item 1")
217 {{
218 addSubItem(new KSMenuItemData("Child 1"){{setClickHandler(new ClickHandler(){
219
220 @Override
221 public void onClick(ClickEvent event) {
222
223
224 }
225 });}});
226 addSubItem(new KSMenuItemData("Child 2"){{setClickHandler(new ClickHandler(){
227
228 @Override
229 public void onClick(ClickEvent event) {
230
231
232 }
233 });}});
234 }});
235 menuItems.add(new KSMenuItemData("Item 2")
236 {{
237 addSubItem(new KSMenuItemData("Child 1"){{setClickHandler(new ClickHandler(){
238
239 @Override
240 public void onClick(ClickEvent event) {
241
242
243 }
244 });}});
245 addSubItem(new KSMenuItemData("Child 2"){{setClickHandler(new ClickHandler(){
246
247 @Override
248 public void onClick(ClickEvent event) {
249
250
251 }
252 });}});
253
254 }});
255 menu.setTitle("Menu Title");
256 menu.setDescription("Choose an Item");
257 menu.setItems(menuItems);
258 vPanel.add(menu);
259 VerticalPanel vPanel2 = new VerticalPanel();
260 vPanel2.add(new KSLabel("Summary Content"));
261 VerticalPanel vPanel3 = new VerticalPanel();
262 vPanel3.add(new KSLabel("Comments!"));
263
264 tabPanel.addTab("1", "EDIT PROPOSAL", vPanel);
265 tabPanel.addTab("2", "PROPOSAL SUMMARY", vPanel2);
266 tabPanel.addTab("3", "Add & View Comments", vPanel3, TabPosition.RIGHT);
267 tabPanel.selectTab("1");
268
269 wrapper.setContent(container);
270 List<KSLabel> headerLinks = new ArrayList<KSLabel>();
271 headerLinks.add(new KSLabel("KUALI REFERENCE UNIVERSITY"));
272 headerLinks.add(new KSLabel("KRU PORTAL"));
273 headerLinks.add(new KSLabel("DIRECTORIES"));
274 headerLinks.add(new KSLabel("SEARCH KRU"));
275 wrapper.setHeaderCustomLinks(headerLinks);
276 List<KSLabel> footerLinks = new ArrayList<KSLabel>();
277 footerLinks.add(new KSLabel("KUALI REFERENCE UNIVERSITY"));
278 footerLinks.add(new KSLabel("KRU PORTAL"));
279 footerLinks.add(new KSLabel("DIRECTORIES"));
280 footerLinks.add(new KSLabel("SEARCH KRU"));
281 wrapper.setFooterLinks(footerLinks);
282 RootPanel.get().add(wrapper);*/
283 }
284 }