Spec-Zone .ru
спецификации, руководства, описания, API
001/*
002 * Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
003 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
004 *
005 * This code is free software; you can redistribute it and/or modify it
006 * under the terms of the GNU General Public License version 2 only, as
007 * published by the Free Software Foundation.  Oracle designates this
008 * particular file as subject to the "Classpath" exception as provided
009 * by Oracle in the LICENSE file that accompanied this code.
010 *
011 * This code is distributed in the hope that it will be useful, but WITHOUT
012 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
013 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
014 * version 2 for more details (a copy is included in the LICENSE file that
015 * accompanied this code).
016 *
017 * You should have received a copy of the GNU General Public License version
018 * 2 along with this work; if not, write to the Free Software Foundation,
019 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
020 *
021 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
022 * or visit www.oracle.com if you need additional information or have any
023 * questions.
024 */
025
026package javafx.scene.input;
027
028import java.io.Serializable;
029
030/**
031 * Represents a single run in which the characters have the same 
032 * set of highlights in the input method text.
033 * <p>
034 * Note: this is a conditional feature. See
035 * {@link javafx.application.ConditionalFeature#INPUT_METHOD ConditionalFeature.INPUT_METHOD}
036 * for more information.
037 */
038public class InputMethodTextRun implements Serializable {
039
040    /**
041     * Constructs a single text run of an input method.
042     * @param text the text in the text run
043     * @param highlight the highlighting of the text
044     */
045    public InputMethodTextRun(String text,
046            InputMethodHighlight highlight) {
047        this.text = text;
048        this.highlight = highlight;
049    }
050    /**
051     * The text in this run.
052     *
053     * @defaultValue empty string
054     */
055    private final String text;
056
057    /**
058     * Gets the text in this run.
059     * @return the text in this run
060     */
061    public final String getText() {
062        return text;
063    }
064    /**
065     * The highlight used for displaying this text.
066     *
067     * @defaultValue null
068     */
069    private final InputMethodHighlight highlight;
070
071    /**
072     * Gets the highlight used for displaying this text.
073     * @return the highlight used for displaying this text
074     */
075    public final InputMethodHighlight getHighlight() {
076        return highlight;
077    }
078
079    /**
080     * Returns a string representation of this {@code InputMethodTextRun} object.
081     * @return a string representation of this {@code InputMethodTextRun} object.
082     */ 
083    @Override public String toString() {
084        return "InputMethodTextRun text [" + getText()
085                + "], highlight [" + getHighlight() + "]";
086    }
087}