Dear all,
 
I would like to add a button in a viewpart which draw a
polygon. I've implemented a modal tool and I don't know how to call it in the
button's selection listener.
 
My tool is:
public class
DrawRectangleTool extends AbstractModalTool implements ModalTool {
 
      public static String ID = "mytools.datamanager.drawRectangle";
      private Point start;
      DrawShapeCommand draw = new
DrawShapeCommand();
      public Coordinate startCoord;
      public Coordinate endCoord;
 
 
      /**
       * 
       */
      public
DrawRectangleTool() {
            draw.setFill(new Color(Color.ORANGE.getRed(),
                        Color.ORANGE.getGreen(),
Color.ORANGE.getBlue(), 50));
      }
 
      /**
       * @param targets
       */
      public
DrawRectangleTool(int targets) {
            super(targets);
            draw.setFill(new Color(Color.ORANGE.getRed(),
                        Color.ORANGE.getGreen(),
Color.ORANGE.getBlue(), 50));
      }
 
      public void
onMousePressed(MapMouseEvent e) {
            start = e.getPoint();
            draw.setValid(true);
            draw.setShape(new Rectangle(start.x, start.y, 0, 0));
            getContext().sendASyncCommand(draw);
 
      }
 
      public void
mouseDragged(MapMouseEvent e) {
            if (start == null) {
                  mousePressed(e);
                  return;
            }
            draw.setShape(new Rectangle(Math.min(start.x, e.x),
                        Math.min(start.y, e.y), Math.abs(e.x - start.x), Math
                        .abs(start.y - e.y)));
            context.getViewportPane().repaint();
      }
 
      public void
mouseReleased(MapMouseEvent e) {
            startCoord =
getContext().pixelToWorld(start.x, start.y);
            endCoord =
getContext().pixelToWorld(e.x, e.y);
            draw.setValid(false);        
      }
}
 
My listener is:
        polygonButton.addSelectionListener(new
SelectionListener() {
                  
                  @Override
                  public void
widgetSelected(SelectionEvent e) {
                        Tool modalTool =
ApplicationGIS.getToolManager().findTool(DrawRectangleTool.ID);
                        modalTool.setEnabled(true);  
                  }
                  
                  @Override
                  public void
widgetDefaultSelected(SelectionEvent e) {                        
                  }
            });
 
I hope you could help me.
Thanks.
 
Best regards,
 
Virginie BERRE - Ingénieur d'études et de développement
+33 (0)1 30 15 40 58 (n°
direct)
virginie.berre@xxxxxxxxxxxx
 
  | 
  
 | 
 
  | ZA Les Erables - bâtiment 4 66, route de Sartrouville78230 Le Pecq
 Tel: +33 (0)1 30 15 40 50 (standard)
 Fax: +33 (0)1 30 15 40 60
 www.magellium.fr
 | 
 | 
 Pensez environnement !
N'imprimez ce mail que si c'est vraiment nécessaire !
Pensez environnement !
N'imprimez ce mail que si c'est vraiment nécessaire !