Package org.erlide.ui.tests.util

Source Code of org.erlide.ui.tests.util.SWTEventHelper

package org.erlide.ui.tests.util;

import org.eclipse.swt.graphics.GC;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Touch;
import org.eclipse.swt.widgets.Widget;

public class SWTEventHelper {

    private final Event event;

    private SWTEventHelper(final int eventType) {
        event = new Event();
        event.type = eventType;
    }

    public static SWTEventHelper trigger(final int eventType) {
        return new SWTEventHelper(eventType);
    }

    public SWTEventHelper atX(final int x) {
        event.x = x;
        return this;
    }

    public SWTEventHelper atY(final int y) {
        event.y = y;
        return this;
    }

    public SWTEventHelper at(final int x, final int y) {
        return atX(x).atY(y);
    }

    public SWTEventHelper withCount(final int count) {
        event.count = count;
        return this;
    }

    public SWTEventHelper withStateMask(final int stateMask) {
        event.stateMask = stateMask;
        return this;
    }

    public SWTEventHelper withButton(final int button) {
        event.button = button;
        return this;
    }

    public SWTEventHelper withCharacter(final char character) {
        event.character = character;
        return this;
    }

    public SWTEventHelper withData(final Object data) {
        event.data = data;
        return this;
    }

    public SWTEventHelper withDetail(final int detail) {
        event.detail = detail;
        return this;
    }

    public SWTEventHelper withEnd(final int end) {
        event.end = end;
        return this;
    }

    public SWTEventHelper withStart(final int start) {
        event.start = start;
        return this;
    }

    public SWTEventHelper withRange(final int start, final int end) {
        return withStart(start).withEnd(end);
    }

    public SWTEventHelper withGC(final GC gc) {
        event.gc = gc;
        return this;
    }

    public SWTEventHelper withWidth(final int width) {
        event.width = width;
        return this;
    }

    public SWTEventHelper withHeight(final int height) {
        event.height = height;
        return this;
    }

    public SWTEventHelper withSize(final int width, final int height) {
        return withWidth(width).withHeight(height);
    }

    public SWTEventHelper withIndex(final int index) {
        event.index = index;
        return this;
    }

    public SWTEventHelper withItem(final Widget item) {
        event.item = item;
        return this;
    }

    public SWTEventHelper withKeyCode(final int keyCode) {
        event.keyCode = keyCode;
        return this;
    }

    public SWTEventHelper withKeyLocation(final int keyLocation) {
        event.keyLocation = keyLocation;
        return this;
    }

    public SWTEventHelper withMagnification(final double magnification) {
        event.magnification = magnification;
        return this;
    }

    public SWTEventHelper withRotation(final double rotation) {
        event.rotation = rotation;
        return this;
    }

    public SWTEventHelper withText(final String text) {
        event.text = text;
        return this;
    }

    public SWTEventHelper withTime(final int time) {
        event.time = time;
        return this;
    }

    public SWTEventHelper withTouches(final Touch[] touches) {
        event.touches = touches;
        return this;
    }

    public SWTEventHelper withXDirection(final int xDirection) {
        event.xDirection = xDirection;
        return this;
    }

    public SWTEventHelper withYDirection(final int yDirection) {
        event.yDirection = yDirection;
        return this;
    }

    public void on(final Widget widget) {
        event.widget = widget;
        event.display = widget.getDisplay();
        widget.notifyListeners(event.type, event);
    }
}
TOP

Related Classes of org.erlide.ui.tests.util.SWTEventHelper

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.