Package com.neptuny.xgrapher.cli

Source Code of com.neptuny.xgrapher.cli.GraphArea

/*******************************************************************************
*   Copyright 2007 Neptuny s.r.l. - www.neptuny.com
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
*    http://www.apache.org/licenses/LICENSE-2.0
*
*   Unless required by applicable law or agreed to in writing, software
*   distributed under the License is distributed on an "AS IS" BASIS,
*   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
*   See the License for the specific language governing permissions and
*   limitations under the License.
*******************************************************************************/
package com.neptuny.xgrapher.cli;

import java.awt.BorderLayout;
import java.awt.Color;

import javax.swing.BorderFactory;
import javax.swing.JPanel;

import com.neptuny.xgrapher.cli.controller.Application;
import com.neptuny.xgrapher.cli.controller.XGrapherMouseListener;
import com.neptuny.xgrapher.cli.mapping.XGrapherJungMapping;

import edu.uci.ics.jung.visualization.ShapePickSupport;
import edu.uci.ics.jung.visualization.VisualizationViewer;

/**
* Contains the JUNG Graph.
*
* @author Riccardo Govoni [riccardo.govoni@neptuny.it]
* @since Sep 25, 2007
*
*/
public class GraphArea extends JPanel {

  private Application app;

  private XGrapherJungMapping mapper = null;

  /**
   * @param app
   */

  public GraphArea(final Application app) {

    this.app = app;

    // get the mapper
    mapper = app.getMapper();

    setLayout(new BorderLayout());

    setBorder(BorderFactory.createLineBorder(Color.YELLOW, 3));
    final VisualizationViewer vv = app.getVv();
    vv.setLayout(new BorderLayout());
    vv.setBackground(Color.white);
    // add a mouse listener to manage mouse event on graph element
    vv.setPickSupport(new ShapePickSupport(5));
    vv.addMouseListener(new XGrapherMouseListener(app, vv, mapper));
    vv.setGraphMouse(app.getModalGraphMouse());
    this.add(vv, BorderLayout.CENTER);
  }

}
TOP

Related Classes of com.neptuny.xgrapher.cli.GraphArea

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.