Package rinde.sim.ui

Source Code of rinde.sim.ui.PanelTest$TestPanelRenderer

/**
*
*/
package rinde.sim.ui;

import javax.measure.Measure;
import javax.measure.unit.SI;

import org.apache.commons.math3.random.MersenneTwister;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;

import rinde.sim.core.Simulator;
import rinde.sim.core.graph.Point;
import rinde.sim.core.model.road.PlaneRoadModel;
import rinde.sim.ui.renderers.PanelRenderer;
import rinde.sim.ui.renderers.PlaneRoadModelRenderer;
import rinde.sim.ui.renderers.RoadUserRenderer;

/**
* @author Rinde van Lon <rinde.vanlon@cs.kuleuven.be>
*
*/
public final class PanelTest {

  private PanelTest() {}

  public static void main(String[] args) {

    final Simulator sim = new Simulator(new MersenneTwister(123),
        Measure.valueOf(1000L, SI.MILLI(SI.SECOND)));
    sim.register(new PlaneRoadModel(new Point(0, 0), new Point(10, 10), 10));
    sim.configure();

    View.create(sim)
        .with(new RoadUserRenderer(), new PlaneRoadModelRenderer(),
            new TestPanelRenderer("LEFT", SWT.LEFT, 200),
            new TestPanelRenderer("RIHGT BOEEE YEAH", SWT.RIGHT, 300),
            new TestPanelRenderer("RIHGT BOEEE YEAH", SWT.TOP, 100),
            new TestPanelRenderer("TOP2", SWT.TOP, 100),
            new TestPanelRenderer("LEFT2", SWT.LEFT, 100),
            new TestPanelRenderer("LEFT3", SWT.LEFT, 150)).show();

  }

  static class TestPanelRenderer implements PanelRenderer {

    protected final String name;
    protected final int position;
    protected final int size;

    public TestPanelRenderer(String n, int pos, int s) {
      name = n;
      position = pos;
      size = s;
    }

    @Override
    public void initializePanel(Composite c) {
      c.setLayout(new FillLayout());
      final Button b = new Button(c, SWT.PUSH);

      b.setText("push me " + name);
      // TODO Auto-generated method stub

    }

    @Override
    public int getPreferredPosition() {
      return position;
    }

    @Override
    public String getName() {
      return name;
    }

    @Override
    public int preferredSize() {
      return size;
    }

  }
}
TOP

Related Classes of rinde.sim.ui.PanelTest$TestPanelRenderer

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.