1 28 29 30 package com.caucho.widget; 31 32 import java.util.AbstractMap ; 33 import java.util.Collections ; 34 import java.util.List ; 35 import java.util.Map ; 36 import java.util.Set ; 37 38 41 abstract public class WidgetState 42 extends AbstractMap <String , WidgetState> 43 { 44 private Widget _widget; 45 private WidgetState _parent; 46 WidgetMode _widgetMode; 48 protected WidgetState() 49 { 50 } 51 52 void setWidget( Widget widget ) 53 { 54 _widget = widget; 55 } 56 57 public Widget getWidget() 58 { 59 return _widget; 60 } 61 62 void setParent( WidgetState parent ) 63 { 64 _parent = parent; 65 } 66 67 public WidgetState getParent() 68 { 69 return _parent; 70 } 71 72 public Set <Map.Entry <String ,WidgetState>> entrySet() 73 { 74 return (Set <Map.Entry <String ,WidgetState>>) Collections.EMPTY_SET; 75 } 76 77 public WidgetState put( String id, WidgetState value ) 78 { 79 throw new UnsupportedOperationException (); 80 } 81 82 public Object getValue() 83 { 84 throw new UnsupportedOperationException (); 85 } 86 87 91 abstract public void decode( String [] data ) 92 throws WidgetException; 93 94 abstract public String [] encode() 95 throws WidgetException; 96 97 public List <WidgetWarning> getWarnings() 98 { 99 return null; 100 } 101 102 public List <WidgetError> getErrors() 103 { 104 return null; 105 } 106 107 112 public void setWidgetMode( WidgetMode widgetMode ) 113 { 114 if ( _widget.isWidgetModeAllowed( widgetMode ) ) 115 _widgetMode = widgetMode; 116 } 117 118 122 final public WidgetMode getWidgetMode() 123 { 124 WidgetMode widgetMode = _widgetMode; 125 126 if ( widgetMode == null ) { 127 widgetMode = getWidget().getWidgetMode(); 128 129 if ( widgetMode == null ) { 130 if ( _parent != null ) 131 widgetMode = _parent.getWidgetMode(); 132 133 if ( widgetMode == null ) 134 widgetMode = WidgetMode.VIEW; 135 } 136 } 137 138 return widgetMode; 139 } 140 141 void resetAll() 142 { 143 reset(); 144 145 _widget = null; 146 _parent = null; 147 _widgetMode = null; 148 } 149 150 154 abstract public void reset(); 155 } 156 | Popular Tags |