001: /*
002: * Copyright (c) 2004 JETA Software, Inc. All rights reserved.
003: *
004: * Redistribution and use in source and binary forms, with or without modification,
005: * are permitted provided that the following conditions are met:
006: *
007: * o Redistributions of source code must retain the above copyright notice,
008: * this list of conditions and the following disclaimer.
009: *
010: * o Redistributions in binary form must reproduce the above copyright notice,
011: * this list of conditions and the following disclaimer in the documentation
012: * and/or other materials provided with the distribution.
013: *
014: * o Neither the name of JETA Software nor the names of its contributors may
015: * be used to endorse or promote products derived from this software without
016: * specific prior written permission.
017: *
018: * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
019: * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
020: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
021: * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
022: * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
023: * INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
024: * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
025: * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
026: * INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
027: * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
028: */
029:
030: package com.jeta.forms.gui.form;
031:
032: /**
033: * A <code>GridCellEvent</code> gets fired when a GridComponent changes or is
034: * selected. The GridComponent is responsible for firing the event. This event
035: * is only required during design mode.
036: *
037: * @author Jeff Tassin
038: */
039: public class GridCellEvent {
040: /**
041: * event ids
042: */
043: public static final int CELL_CHANGED = 1;
044: public static final int EDIT_COMPONENT = 2;
045: public static final int CELL_SELECTED = 3;
046:
047: /**
048: * common commands
049: */
050: public static final String COMPONENT_NAME_CHANGED = "component.name.changed";
051:
052: /**
053: * The id for the event
054: */
055: private int m_id;
056:
057: /** the source for the event */
058: private GridComponent m_source;
059:
060: /**
061: * A specific command for the event. This allows for greater specificity of
062: * a given event id.
063: */
064: private String m_command;
065:
066: /**
067: * Creates a <code>GridCellEvent</code> with the specified id and grid
068: * component.
069: */
070: public GridCellEvent(int id, GridComponent gc) {
071: m_id = id;
072: m_source = gc;
073: }
074:
075: /**
076: * Creates a <code>GridCellEvent</code> with the specified id and grid
077: * component.
078: *
079: * @param id
080: * the id for this event
081: * @param gc
082: * the GridComponent associated with this event
083: * @param cmd
084: * an optional command to associate with this event.
085: */
086: public GridCellEvent(int id, GridComponent gc, String cmd) {
087: m_id = id;
088: m_source = gc;
089: m_command = cmd;
090: }
091:
092: /**
093: * Returns the event identifier. either: CELL_CHANGED, EDIT_COMPONENT,
094: * CELL_SELECTED
095: */
096: public int getId() {
097: return m_id;
098: }
099:
100: /**
101: * Returns an optional command associated with the event id. Can be null.
102: */
103: public String getCommand() {
104: return m_command;
105: }
106:
107: /**
108: * @return the source for the grid component
109: */
110: public GridComponent getSource() {
111: return m_source;
112: }
113:
114: /**
115: * Sets the source for this event.
116: */
117: void setSource(GridComponent src) {
118: m_source = src;
119: }
120: }
|