Example usage for com.google.gwt.event.dom.client MouseDownHandler MouseDownHandler

List of usage examples for com.google.gwt.event.dom.client MouseDownHandler MouseDownHandler

Introduction

In this page you can find the example usage for com.google.gwt.event.dom.client MouseDownHandler MouseDownHandler.

Prototype

MouseDownHandler

Source Link

Usage

From source file:annis.gui.widgets.gwt.client.ui.VGripDragComponent.java

License:Apache License

public VGripDragComponent() {
    super();/*from  w w w .j  a  v a 2 s.c o  m*/
    addDomHandler(new MouseDownHandler() {
        public void onMouseDown(MouseDownEvent event) {
            if (startDrag(event.getNativeEvent())) {
                event.preventDefault(); // prevent text selection
            }
        }
    }, MouseDownEvent.getType());

    addDomHandler(new TouchStartHandler() {
        public void onTouchStart(TouchStartEvent event) {
            if (startDrag(event.getNativeEvent())) {
                /*
                 * Dont let eg. panel start scrolling.
                 */
                event.stopPropagation();
            }
        }
    }, TouchStartEvent.getType());

    sinkEvents(Event.TOUCHEVENTS);

}

From source file:asquare.gwt.tests.circularbinding.client.Demo.java

License:Apache License

private Widget createDemoPanel() {
    VerticalPanel outer = new VerticalPanel();

    final TextArea output = new TextArea();
    outer.add(output);// w ww. j a v  a 2  s.co  m

    Label label = new Label("Click me");
    label.addMouseDownHandler(new MouseDownHandler() {
        public void onMouseDown(MouseDownEvent event) {
            // this works
            output.setText("x=" + DOM2.eventGetClientX());

            // this results in an infinite loop
            output.setText(output.getText() + "\r\ny=" + DOM2.eventGetClientY());
        }
    });
    DOM.setStyleAttribute(label.getElement(), "border", "solid black 1px");
    outer.insert(label, 0);

    return outer;
}

From source file:asquare.gwt.tests.coordinates.client.Demo.java

License:Apache License

public void onModuleLoad() {
    DialogBox dialog = new DialogBox() {
        {/*w w  w  .  ja  v  a2  s.c o  m*/
            addDomHandler(new MouseDownHandler() {
                public void onMouseDown(MouseDownEvent event) {
                    Debug.println("DialogBox.onMouseDown(" + event.getX() + "," + event.getY() + ")");
                }
            }, MouseDownEvent.getType());
        }
    };
    dialog.setText("Dialog Caption");
    Image image = new Image("one.gif");
    DOM.setStyleAttribute(image.getElement(), "height", "100px");
    DOM.setStyleAttribute(image.getElement(), "width", "200px");

    dialog.setWidget(image);
    dialog.show();
    dialog.setPopupPosition(200, 200);

    Debug.enable();
    if (!GWT.isScript())
        DebugConsole.getInstance().disable();

    new DebugHierarchyInspector().install();
    new DebugElementDumpInspector().install();
    new DebugEventListener('a', Event.ONMOUSEDOWN, "Absolute position inspector") {
        protected void doEvent(Event event) {
            Element target = DOM.eventGetTarget(event);
            Debug.println(getTagName(target) + "[absLeft=" + DOM.getAbsoluteLeft(target) + ",absTop="
                    + DOM.getAbsoluteTop(target) + "]");
        }
    }.install();

    new DebugEventListener('o', Event.ONMOUSEDOWN, "Offset hierarchy inspector") {
        protected void doEvent(Event event) {
            Element target = DOM.eventGetTarget(event);
            printOffsetHierarchy(target);
        }
    }.install();

    new DebugEventListener().install();
}

From source file:be.progs.routeshare.client.MenuMapGadget.java

License:Open Source License

@Override
public Widget asWidget() {
    if (menu == null) {
        menu = new RouteShareMenu(mapPresenter);

        // Stop propagation of mouse events to the map:
        menu.addDomHandler(new MouseDownHandler() {

            public void onMouseDown(MouseDownEvent event) {
                event.stopPropagation();
            }//www  .ja  v a2  s. com
        }, MouseDownEvent.getType());
        menu.addDomHandler(new ClickHandler() {

            public void onClick(ClickEvent event) {
                event.stopPropagation();
            }
        }, ClickEvent.getType());
        menu.addDomHandler(new MouseUpHandler() {

            public void onMouseUp(MouseUpEvent event) {
                event.stopPropagation();
            }
        }, MouseUpEvent.getType());
        menu.addDomHandler(new DoubleClickHandler() {

            public void onDoubleClick(DoubleClickEvent event) {
                event.stopPropagation();
            }
        }, DoubleClickEvent.getType());

        // Install a timer for automatic closing when the mouse leaves us:
        menu.addDomHandler(new MouseOutHandler() {

            public void onMouseOut(MouseOutEvent event) {
                if (menu.isOpen() && closeDelay > 0) {
                    timer = new Timer() {

                        public void run() {
                            menu.setOpen(false);
                        }
                    };
                    timer.schedule(closeDelay);
                }
            }
        }, MouseOutEvent.getType());
        menu.addDomHandler(new MouseOverHandler() {

            public void onMouseOver(MouseOverEvent event) {
                if (timer != null) {
                    timer.cancel();
                }
            }
        }, MouseOverEvent.getType());
    }
    return menu;
}

From source file:ch.unifr.pai.ice.client.clickblobs.Blob.java

License:Apache License

/******************************************
 * Create a new blob with RANDOM position
 * /*w ww  .ja v a 2 s  .  co m*/
 * @param String
 *            image
 * @param String
 *            userNb
 * @param int nbIteration
 * @param AbsolutePanel
 *            absolutePanel
 ******************************************/

public Blob(String image, String userNb, int nbIteration, AbsolutePanel absolutePanel, ICEDataLogger logger,
        boolean doLog) {

    super(image);
    isLogged = !doLog;
    this.nbIter = nbIteration;
    blob = this;
    this.absPanel = absolutePanel;
    this.setSize("30px", "30px");
    this.uNb = userNb;
    this.logger = logger;
    blobClickVector = new Vector<CursorXY>();

    this.addMouseDownHandler(new MouseDownHandler() {

        @Override
        public void onMouseDown(MouseDownEvent event) {

            if (iteration < nbIter) {

                blobClickVector.add(new CursorXY(uNb, blob.getAbsoluteLeft(), blob.getAbsoluteTop(),
                        System.currentTimeMillis(), blob.getBlobNumber()));

                absPanel.setWidgetPosition(blob, randomNum(absPanel.getOffsetWidth() - 70),
                        randomNum(absPanel.getOffsetHeight() - 70));

                iteration++;
            }
        }
    });
}

From source file:ch.unifr.pai.ice.client.clickblobs.Blob.java

License:Apache License

private void setBlobPositionHandler(int[][] blobPosition) {

    if (blobPosition == null) {

        Window.alert("No set of position defined!");

    } else {//from ww  w.  j  a  v a 2s.  c om

        this.absPanel.sinkEvents(Event.ONMOUSEDOWN); //this.absPanel.sinkEvents(Event.ONCLICK);

        this.absPanel.addDomHandler(new MouseDownHandler() { //this.absPanel.addHandler( new ClickHandler(){
            @Override
            public void onMouseDown(MouseDownEvent event) { //public void onClick(ClickEvent event) {

                if (!isStarted) { //start time of experiment
                    startTime = System.currentTimeMillis();
                    isStarted = true;

                }

                if (blobClickVector.size() == 0) {

                    blobClickVector.add(new CursorXY(uNb, event.getClientX(), event.getClientY(),
                            System.currentTimeMillis(), -5));
                    count++;
                    System.out.println(uNb + ":  " + "Out of blob clicked!" + "; x: " + event.getClientX()
                            + "; y: " + event.getClientY() + "; Time: " + System.currentTimeMillis());
                }

                else {
                    if (!isLogged) {
                        num++;

                        if (num > iteration) {
                            blobClickVector.add(new CursorXY(uNb, event.getClientX(), event.getClientY(),
                                    System.currentTimeMillis(), -5));
                            System.out.println(uNb + ":  " + "Out of blob clicked!" + "; x: "
                                    + event.getClientX() + "; y: " + event.getClientY() + "; Time: "
                                    + System.currentTimeMillis());
                            num = iteration;
                            count++;
                        }
                    }

                    if (isLogged) {
                        num++;
                        if (num > iteration) {
                            blobClickVector.add(new CursorXY(uNb, event.getClientX(), event.getClientY(),
                                    System.currentTimeMillis(), -5));
                            System.out.println(uNb + ":  " + "Out of blob clicked!" + "; x: "
                                    + event.getClientX() + "; y: " + event.getClientY() + "; Time: "
                                    + System.currentTimeMillis());
                            logger.setLoggedData(blobClickVector, false);
                            num = iteration;
                            trialcount++;
                        }
                    }
                }

            }
        }, MouseDownEvent.getType());

        this.addMouseDownHandler(new MouseDownHandler() {

            @Override
            public void onMouseDown(MouseDownEvent event) {

                if (!isStarted) {
                    startTime = System.currentTimeMillis();
                    isStarted = true;
                }

                iteration++;

                if (iteration < blobPos.length) { //experiment hasn't finished yet

                    if (!isLogged) {

                        blobClickVector.add(new CursorXY(uNb, blob.getAbsoluteLeft(), blob.getAbsoluteTop(),
                                System.currentTimeMillis(), blob.getBlobNumber()));

                        //First blob is done, adds the first blob information to the Vector

                        //PRINTING LOGS// 
                        //System.out.println("(Log INFO) Blob clicked! --- " + uNb + " ;  BlobNo:" + blob.getBlobNumber() + " ;  Coordinates of Blob Clicked:(" + 
                        //blob.getAbsoluteLeft() + "," + blob.getAbsoluteTop() + ")" + " ;  Time clicked:" + System.currentTimeMillis());                  
                    }

                    if (isLogged) { //second set 

                        blobClickVector.add(new CursorXY(uNb, blob.getAbsoluteLeft(), blob.getAbsoluteTop(),
                                System.currentTimeMillis(), blob.getBlobNumber()));
                        //First blob is done, adds the first blob information to the Vector

                        //PRINTING LOGS
                        //System.out.println("Trial Set: Blob clicked! --- " + uNb + " ;  BlobNo:" + blob.getBlobNumber() +  " ;  Coordinates of Blob Clicked: ( " + 
                        //blob.getAbsoluteLeft() + "," + blob.getAbsoluteTop() + " )" + " ;  Time clicked: " + System.currentTimeMillis() );

                        check = false;
                        logger.setLoggedData(blobClickVector, false);

                    }

                    // Check the pos. in the array and get back to 0 if over array length -> loop
                    if ((iteration + arrayOffset) < blobPos.length) {

                        absPanel.setWidgetPosition(blob, blobPos[iteration + arrayOffset][0] + offset[0],
                                blobPos[iteration + arrayOffset][1] + offset[1]);
                        blob.setBlobNumber(iteration + arrayOffset);

                    } else { //for User 2,3,4 

                        absPanel.setWidgetPosition(blob,
                                blobPos[(iteration + arrayOffset) - blobPos.length][0] + offset[0],
                                blobPos[(iteration + arrayOffset) - blobPos.length][1] + offset[1]);

                        blob.setBlobNumber((iteration + arrayOffset) - blobPos.length);

                        //                     System.out.println("else set widget: " + " X:  blobPos[" + ( (iteration + arrayOffset) - blobPos.length ) + "][0] + offset[0]:" + offset[0] 
                        //                           + " = "  + ( blobPos[(iteration + arrayOffset) - blobPos.length][0] + offset[0] )
                        //                           + " ---  Y: blobPos[" + ((iteration + arrayOffset) - blobPos.length) + "][1] + offset[1]:" + offset[1]
                        //                           + " = " + (blobPos[(iteration + arrayOffset) - blobPos.length][1] + offset[1])); 
                        //               
                    }

                } else { //For the last blob

                    if (!isSetFinished) {
                        long setfinishtime = System.currentTimeMillis();
                        isSetFinished = true;
                        setFinishTime = setfinishtime;
                    }

                    if (!isLogged) { //isLogged=false

                        blobClickVector.add(new CursorXY(uNb, blob.getAbsoluteLeft(), blob.getAbsoluteTop(),
                                setFinishTime, blob.getBlobNumber()));
                        logger.setLoggedData(blobClickVector, true);
                        isLogged = true;
                        check = true;

                    }
                    if (isLogged && !check) {
                        blobClickVector.add(new CursorXY(uNb, blob.getAbsoluteLeft(), blob.getAbsoluteTop(),
                                System.currentTimeMillis(), blob.getBlobNumber()));
                        //PRINTING LOG INFO OF LAST BLOB 
                        //System.out.println("(Trial Set LAST BLOB INFO) Blob clicked! --- : " + uNb + " ;  BlobNo:" + blob.getBlobNumber() +  " ;  Coordinates of Blob Clicked: ( " + 
                        //blob.getAbsoluteLeft() + "," + blob.getAbsoluteTop() + " )" + " ;  Time clicked: " + System.currentTimeMillis() ); 
                        logger.setLoggedData(blobClickVector, false);

                    }

                    iteration = 0;
                    num = -1; //for the second set

                    // continue to move the blob without recording the position
                    // this is to let the user continue until the others finished

                    // Check the pos. in the array and get back to 0 if over array length -> loop

                    System.out.println("Trial set started"); //to be deleted
                    if ((iteration + arrayOffset) < blobPos.length) {

                        absPanel.setWidgetPosition(blob, blobPos[iteration + arrayOffset][0] + offset[0],
                                blobPos[iteration + arrayOffset][1] + offset[1]);

                        blob.setBlobNumber(iteration + arrayOffset);

                    } else {
                        absPanel.setWidgetPosition(blob,
                                blobPos[(iteration + arrayOffset) - blobPos.length][0] + offset[0],
                                blobPos[(iteration + arrayOffset) - blobPos.length][1] + offset[1]);

                        blob.setBlobNumber((iteration + arrayOffset) - blobPos.length);
                    }

                    onFinishedInitialIteration();
                    //iteration++;
                }
            }

        });

    }
}

From source file:ch.unifr.pai.ice.client.clickblobs.ClickBlobs1user.java

License:Apache License

/***************************************************************************
* Constructor/*from   w w  w.ja  va  2  s.  co  m*/
*
* @param nbBoxes
* : define the number of blobs
* @param randomPosition
* : define if users must be placed randomly or not
***************************************************************************/

public ClickBlobs1user(int nbBlobs, boolean randomPosition, boolean doLog) {
    super();
    this.setSize("100%", "100%");
    this.doLog = doLog;
    this.randomPos = randomPosition;
    //absPanel = this; 
    this.nbBlobs = nbBlobs;
    // this.add(resetBT);
    // this.add(addUser);
    nbUser++;

    hPanel1.setSize("100%", "100%");
    hPanel2.setSize("100%", "100%");

    user1Panel.setSize("100%", "100%");
    user2Panel.setSize("100%", "100%");
    user3Panel.setSize("100%", "100%");
    user4Panel.setSize("100%", "100%");

    hPanel1.add(user1Panel);
    hPanel1.setCellWidth(user1Panel, "50%");
    hPanel1.setCellHeight(user1Panel, "50%");
    hPanel1.add(user3Panel);

    hPanel2.add(user4Panel);
    hPanel2.setCellWidth(user4Panel, "50%");
    hPanel2.setCellHeight(user4Panel, "50%");
    hPanel2.add(user2Panel);

    this.add(hPanel1);
    this.add(hPanel2);

    this.setBorderWidth(1);

    hPanel1.setBorderWidth(1);
    hPanel2.setBorderWidth(1);

    // ----- Reset Button --------------------------------------------
    resetBT.addMouseDownHandler(new MouseDownHandler() {

        @Override
        public void onMouseDown(MouseDownEvent event) {
            user1.resetCounter();
            nbExpFinished = 0;
            userLogVector.clear();
        }
    });
}

From source file:ch.unifr.pai.ice.client.tracking.LineTracking1user.java

License:Apache License

public LineTracking1user(boolean doLog, String image) {
    super();//from  w  w w.  jav  a 2  s .  com

    this.doLog = doLog;
    this.lineImage = new Image(GWT.getModuleBaseURL() + image);
    context = canvas.getContext2d();

    canvas.addMouseDownHandler(new MouseDownHandler() {

        @Override
        public void onMouseDown(MouseDownEvent event) {
            event.preventDefault();
        }
    });
    this.add(lineImage);
    this.add(canvas);
    this.setWidgetPosition(canvas, 0, 0);
    this.setWidgetPosition(lineImage, lineOffset, lineOffset);
    // this.add(posLabel);
    this.add(startBt);
    this.add(stopBt);
    cursorPosVector = new Vector<CursorXY>();

    canvas.addMouseMoveHandler(new MouseMoveHandler() {

        @Override
        public void onMouseMove(MouseMoveEvent event) {

            if (tracking) {
                if (x != -1 && y != -1) {
                    context.beginPath();
                    context.moveTo(x, y);
                    context.lineTo(event.getRelativeX(canvas.getCanvasElement()),
                            event.getRelativeY(canvas.getCanvasElement()));
                    context.stroke();
                }
                x = event.getRelativeX(canvas.getCanvasElement());
                y = event.getRelativeY(canvas.getCanvasElement());
                posLabel.setText(x + "," + y);

            }

        }
    });
    canvas.addTouchMoveHandler(new TouchMoveHandler() {

        @Override
        public void onTouchMove(TouchMoveEvent event) {

            if (tracking && event.getTouches().length() > 0) {
                event.preventDefault();
                if (x != -1 && y != -1) {
                    context.beginPath();
                    context.moveTo(x, y);
                    context.lineTo(event.getTouches().get(0).getRelativeX(canvas.getCanvasElement()),
                            event.getTouches().get(0).getRelativeY(canvas.getCanvasElement()));
                    context.stroke();
                }
                x = event.getTouches().get(0).getRelativeX(canvas.getCanvasElement());
                y = event.getTouches().get(0).getRelativeY(canvas.getCanvasElement());
                posLabel.setText(x + "," + y);

            }

        }
    });

    startBt.addMouseDownHandler(new MouseDownHandler() {

        @Override
        public void onMouseDown(MouseDownEvent event) {
            tracking = true;
            timer.scheduleRepeating(timerDelay);
            cursorPosVector.clear();
            startBt.removeFromParent();
        }
    });

    stopBt.addMouseDownHandler(new MouseDownHandler() {

        @Override
        public void onMouseDown(MouseDownEvent event) {
            log();
            tracking = false;
            stopBt.removeFromParent();
            timer.cancel();
        }
    });

}

From source file:ch.unifr.pai.ice.client.tracking.LineTracking2users.java

License:Apache License

/********************
 * Init panel 1/*from   w ww.  j ava2 s. c  o  m*/
 ********************/
private void initAbsPanel1() {
    absPanel1.add(lineImage1);
    absPanel1.add(posLabel1);
    absPanel1.add(startBt1);
    absPanel1.add(stopBt1);

    cursorPosVector1 = new Vector<CursorXY>();

    lineImage1.addMouseMoveHandler(new MouseMoveHandler() {

        @Override
        public void onMouseMove(MouseMoveEvent event) {

            if (startBt1.isDown() && !stopBt1.isDown()) {
                x1 = event.getRelativeX(lineImage1.getElement());
                y1 = event.getRelativeY(lineImage1.getElement());
            }
        }
    });

    startBt1.addMouseDownHandler(new MouseDownHandler() {

        @Override
        public void onMouseDown(MouseDownEvent event) {
            timer1.scheduleRepeating(timerDelay);
            cursorPosVector1.clear();
        }
    });

    stopBt1.addMouseDownHandler(new MouseDownHandler() {

        @Override
        public void onMouseDown(MouseDownEvent event) {
            log(cursorPosVector1);
            expFinished++;
            startBt1.setDown(false);
        }
    });

}

From source file:ch.unifr.pai.ice.client.tracking.LineTracking2users.java

License:Apache License

/********************
 * Init panel 2/* w w  w.  j  a  va2 s  .c  o  m*/
 ********************/

private void initAbsPanel2() {
    absPanel2.add(lineImage2);
    absPanel2.add(posLabel2);
    absPanel2.add(startBt2);
    absPanel2.add(stopBt2);

    cursorPosVector2 = new Vector<CursorXY>();

    lineImage2.addMouseMoveHandler(new MouseMoveHandler() {

        @Override
        public void onMouseMove(MouseMoveEvent event) {

            if (startBt2.isDown() && !stopBt2.isDown()) {
                x2 = event.getRelativeX(lineImage2.getElement());
                y2 = event.getRelativeY(lineImage2.getElement());
            }
        }
    });

    startBt2.addMouseDownHandler(new MouseDownHandler() {

        @Override
        public void onMouseDown(MouseDownEvent event) {
            timer2.scheduleRepeating(timerDelay);
            cursorPosVector2.clear();
        }
    });

    stopBt2.addMouseDownHandler(new MouseDownHandler() {

        @Override
        public void onMouseDown(MouseDownEvent event) {
            log(cursorPosVector2);
            expFinished++;
            startBt2.setDown(false);
        }
    });

}