// Path: src/main/java/cn/nextop/thorin/rcp/support/swt/widget/xcalendar/event/XCalendarEvent.java
// public interface XCalendarEvent {
// 	
// 	Event getSource();
// 	
// 	boolean isDoit(); void setDoit(boolean doit);
// }


import cn.nextop.thorin.rcp.support.swt.widget.xcalendar.event.XCalendarEvent;
import cn.nextop.thorin.rcp.support.swt.widget.xcalendar.event.bus.internal.*;
		this.y = y;
	}
	
	/**
	 * 
	 */
	public void reset() {
		this.state = 0;
		this.x = this.y = -1;
	}
	
	public void reset(XCalendarMouseTracker rhs) {
		this.state = rhs.state;
		this.x = rhs.x; this.y = rhs.y;
	}
	
	/**
	 * 
	 */
	@Override
	public String toString() {
		return new StringBuilder()
				.append("x:" + x).append("y:" + y)
				.append("entered:" + isEntered())
				.append("pressed:" + isPressed()).toString();
	}
	
	/**
	 * 
	 */
// Path: src/main/java/cn/nextop/thorin/rcp/support/swt/widget/xcalendar/event/XCalendarEvent.java
// public interface XCalendarEvent {
// 	
// 	Event getSource();
// 	
// 	boolean isDoit(); void setDoit(boolean doit);
// }


// Path: src/main/java/cn/nextop/thorin/rcp/support/swt/widget/xcalendar/support/tracker/XCalendarMouseTracker.java
import cn.nextop.thorin.rcp.support.swt.widget.xcalendar.event.XCalendarEvent;
import cn.nextop.thorin.rcp.support.swt.widget.xcalendar.event.bus.internal.*;

		this.y = y;
	}
	
	/**
	 * 
	 */
	public void reset() {
		this.state = 0;
		this.x = this.y = -1;
	}
	
	public void reset(XCalendarMouseTracker rhs) {
		this.state = rhs.state;
		this.x = rhs.x; this.y = rhs.y;
	}
	
	/**
	 * 
	 */
	@Override
	public String toString() {
		return new StringBuilder()
				.append("x:" + x).append("y:" + y)
				.append("entered:" + isEntered())
				.append("pressed:" + isPressed()).toString();
	}
	
	/**
	 * 
	 */
	public boolean track(final XCalendarEvent event) {