001 /* 002 Copyright (C) 2001-2002 Renaud Pawlak, Laurent Martelli 003 004 This program is free software; you can redistribute it and/or modify 005 it under the terms of the GNU Lesser General Public License as 006 published by the Free Software Foundation; either version 2 of the 007 License, or (at your option) any later version. 008 009 This program is distributed in the hope that it will be useful, 010 but WITHOUT ANY WARRANTY; without even the implied warranty of 011 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 012 GNU Lesser General Public License for more details. 013 014 You should have received a copy of the GNU Lesser General Public License 015 along with this program; if not, write to the Free Software 016 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ 017 018 package org.objectweb.jac.aspects.gui; 019 020 import org.objectweb.jac.core.rtti.FieldItem; 021 022 /** 023 * This interface represents viewers for field items. */ 024 025 public interface FieldView extends View { 026 /** 027 * Sets the substance object holding the field 028 * @param substance the substance 029 * @see #getSubstance() 030 */ 031 void setSubstance(Object substance); 032 033 /** 034 * Gets the substance object holding the field 035 * @param substance the substance 036 * @see #setSubstance(Object) 037 */ 038 Object getSubstance(); 039 040 /** 041 * Sets the value to display 042 * @param value the value 043 */ 044 void setValue(Object value); 045 046 /** 047 * Sets the field being displayed 048 * @param field the field 049 */ 050 void setField(FieldItem field); 051 052 /** 053 * @return the field item 054 */ 055 FieldItem getField(); 056 057 /** 058 * Sets the auto-update property of the view. If auto-update is 059 * true (which is the default), the view registers for changes on 060 * field it displays. 061 */ 062 void setAutoUpdate(boolean autoUpdate); 063 }