01: /*
02: ItsNat Java Web Application Framework
03: Copyright (C) 2007 Innowhere Software Services S.L., Spanish Company
04: Author: Jose Maria Arranz Santamaria
05:
06: This program is free software: you can redistribute it and/or modify
07: it under the terms of the GNU Affero General Public License as published by
08: the Free Software Foundation, either version 3 of the License, or
09: (at your option) any later version. See the GNU Affero General Public
10: License for more details. See the copy of the GNU Affero General Public License
11: included in this program. If not, see <http://www.gnu.org/licenses/>.
12: */
13:
14: package org.itsnat.impl.comp.ui;
15:
16: import org.itsnat.comp.ItsNatButton;
17: import org.itsnat.comp.ui.ItsNatButtonUI;
18: import org.itsnat.impl.comp.ItsNatElementComponentImpl;
19:
20: /**
21: *
22: * @author jmarranz
23: */
24: public abstract class ItsNatButtonBasedUIImpl extends
25: ItsNatElementComponentUIImpl implements ItsNatButtonUI {
26: protected boolean enabled = true;
27:
28: /**
29: * Creates a new instance of ItsNatButtonBasedUIImpl
30: */
31: public ItsNatButtonBasedUIImpl(ItsNatElementComponentImpl parentComp) {
32: super (parentComp);
33: }
34:
35: public boolean isEnabled() {
36: if (domElementCanBeDisabled())
37: return !isDOMElementDisabled();
38: else
39: return enabled;
40: }
41:
42: public void setEnabled(boolean b) {
43: if (domElementCanBeDisabled())
44: setDOMElementDisabled(!b);
45: else
46: this .enabled = b;
47: }
48:
49: public ItsNatButton getItsNatButton() {
50: return (ItsNatButton) parentComp;
51: }
52:
53: public abstract void setDOMElementDisabled(boolean b);
54:
55: public abstract boolean isDOMElementDisabled();
56:
57: public abstract boolean domElementCanBeDisabled();
58: }
|