public class MotionSpinnerListener implements ChangeListener { /** 0: pathSpinner; 1:p1; 2:p2 */ private int which = 0; /** @param n Indicates which spinner. 0: pathSpinner; 1:p1; 2:p2 */ public MotionSpinnerListener(int n) { which = n; } private TDLinkageModel tdModel = TDLinkageModel.getInstance(); private MotionModel motionModel = MotionModel.getInstance(); public void stateChanged(ChangeEvent e) { DialSpinner<SamplePoint<Realization>> spinner = ((DialSpinner<SamplePoint<Realization>>) (e.getSource())); if (!spinner.isVisible()) return; ContinuousMotion p; if (which == 0) p = motionModel.getMotion(); else if (which == 1) p = motionModel.getM1(); else p = motionModel.getM2(); // double percentage = spinner.getPercentage(); // ContinuousMotionSamples<Graph> pSamples = motionModel // .getMotionSamples(); // int index = (int) percentage * pSamples.size(); // SamplePoint<Graph> point = pSamples.get(index); SamplePoint<Realization> point = spinner.getValue(); Realization g = point.getValue(); if (g != null) { switch (which) { case 0: tdModel.setPoints(g); break; /* * case 1: motionModel.getStartRealization().setPoints(g); break; * case 2: motionModel.getEndRealization().setPoints(g); break; */ } } GPanel.getInstance().repaint(); CCSModel.getInstance().refreshCurrent(); CCSPanel.getInstance().repaint(); FloatingPanels.getInstance().repaintAll(); } }
public void stateChanged(ChangeEvent e) { DialSpinner<SamplePoint<Realization>> spinner = ((DialSpinner<SamplePoint<Realization>>) (e.getSource())); if (!spinner.isVisible()) return; ContinuousMotion p; if (which == 0) p = motionModel.getMotion(); else if (which == 1) p = motionModel.getM1(); else p = motionModel.getM2(); // double percentage = spinner.getPercentage(); // ContinuousMotionSamples<Graph> pSamples = motionModel // .getMotionSamples(); // int index = (int) percentage * pSamples.size(); // SamplePoint<Graph> point = pSamples.get(index); SamplePoint<Realization> point = spinner.getValue(); Realization g = point.getValue(); if (g != null) { switch (which) { case 0: tdModel.setPoints(g); break; /* * case 1: motionModel.getStartRealization().setPoints(g); break; * case 2: motionModel.getEndRealization().setPoints(g); break; */ } } GPanel.getInstance().repaint(); CCSModel.getInstance().refreshCurrent(); CCSPanel.getInstance().repaint(); FloatingPanels.getInstance().repaintAll(); }