TableModel.java
上传用户:haobig99
上传日期:2022-06-15
资源大小:369k
文件大小:3k
源码类别:

J2ME

开发平台:

Java

  1. /*
  2.  * Copyright 2008 Sun Microsystems, Inc.  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.  Sun designates this
  8.  * particular file as subject to the "Classpath" exception as provided
  9.  * by Sun 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 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
  22.  * CA 95054 USA or visit www.sun.com if you need additional information or
  23.  * have any questions.
  24.  */
  25. package com.sun.lwuit.table;
  26. import com.sun.lwuit.events.DataChangedListener;
  27. /**
  28.  * The table and table model class are complimentry classes allowing the quick construction
  29.  * of tabular data controls. The table model represents the data source according to which
  30.  * the table is constructed.
  31.  *
  32.  * @author Shai Almog
  33.  */
  34. public interface TableModel {
  35.     /**
  36.      * Returns the number of rows in the table
  37.      *
  38.      * @return the number of rows in the table
  39.      */
  40.     public int getRowCount();
  41.     /**
  42.      * Returns the number of columns in the table
  43.      *
  44.      * @return the number of columns in the table
  45.      */
  46.     public int getColumnCount();
  47.     /**
  48.      * Returns the name of the column at the given offset
  49.      *
  50.      * @param i the offset for the column name
  51.      * @return name to display at the top of the table
  52.      */
  53.     public String getColumnName(int i);
  54.     /**
  55.      * Returns true if the cell at the given location is an editable cell
  56.      *
  57.      * @param row the cell row
  58.      * @param column the cell column
  59.      * @return true if the cell at the given location is an editable cell
  60.      */
  61.     public boolean isCellEditable(int row, int column);
  62.     /**
  63.      * Returns the value of the cell at the given location
  64.      *
  65.      * @param row the cell row
  66.      * @param column the cell column
  67.      * @return the value of the cell at the given location
  68.      */
  69.     public Object getValueAt(int row, int column);
  70.     /**
  71.      * Sets the value of the cell at the given location
  72.      *
  73.      * @param row the cell row
  74.      * @param column the cell column
  75.      * @param o the value of the cell at the given location 
  76.      */
  77.     public void setValueAt(int row, int column, Object o);
  78.     /**
  79.      * Adds a listener to the data changed event
  80.      *
  81.      * @param d the new listener
  82.      */
  83.     public void addDataChangeListener(DataChangedListener d);
  84.     /**
  85.      * Removes a listener to the data changed event
  86.      *
  87.      * @param d the listener to remove
  88.      */
  89.     public void removeDataChangeListener(DataChangedListener d);
  90. }