001 /* 002 * Copyright 2011 The Kuali Foundation. 003 * 004 * Licensed under the Educational Community License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.opensource.org/licenses/ecl2.php 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 package org.kuali.kfs.sys.document.web; 017 018 /** 019 * A contract needed by any element that can be set to be read only 020 */ 021 public interface ReadOnlyable { 022 /** 023 * Sets any renderable element within this table joining block to be editable 024 */ 025 public abstract void setEditable(); 026 027 /** 028 * Sets any renderable element within this table joining block to be read only 029 */ 030 public abstract void readOnlyize(); 031 032 /** 033 * Determines whether is element is entirely read only or not 034 * @return true if the entire element is read only; false otherwise 035 */ 036 public abstract boolean isReadOnly(); 037 }