1 /*******************************************************************************
2  * Copyright (c) 2000, 2003 IBM Corporation and others.
3  * All rights reserved. This program and the accompanying materials
4  * are made available under the terms of the Eclipse Public License v1.0
5  * which accompanies this distribution, and is available at
6  * http://www.eclipse.org/legal/epl-v10.html
7  *
8  * Contributors:
9  *     IBM Corporation - initial API and implementation
10  * Port to the D programming language:
11  *     Frank Benoit <benoit@tionex.de>
12  *******************************************************************************/
13 module org.eclipse.swt.custom.TextChangeListener;
14 
15 
16 import org.eclipse.swt.internal.SWTEventListener;
17 import org.eclipse.swt.custom.TextChangingEvent;
18 import org.eclipse.swt.custom.TextChangedEvent;
19 
20 /**
21  * The StyledText widget implements this listener to receive
22  * notifications when changes to the model occur.
23  * It is not intended to be implemented by clients or by
24  * implementors of StyledTextContent.
25  * Clients should listen to the ModifyEvent or ExtendedModifyEvent
26  * that is sent by the StyledText widget to receive text change
27  * notifications.
28  * Implementors of StyledTextContent should call the textChanging
29  * and textChanged methods when text changes occur as described
30  * below. If the entire text is replaced the textSet method
31  * should be called instead.
32  */
33 public interface TextChangeListener : SWTEventListener {
34 
35 /**
36  * This method is called when the content is about to be changed.
37  * Callers also need to call the textChanged method after the
38  * content change has been applied. The widget only updates the
39  * screen properly when it receives both events.
40  *
41  * @param event the text changing event. All event fields need
42  *  to be set by the sender.
43  * @see TextChangingEvent
44  */
45 public void textChanging(TextChangingEvent event);
46 /**
47  * This method is called when the content has changed.
48  * Callers need to have called the textChanging method prior to
49  * applying the content change and calling this method. The widget
50  * only updates the screen properly when it receives both events.
51  *
52  * @param event the text changed event
53  */
54 public void textChanged(TextChangedEvent event);
55 /**
56  * This method is called instead of the textChanging/textChanged
57  * combination when the entire old content has been replaced
58  * (e.g., by a call to StyledTextContent.setText()).
59  *
60  * @param event the text changed event
61  */
62 public void textSet(TextChangedEvent event);
63 }
64 
65