1 /* 2 * Copyright 2004-2008 the Seasar Foundation and the Others. 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, 13 * either express or implied. See the License for the specific language 14 * governing permissions and limitations under the License. 15 */ 16 package org.seasar.uruma.binding.enables; 17 18 import org.seasar.uruma.context.WidgetHandle; 19 20 /** 21 * 他コンポーネントの選択状態によってイネーブル状態が変化するコントロールを表すクラスです。<br /> 22 * 23 * @author bskuroneko 24 */ 25 public class EnablesDependingDef { 26 27 private WidgetHandle handle; 28 29 private String targetId; 30 31 private EnablesForType type; 32 33 /** 34 * {@link EnablesDependingDef} オブジェクトを構築します。<br /> 35 * <code>targetId</code> で指定した id を持つコンポーネントが、<code>type</code> 36 * の表す状態になった場合、<code>handle</code> がイネーブルとなります。 37 * 38 * @param handle 39 * イネーブル状態を変更するウィジットを保持する {@link WidgetHandle} 40 * @param targetId 41 * 監視するターゲットコンポーネントの id 42 * @param type 43 * <code>handle</code> をイネーブルにする条件となるターゲットコンポーネントの状態 44 */ 45 public EnablesDependingDef(final WidgetHandle handle, 46 final String targetId, final EnablesForType type) { 47 this.handle = handle; 48 this.targetId = targetId; 49 this.type = type; 50 } 51 52 /** 53 * 依存先コンポーネントのIDを取得します。<br /> 54 * 55 * @return 依存先コンポーネントのID 56 */ 57 public String getTargetId() { 58 return this.targetId; 59 } 60 61 /** 62 * イネーブル条件を取得します。<br /> 63 * 64 * @return イネーブル条件 65 */ 66 public EnablesForType getType() { 67 return this.type; 68 } 69 70 /** 71 * {@link WidgetHandle} を取得します。<br /> 72 * 73 * @return {@link WidgetHandle} オブジェクト 74 */ 75 public WidgetHandle getWidgetHandle() { 76 return this.handle; 77 } 78 }