diff options
author | Tom Tromey <tromey@redhat.com> | 2005-07-16 01:27:14 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2005-07-16 01:27:14 +0000 |
commit | b0fa81eea9a270f23d6ad67ca7a6d25c18d20da1 (patch) | |
tree | 8762d1f992e2f725a6bde1ff966ed6f1e5f4f823 /libjava/java/awt/im/spi/InputMethod.java | |
parent | ea54b29342c8506acb4f858c68340c44b72e3532 (diff) | |
download | gcc-b0fa81eea9a270f23d6ad67ca7a6d25c18d20da1.zip gcc-b0fa81eea9a270f23d6ad67ca7a6d25c18d20da1.tar.gz gcc-b0fa81eea9a270f23d6ad67ca7a6d25c18d20da1.tar.bz2 |
Major merge with Classpath.
Removed many duplicate files.
* HACKING: Updated.x
* classpath: Imported new directory.
* standard.omit: New file.
* Makefile.in, aclocal.m4, configure: Rebuilt.
* sources.am: New file.
* configure.ac: Run Classpath configure script. Moved code around
to support. Disable xlib AWT peers (temporarily).
* Makefile.am (SUBDIRS): Added 'classpath'
(JAVAC): Removed.
(AM_CPPFLAGS): Added more -I options.
(BOOTCLASSPATH): Simplified.
Completely redid how sources are built.
Include sources.am.
* include/Makefile.am (tool_include__HEADERS): Removed jni.h.
* include/jni.h: Removed (in Classpath).
* scripts/classes.pl: Updated to look at built classes.
* scripts/makemake.tcl: New file.
* testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Added
-I options.
(gcj_jni_invocation_compile_c_to_binary): Likewise.
From-SVN: r102082
Diffstat (limited to 'libjava/java/awt/im/spi/InputMethod.java')
-rw-r--r-- | libjava/java/awt/im/spi/InputMethod.java | 240 |
1 files changed, 0 insertions, 240 deletions
diff --git a/libjava/java/awt/im/spi/InputMethod.java b/libjava/java/awt/im/spi/InputMethod.java deleted file mode 100644 index 840d193..0000000 --- a/libjava/java/awt/im/spi/InputMethod.java +++ /dev/null @@ -1,240 +0,0 @@ -/* InputMethod.java -- defines an interface for complex text input - Copyright (C) 2002, 2005 Free Software Foundation, Inc. - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - -package java.awt.im.spi; - -import java.awt.AWTEvent; -import java.awt.Rectangle; -import java.util.Locale; - -/** - * This interface supports complex text input, often for situations where - * the text is more complex than a keyboard will accomodate. For example, - * this can be used for Chinese, Japanese, and Korean, where multiple - * keystrokes are necessary to compose text. This could also support things - * like phonetic English, or reordering Thai. - * - * <p>These contexts can be loaded by the input method framework, using - * {@link InputContext#selectInputMethod(Locale)}. - * - * @author Eric Blake (ebb9@email.byu.edu) - * @since 1.3 - * @status updated to 1.4 - */ -public interface InputMethod -{ - /** - * Set the input method context, which ties the input method to a client - * component. This is called once automatically when creating the input - * method. - * - * @param context the context for this input method - * @throws NullPointerException if context is null - */ - void setInputMethodContext(InputMethodContext context); - - /** - * Sets the input locale. If the input method supports that locale, it - * changes its behavior to be consistent with the locale and returns true. - * Otherwise, it returns false. This is called by - * {@link InputContext#selectInputMethod(Locale)} when the user specifies - * a locale, or when the previously selected input method had a locale. - * - * @param locale the locale to use for input - * @return true if the change is successful - * @throws NullPointerException if locale is null - */ - boolean setLocale(Locale locale); - - /** - * Returns the current input locale, or null if none is defined. This is - * called by {@link InputContext#getLocale()}, or before switching input - * methods. - * - * @return the current input locale, or null - */ - Locale getLocale(); - - /** - * Sets the allowed Unicode subsets that this input method can use. Null - * indicates that all characters are allowed. This is called after creation, - * or when switching to this input method, by - * {@link InputContext#setCharacterSubsets(Character.Subset[])}. - * - * @param subsets the accepted subsets for this input method, or null for all - */ - void setCharacterSubsets(Character.Subset[] subsets); - - /** - * Changes the enabled status of this input method. An enabled input method - * accepts incoming events for composition and control purposes, while a - * disabled input method ignores events (except for control purposes). This - * is called by {@link InputContext#setCompositionEnabled(boolean)} or when - * switching from an input method if the previous input method returned - * without exception on {@link #isCompositionEnabled()}. - * - * @param enable whether to enable this input method - * @throws UnsupportedOperationException if enabling/disabling is unsupported - * @see #isCompositionEnabled() - */ - void setCompositionEnabled(boolean enable); - - /** - * Find out if this input method is enabled. This is called by - * {@link InputContext#isCompositionEnabled()}, or when switching input - * methods via {@link InputContext#selectInputMethod(Locale)}. - * - * @return true if this input method is enabled - * @throws UnsupportedOperationException if enabling/disabling is unsupported - * @see #setCompositionEnabled(boolean) - */ - boolean isCompositionEnabled(); - - /** - * Starts a reconversion operation. The input method gets its text from the - * client, using {@link InputMethodRequests#getSelectedText(Attribute[])}. - * Then the composed and committed text produced by the operation is sent - * back to the client using a sequence of InputMethodEvents. This is called - * by {@link InputContext#reconvert()}. - * - * @throws UnsupportedOperationException if reconversion is unsupported - */ - void reconvert(); - - /** - * Dispatch an event to the input method. If input method support is enabled, - * certain events are dispatched to the input method before the client - * component or event listeners. The input method must either consume the - * event or pass it on to the component. Instances of InputEvent, including - * KeyEvent and MouseEvent, are given to this input method. This method is - * called by {@link InputContext#dispatchEvent(AWTEvent)}. - * - * @param event the event to dispatch - * @throws NullPointerException if event is null - */ - void dispatchEvent(AWTEvent event); - - /** - * Notify this input method of changes in the client window. This is called - * when notifications are enabled (see {@link - * InputMethodContext#enableClientWindowNotification(InputMethod, boolean)}, - * if {@link #removeNotify(Component)} has not been called. The following - * situations trigger a notification:<ul> - * <li>The client window changes in location, size, visibility, - * iconification, or is closed.</li> - * <li>When enabling client notification (or on the first activation after - * enabling if no client existed at the time).</li> - * <li>When activating a new client after <code>removeNotify</code> was - * called on a previous client.</li> - * </ul> - * - * @param bounds the client window's current bounds, or null - */ - void notifyClientWindowChange(Rectangle bounds); - - /** - * Activate this input method for input processing. If the input method - * provides its own windows, it should make them open and visible at this - * time. This method is called when a client component receives a - * FOCUS_GAINED event, or when switching to this input method from another - * one. It is only called when the input method is inactive, assuming that - * new instances begin in an inactive state. - */ - void activate(); - - /** - * Deactivate this input method, either temporarily or permanently for the - * given client. If the input method provides its own windows, it should - * only close those related to the current composition (such as a lookup - * choice panel), while leaving more persistant windows (like a control - * panel) open to avoid screen flicker. Before control is given to another - * input method, {@link #hideWindows()} will be called on this instance. - * This method is called when a client component receives a - * FOCUS_LOST event, when switching to another input method, or before - * {@link #removeNotify()} when the client is removed. - * - * @param isTemporary true if the focus change is temporary - */ - void deactivate(boolean isTemporary); - - /** - * Close or hide all windows opened by this input method. This is called - * before activating a different input method, and before calling - * {@link #dispose()} on this instance. It is only called when the input - * method is inactive. - */ - void hideWindows(); - - /** - * Notify the input method that a client component has been removed from its - * hierarchy, or that input method support has been disabled. This is - * called by {@link InputContext#removeNotify()}, and only when the input - * method is inactive. - */ - void removeNotify(); - - /** - * End any input composition currently taking place. Depending on the - * platform and user preferences, this may commit or delete uncommitted text, - * using input method events. This may be called for a variety of reasons, - * such as when the user moves the insertion point in the client text outside - * the range of the composed text, or when text is saved to file. This is - * called by {@link InputContext#endComposition()}, when switching to a - * new input method, or by {@link InputContext#selectInputMethod(Locale)}. - */ - void endComposition(); - - /** - * Disposes the input method and release any resources it is using. In - * particular, the input method should dispose windows and close files. This - * is called by {@link InputContext#dispose()}, when the input method is - * inactive; and nothing will be called on this instance afterwards. - */ - void dispose(); - - /** - * Returns a control object from this input method, or null. A control object - * provides method to control the behavior of this input method, as well as - * query information about it. The object is implementation dependent, so - * clients must compare the result against known input method control - * object types. This is called by - * {@link InputContext#getInputMethodControlObject()}. - * - * @return the control object, or null - */ - Object getControlObject(); -} // interface InputMethod |