Package com.chap.links.client

Source Code of com.chap.links.client.NetworkDemo3_packages

package com.chap.links.client;


import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.RootPanel;
import com.google.gwt.visualization.client.DataTable;
import com.google.gwt.visualization.client.VisualizationUtils;

/**
* Entry point classes define <code>onModuleLoad()</code>.
*/
public class NetworkDemo3_packages implements EntryPoint {
  Button btnAddPackage = new Button("Add autmatic package");
  Button btnUpdatePackage = new Button("Update manual package");
  Button btnDeletePackage = new Button("Delete manual package");
  Network network = null;
 
  /**
   * This is the entry point method.
   */
  public void onModuleLoad() {
      // Create a callback to be called when the visualization API
      // has been loaded.
      Runnable onLoadCallback = new Runnable() {
        public void run() {

          // Create nodes table with some data
          DataTable nodes = DataTable.create();
          nodes.addColumn(DataTable.ColumnType.NUMBER, "id");
          nodes.addColumn(DataTable.ColumnType.STRING, "text");
          nodes.addRow();
          int i = 0;
          nodes.setValue(i, 0, 1);
          nodes.setValue(i, 1, "Node 1");
          nodes.addRow();
          i++;
          nodes.setValue(i, 0, 2);
          nodes.setValue(i, 1, "Node 2");
          nodes.addRow();
          i++;
          nodes.setValue(i, 0, 3);
          nodes.setValue(i, 1, "Node 3");

          // Create links table with some data
          DataTable links = DataTable.create();
          links.addColumn(DataTable.ColumnType.NUMBER, "from");
          links.addColumn(DataTable.ColumnType.NUMBER, "to");
          links.addRow();
          i = 0;
          links.setValue(i, 0, 1);
          links.setValue(i, 1, 2);
          links.addRow();
          i++;
          links.setValue(i, 0, 1);
          links.setValue(i, 1, 3);
          links.addRow();
          i++;
          links.setValue(i, 0, 2);
          links.setValue(i, 1, 3);


          // Create links table with some data
          DataTable packages = DataTable.create();
          packages.addColumn(DataTable.ColumnType.NUMBER, "from");
          packages.addColumn(DataTable.ColumnType.NUMBER, "to");
          packages.addColumn(DataTable.ColumnType.NUMBER, "duration");
          packages.addRow();
          i = 0;
          packages.setValue(i, 0, 1);
          packages.setValue(i, 1, 2);
          packages.setValue(i, 2, 5);
          packages.addRow();
          i++;
          packages.setValue(i, 0, 1);
          packages.setValue(i, 1, 3);
          packages.setValue(i, 2, 3);
          packages.addRow();
          i++;
          packages.setValue(i, 0, 2);
          packages.setValue(i, 1, 3);
          packages.setValue(i, 2, 1);
         
          // Create options
          Network.Options options = Network.Options.create();
          options.setWidth("300px");
          options.setHeight("300px");
          options.setStabilize(false);
          options.setBackgroundColor("#e7e7e7");
          options.setBorderWidth(0);
         
          // create the visualization, with data and options
          network = new Network(nodes, links, packages, options);
         
          RootPanel.get("mynetwork").add(network);
         
         
          // create button
          btnAddPackage.addClickHandler(new ClickHandler() {
            public void onClick(ClickEvent event) {
              addPackage();
            }
          });
          RootPanel.get("btnAddPackage").add(btnAddPackage);
         
          // create button
          btnUpdatePackage.addClickHandler(new ClickHandler() {
            public void onClick(ClickEvent event) {
              updatePackage();
            }
          });
          RootPanel.get("btnUpdatePackage").add(btnUpdatePackage);
         
          // create button
          btnDeletePackage.addClickHandler(new ClickHandler() {
            public void onClick(ClickEvent event) {
              deletePackage();
            }
          });
          RootPanel.get("btnDeletePackage").add(btnDeletePackage);
          updatePackage();
        }
      };

     
      // Load the visualization api, passing the onLoadCallback to be called
      // when loading is done.
      VisualizationUtils.loadVisualizationApi(onLoadCallback)
  }
 
 
  /**
   * Add a new package to the network
   */
  void addPackage() {
      DataTable packages = DataTable.create();
      packages.addColumn(DataTable.ColumnType.NUMBER, "from");
      packages.addColumn(DataTable.ColumnType.NUMBER, "to");
      packages.addRow();
      int i = 0;
      packages.setValue(i, 0, 1);
      packages.setValue(i, 1, 2);

      network.addPackages(packages);
  }
 
  /**
   * Add a new package to the network
   */
  final int packageId = 1;
  double packageProgress = 0.3;
  double packageStep = 0.1;
 
  void updatePackage() {
    // adjust the progress
    if (packageProgress > 1.0 - packageStep)
      packageStep = -0.1;
    if (packageProgress < 0.0 - packageStep)
      packageStep = 0.1;
    packageProgress += packageStep;
   
      DataTable packages = DataTable.create();
      packages.addColumn(DataTable.ColumnType.NUMBER, "id");
      packages.addColumn(DataTable.ColumnType.NUMBER, "from");
      packages.addColumn(DataTable.ColumnType.NUMBER, "to");
      packages.addColumn(DataTable.ColumnType.NUMBER, "progress");
      packages.addColumn(DataTable.ColumnType.STRING, "title");
      packages.addRow();
      int i = 0;
      packages.setValue(i, 0, packageId);
      packages.setValue(i, 1, 2);
      packages.setValue(i, 2, 3);
      packages.setValue(i, 3, packageProgress);
      packages.setValue(i, 4, "This is a manual package");

      network.addPackages(packages);
  }
 
  void deletePackage() {
      DataTable packages = DataTable.create();
      packages.addColumn(DataTable.ColumnType.NUMBER, "id");
      packages.addColumn(DataTable.ColumnType.NUMBER, "from");
      packages.addColumn(DataTable.ColumnType.NUMBER, "to");
      packages.addColumn(DataTable.ColumnType.STRING, "action");
      packages.addRow();
      int i = 0;
      packages.setValue(i, 0, packageId);
      packages.setValue(i, 3, "delete");

      network.addPackages(packages);
  }
}
TOP

Related Classes of com.chap.links.client.NetworkDemo3_packages

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.