Ejemplo n.º 1
0
  public void addTarget(final Pattern pattern) {

    final SikuliGuideAnchor a = new SikuliGuideAnchor(pattern);
    guide.addToFront(a);

    targets.add(a);

    SikuliGuideFlag f = new SikuliGuideFlag("Flag");
    f.setLocationRelativeToComponent(a, Layout.LEFT);
    guide.addToFront(f);

    a.addListener(
        new AnchorListener() {

          @Override
          public void anchored() {
            Debug.info("[Magnet] pattern anchored");

            anchoredCount += 1;

            if (anchoredCount == targets.size()) {
              allTargetAnchored();
            }
          }

          @Override
          public void found(SikuliGuideAnchor source) {
            // TODO Auto-generated method stub

          }
        });
  }
Ejemplo n.º 2
0
  void attractTarget(SikuliGuideAnchor a, Point targetLocation) {

    try {
      Pattern pattern = a.getPattern();
      SikuliGuideImage img = new SikuliGuideImage(pattern.getImage());

      Clickable clickable = new Clickable();
      clickable.setLocationRelativeToComponent(img, Layout.OVER);
      guide.addToFront(clickable);

      clickable.clickPoint = a.getCenter();

      Link link = new Link();
      link.image = img;
      link.anchor = a;
      links.add(link);

      img.setShadowDefault();
      img.setActualLocation(a.getActualLocation());

      Dimension currentSize = a.getActualSize();
      Dimension targetSize = new Dimension(currentSize);
      targetSize.width *= 1.5;
      targetSize.height *= 1.5;

      img.addResizeAnimation(currentSize, targetSize);

      Point currentLocation = new Point(a.getActualLocation());

      targetLocation.x -= targetSize.width / 2;
      targetLocation.y -= targetSize.height / 2;

      img.addMoveAnimation(currentLocation, targetLocation);
      guide.addToFront(img);
      img.startAnimation();

      guide.repaint();

    } catch (IOException e) {
      e.printStackTrace();
    }
  }