Spec-Zone .ru
спецификации, руководства, описания, API
|
001/* 002 * Copyright (c) 2012, 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.control; 027 028/** 029 * The abstract base class for FocusModel implementations that are used within 030 * table-like controls (most notably {@link TableView} and {@link TreeTableView}. 031 * 032 * @param <T> The type of the underlying data model for the UI control. 033 * @param <TC> The concrete subclass of {@link TableColumnBase} that is used by the 034 * underlying UI control (e.g. {@link TableColumn} or {@link TreeTableColumn}. 035 */ 036public abstract class TableFocusModel<T, TC extends TableColumnBase<T,?>> extends FocusModel<T> { 037 038 /*********************************************************************** 039 * * 040 * Public API * 041 * * 042 **********************************************************************/ 043 044 /** 045 * Causes the item at the given index to receive the focus. 046 * 047 * @param row The row index of the item to give focus to. 048 * @param column The column of the item to give focus to. Can be null. 049 */ 050 public abstract void focus(int row, TC column); 051 052 /** 053 * Tests whether the row / cell at the given location currently has the 054 * focus within the UI control. 055 */ 056 public abstract boolean isFocused(int row, TC column); 057 058 /** 059 * Attempts to move focus to the cell above the currently focused cell. 060 */ 061 public abstract void focusAboveCell(); 062 063 /** 064 * Attempts to move focus to the cell below the currently focused cell. 065 */ 066 public abstract void focusBelowCell(); 067 068 /** 069 * Attempts to move focus to the cell to the left of the currently focused cell. 070 */ 071 public abstract void focusLeftCell(); 072 073 /** 074 * Attempts to move focus to the cell to the right of the the currently focused cell. 075 */ 076 public abstract void focusRightCell(); 077 078 079 080 /*********************************************************************** 081 * * 082 * Private Implementation * 083 * * 084 **********************************************************************/ 085 086}