Package de.circleofcontacts.client.widgets

Source Code of de.circleofcontacts.client.widgets.WindowWidget

package de.circleofcontacts.client.widgets;

import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.event.logical.shared.SelectionEvent;
import com.google.gwt.event.logical.shared.SelectionHandler;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.user.client.ui.TreeItem;
import com.google.gwt.user.client.ui.VerticalPanel;

import de.circleofcontacts.client.view.ContactGroupSummaryView;

public class WindowWidget extends HorizontalPanel {
 
  private CirclesListWidget circles;
  private FriendsListWidget friends;
  private DetailsWidget details;
 
  public WindowWidget () {

    // Generate sub-widgets
    this.circles = new CirclesListWidget();
    this.details = new DetailsWidget();
    this.friends = new FriendsListWidget(this.details);

    // Add event handlers
    this.circles.addSelectionHandler(new SelectionHandler<TreeItem>() {
      public void onSelection(SelectionEvent<TreeItem> event) {
        if (event.getSelectedItem() instanceof CircleWidget) {
          ContactGroupSummaryView group = ((CircleWidget)event.getSelectedItem()).getGroup();
          friends.update(group);
        } else {
          friends.clear();
        }
      }
    });

    // Gruss an den GUI Designer: Dieses Button muss anderswohin, oder? ;-)
    VerticalPanel vp = new VerticalPanel();
    vp.add(this.circles);
    vp.add(new Button("Neue Gruppe",
      new ClickHandler() {
        public void onClick(ClickEvent event) {
          new ContactGroupEditor(null).show();
        }
      }));
   
    // Add to panel
    this.add(vp);
    this.add(this.friends);
    this.add(this.details);
       
    // Do some layout stuff...
    this.setSpacing(20);
   
  }

}
TOP

Related Classes of de.circleofcontacts.client.widgets.WindowWidget

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.