comparison flys-client/src/main/java/de/intevation/flys/client/client/ui/ProjectList.java @ 4559:7f86ab48284c

Add a small close and add project button to the project list header
author Björn Ricks <bjoern.ricks@intevation.de>
date Fri, 16 Nov 2012 14:26:01 +0100
parents 03de5c424f95
children c1c4c95ae9e4
comparison
equal deleted inserted replaced
4558:9d7497f5be05 4559:7f86ab48284c
1 package de.intevation.flys.client.client.ui; 1 package de.intevation.flys.client.client.ui;
2 2
3 import com.google.gwt.core.client.GWT; 3 import com.google.gwt.core.client.GWT;
4 import com.google.gwt.event.dom.client.ClickEvent;
4 import com.google.gwt.i18n.client.DateTimeFormat; 5 import com.google.gwt.i18n.client.DateTimeFormat;
5 import com.google.gwt.user.client.Timer; 6 import com.google.gwt.user.client.Timer;
6 import com.google.gwt.user.client.rpc.AsyncCallback; 7 import com.google.gwt.user.client.rpc.AsyncCallback;
8 import com.google.gwt.user.client.ui.Button;
7 9
8 import com.smartgwt.client.types.Alignment; 10 import com.smartgwt.client.types.Alignment;
9 import com.smartgwt.client.types.Autofit; 11 import com.smartgwt.client.types.Autofit;
10 import com.smartgwt.client.types.ListGridEditEvent; 12 import com.smartgwt.client.types.ListGridEditEvent;
11 import com.smartgwt.client.types.ListGridFieldType; 13 import com.smartgwt.client.types.ListGridFieldType;
31 import com.smartgwt.client.widgets.grid.events.EditCompleteHandler; 33 import com.smartgwt.client.widgets.grid.events.EditCompleteHandler;
32 import com.smartgwt.client.widgets.grid.events.HeaderDoubleClickEvent; 34 import com.smartgwt.client.widgets.grid.events.HeaderDoubleClickEvent;
33 import com.smartgwt.client.widgets.grid.events.HeaderDoubleClickHandler; 35 import com.smartgwt.client.widgets.grid.events.HeaderDoubleClickHandler;
34 import com.smartgwt.client.widgets.grid.events.RowContextClickEvent; 36 import com.smartgwt.client.widgets.grid.events.RowContextClickEvent;
35 import com.smartgwt.client.widgets.grid.events.RowContextClickHandler; 37 import com.smartgwt.client.widgets.grid.events.RowContextClickHandler;
38 import com.smartgwt.client.widgets.layout.HLayout;
36 import com.smartgwt.client.widgets.layout.VLayout; 39 import com.smartgwt.client.widgets.layout.VLayout;
37 import com.smartgwt.client.widgets.menu.Menu; 40 import com.smartgwt.client.widgets.menu.Menu;
38 import com.smartgwt.client.widgets.menu.MenuItem; 41 import com.smartgwt.client.widgets.menu.MenuItem;
39 import com.smartgwt.client.widgets.menu.MenuItemSeparator; 42 import com.smartgwt.client.widgets.menu.MenuItemSeparator;
40 import com.smartgwt.client.widgets.menu.events.ClickHandler; 43 import com.smartgwt.client.widgets.menu.events.ClickHandler;
371 374
372 Label title = new Label(messages.projects()); 375 Label title = new Label(messages.projects());
373 title.setHeight("20"); 376 title.setHeight("20");
374 title.setMargin(5); 377 title.setMargin(5);
375 title.setWidth100(); 378 title.setWidth100();
376 title.setStyleName("fontLightSmall"); 379 title.setStyleName("projectHeader");
377 380
378 Canvas titleWrapper = new Canvas(); 381 HLayout buttonWrapper = new HLayout();
379 titleWrapper.setStyleName("bgBlueDark"); 382
383 Button addButton = new Button("+");
384 addButton.setStyleName("projectsAddButton");
385 addButton.setTitle(messages.new_project());
386 addButton.setWidth("30px");
387
388 Button closeButton = new Button("X");
389 closeButton.setStyleName("projectsCloseButton");
390 closeButton.setTitle(messages.projectlist_close());
391 closeButton.setWidth("30px");
392
393 buttonWrapper.addMember(addButton);
394 buttonWrapper.addMember(closeButton);
395 buttonWrapper.setAlign(Alignment.RIGHT);
396 buttonWrapper.setAutoWidth();
397
398 HLayout titleWrapper = new HLayout();
399 titleWrapper.setStyleName("bgBlueMid");
380 titleWrapper.setWidth100(); 400 titleWrapper.setWidth100();
381 titleWrapper.setHeight("20px"); 401 titleWrapper.setHeight("20px");
382 titleWrapper.addChild(title); 402 titleWrapper.addMember(title);
403 titleWrapper.addMember(buttonWrapper);
383 404
384 Canvas gridWrapper = new Canvas(); 405 Canvas gridWrapper = new Canvas();
385 gridWrapper.setPadding(0); 406 gridWrapper.setPadding(0);
386 titleWrapper.setWidth100(); 407 titleWrapper.setWidth100();
387 gridWrapper.addChild(grid); 408 gridWrapper.addChild(grid);
392 filter.setBorder("1px solid gray"); 413 filter.setBorder("1px solid gray");
393 414
394 addMember(titleWrapper); 415 addMember(titleWrapper);
395 addMember(gridWrapper); 416 addMember(gridWrapper);
396 addMember(filter); 417 addMember(filter);
418
419 addButton.addClickHandler(
420 new com.google.gwt.event.dom.client.ClickHandler() {
421
422 @Override
423 public void onClick(ClickEvent ev) {
424 flys.newProject();
425 }
426 });
427
428 closeButton.addClickHandler(
429 new com.google.gwt.event.dom.client.ClickHandler() {
430
431 @Override
432 public void onClick(ClickEvent ev) {
433 hide();
434 }
435 });
397 } 436 }
398 437
399 438
400 @Override 439 @Override
401 public void onFilterCriteriaChanged(StringFilterEvent event) { 440 public void onFilterCriteriaChanged(StringFilterEvent event) {

http://dive4elements.wald.intevation.org