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