001: /*
002: * @(#)PageEvent.java
003: *
004: * Copyright 2002 - 2003 JIDE Software Inc. All rights reserved.
005: */
006: package com.jidesoft.dialog;
007:
008: import java.awt.*;
009: import java.util.EventObject;
010:
011: /**
012: * An <code>EventObject</code> that adds support for
013: * <code>AbstractPage</code> objects as the event source.
014: */
015: public class PageEvent extends EventObject {
016:
017: /**
018: * The first number in the range of IDs used for <code>AbstractPage</code> events.
019: */
020: public static final int PAGE_EVENT_FIRST = AWTEvent.RESERVED_ID_MAX + 5100;
021:
022: /**
023: * The last number in the range of IDs used for <code>AbstractPage</code> events.
024: */
025: public static final int PAGE_EVENT_LAST = PAGE_EVENT_FIRST + 4;
026:
027: /**
028: * This event is delivered when the the data becomes invalid.
029: */
030: public static final int PAGE_OPENED = 0 + PAGE_EVENT_FIRST;
031:
032: /**
033: * This event is delivered when the page is about to close.
034: */
035: public static final int PAGE_CLOSING = 1 + PAGE_EVENT_FIRST;
036:
037: /**
038: * This event is delivered when the page is closed.
039: */
040: public static final int PAGE_CLOSED = 2 + PAGE_EVENT_FIRST;
041:
042: private int _id;
043:
044: /**
045: * Constructs an <code>AbstractPageEvent</code> object.
046: *
047: * @param source the <code>AbstractPage</code> object that originated the event
048: * @param id an integer indicating the type of event
049: */
050: public PageEvent(Object source, int id) {
051: super (source);
052: _id = id;
053: }
054:
055: /**
056: * Returns the event type.
057: *
058: * @return event id.
059: */
060: public int getID() {
061: return _id;
062: }
063:
064: /**
065: * Sets event type.
066: *
067: * @param id
068: */
069: public void setID(int id) {
070: _id = id;
071: }
072:
073: /**
074: * Returns a parameter string identifying this event.
075: * This method is useful for event logging and for debugging.
076: *
077: * @return a string identifying the event and its attributes
078: */
079: public String paramString() {
080: String typeStr;
081: switch (getID()) {
082: case PAGE_OPENED:
083: typeStr = "PAGE_OPENED";
084: break;
085: case PAGE_CLOSING:
086: typeStr = "PAGE_CLOSING";
087: break;
088: case PAGE_CLOSED:
089: typeStr = "PAGE_CLOSED";
090: break;
091: default:
092: typeStr = "PAGE_EVENT_UNKNOWN";
093: }
094: return typeStr;
095: }
096:
097: @Override
098: public String toString() {
099: return "PageEvent{" + "id=" + paramString() + "}";
100: }
101: }
|