1/* 2 * Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25package java.awt.peer; 26 27import java.awt.TextComponent; 28import java.awt.im.InputMethodRequests; 29 30/** 31 * The peer interface for {@link TextComponent}. 32 * 33 * The peer interfaces are intended only for use in porting 34 * the AWT. They are not intended for use by application 35 * developers, and developers should not implement peers 36 * nor invoke any of the peer methods directly on the peer 37 * instances. 38 */ 39public interface TextComponentPeer extends ComponentPeer { 40 41 /** 42 * Sets if the text component should be editable or not. 43 * 44 * @param editable {@code true} for editable text components, 45 * {@code false} for non-editable text components 46 * 47 * @see TextComponent#setEditable(boolean) 48 */ 49 void setEditable(boolean editable); 50 51 /** 52 * Returns the current content of the text component. 53 * 54 * @return the current content of the text component 55 * 56 * @see TextComponent#getText() 57 */ 58 String getText(); 59 60 /** 61 * Sets the content for the text component. 62 * 63 * @param text the content to set 64 * 65 * @see TextComponent#setText(String) 66 */ 67 void setText(String text); 68 69 /** 70 * Returns the start index of the current selection. 71 * 72 * @return the start index of the current selection 73 * 74 * @see TextComponent#getSelectionStart() 75 */ 76 int getSelectionStart(); 77 78 /** 79 * Returns the end index of the current selection. 80 * 81 * @return the end index of the current selection 82 * 83 * @see TextComponent#getSelectionEnd() 84 */ 85 int getSelectionEnd(); 86 87 /** 88 * Selects an area of the text component. 89 * 90 * @param selStart the start index of the new selection 91 * @param selEnd the end index of the new selection 92 * 93 * @see TextComponent#select(int, int) 94 */ 95 void select(int selStart, int selEnd); 96 97 /** 98 * Sets the caret position of the text component. 99 * 100 * @param pos the caret position to set 101 * 102 * @see TextComponent#setCaretPosition(int) 103 */ 104 void setCaretPosition(int pos); 105 106 /** 107 * Returns the current caret position. 108 * 109 * @return the current caret position 110 * 111 * @see TextComponent#getCaretPosition() 112 */ 113 int getCaretPosition(); 114 115 /** 116 * Returns the input method requests. 117 * 118 * @return the input method requests 119 */ 120 InputMethodRequests getInputMethodRequests(); 121} 122