1 /*
2 * Scope: a generic MVC framework.
3 * Copyright (c) 2000-2002, The Scope team
4 * All rights reserved.
5 *
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
9 * are met:
10 *
11 * Redistributions of source code must retain the above copyright
12 * notice, this list of conditions and the following disclaimer.
13 *
14 * Redistributions in binary form must reproduce the above copyright
15 * notice, this list of conditions and the following disclaimer in the
16 * documentation and/or other materials provided with the distribution.
17 *
18 * Neither the name "Scope" nor the names of its contributors
19 * may be used to endorse or promote products derived from this software
20 * without specific prior written permission.
21 *
22 *
23 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
26 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
27 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
28 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
29 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
30 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
31 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
32 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
33 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34 *
35 *
36 * $Id: ModelChangeEvent.java,v 1.6 2002/09/11 19:12:29 ludovicc Exp $
37 */
38 package org.scopemvc.core;
39
40
41 /***
42 * <P>
43 *
44 * Event that is broadcasted to notify interested {@link ModelChangeListener}s
45 * of a change in state of a model object implementing {@link
46 * ModelChangeEventSource}. It contains:
47 * <UL>
48 * <LI> the source of the event (ie the model object that changed), </LI>
49 * <LI> the {@link Selector} identifying the property that changed, </LI>
50 * <LI> and a 'type' of change (see {@link ModelChangeTypes}). </LI>
51 * </UL>
52 * </P> <P>
53 *
54 * Note that the event does not contain the actual data that changed, unlike
55 * JavaBeans PropertyChangeEvent. </P>
56 *
57 * @author <A HREF="mailto:smeyfroi@users.sourceforge.net">Steve Meyfroidt</A>
58 * @created 05 August 2002
59 * @version $Revision: 1.6 $ $Date: 2002/09/11 19:12:29 $
60 * @see ModelChangeEventSource
61 * @see Selector
62 * @see ModelChangeListener
63 * @see org.scopemvc.model.basic.BasicModel
64 */
65 public interface ModelChangeEvent extends ModelChangeTypes {
66
67 /***
68 * Set the type of change this event notifies of.
69 *
70 * @param inType type of change.
71 * @see ModelChangeTypes
72 */
73 void setType(int inType);
74
75
76 /***
77 * Return the type of change this event notifies.
78 *
79 * @return type of change.
80 * @see ModelChangeTypes
81 */
82 int getType();
83
84
85 /***
86 * Set the source of this event.
87 *
88 * @param inModel source Model of this event.
89 */
90 void setModel(ModelChangeEventSource inModel);
91
92
93 /***
94 * Get the source Model of this event.
95 *
96 * @return the source Model of this event.
97 */
98 ModelChangeEventSource getModel();
99
100
101 /***
102 * Set the Selector representing the contents that changed to cause
103 * broadcast of this event.
104 *
105 * @param inSelector Selector for contents that changed.
106 */
107 void setSelector(Selector inSelector);
108
109
110 /***
111 * Get the Selector for the contents that changed to cause broadcast of this
112 * event.
113 *
114 * @return the selector representing the contents that changed.
115 */
116 Selector getSelector();
117 }
118
This page was automatically generated by Maven