Author: lgiessmann Date: Tue Jul 5 09:41:31 2011 New Revision: 560
Log: gdl-frontend: Widgets: added diverse methods to GdlText
Added: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/environment/MultipleHandlerRegistration.java branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/values/ResizeValue.java Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/GdlVisibleObject.java branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/IGdlHasValue.java branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/TestClass.java branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/text/GdlText.java branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/text/GdlTextObject.java
Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/GdlVisibleObject.java ============================================================================== --- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/GdlVisibleObject.java Mon Jul 4 23:59:48 2011 (r559) +++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/GdlVisibleObject.java Tue Jul 5 09:41:31 2011 (r560) @@ -1087,7 +1087,7 @@ }else if(value.equals("SCROLL")){ return Overflow.SCROLL; }else { - throw new InvalidGdlSchemaException("cursor must be set to one of visible, hidden or scroll, but is " + overflowOcc.getValue()); + throw new InvalidGdlSchemaException("overflow must be set to one of visible, hidden or scroll, but is " + overflowOcc.getValue()); } } } @@ -1516,6 +1516,9 @@ private ArrayList<Pair<String, String>> cssNameAndValues = new ArrayList<Pair<String,String>>(); private ArrayList<Pair<String, String>> cssPreviousNameAndValues = new ArrayList<Pair<String,String>>(); + + public CssStyleHandler() {} +
// adds a CSS name value pair public void addCssStyle(Pair<String, String> cssNameAndValue) { @@ -1550,7 +1553,11 @@ // this class is used to set the style of focused elements protected class FocusStyleHandler extends CssStyleHandler implements FocusHandler, BlurHandler{ - + public FocusStyleHandler() { + super(); + } + + @Override public void onFocus(FocusEvent event) { super.setStyles(); @@ -1566,12 +1573,17 @@ // this class is used to set the style of hovered elements protected class HoverStyleHandler extends CssStyleHandler implements MouseOverHandler, MouseOutHandler { - + public HoverStyleHandler() { + super(); + } + + @Override public void onMouseOut(MouseOutEvent event) { super.unsetStyles(); }
+ @Override public void onMouseOver(MouseOverEvent event) { super.setStyles(); @@ -1581,6 +1593,9 @@ // this class is used to set the style of active elements protected class ActiveStyleHandler extends CssStyleHandler implements MouseDownHandler, MouseUpHandler { + public ActiveStyleHandler() { + super(); + }
@Override @@ -1588,6 +1603,7 @@ super.unsetStyles(); }
+ @Override public void onMouseDown(MouseDownEvent event) { super.setStyles();
Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/IGdlHasValue.java ============================================================================== --- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/IGdlHasValue.java Mon Jul 4 23:59:48 2011 (r559) +++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/IGdlHasValue.java Tue Jul 5 09:41:31 2011 (r560) @@ -1,11 +1,14 @@ package us.isidor.gdl.anaToMia.Widgets.base;
+import java.util.ArrayList; + import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Construct; import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.TopicMapsTypes; +import us.isidor.gdl.anaToMia.Widgets.environment.Pair;
public interface IGdlHasValue { - public String getStringValue(); - public Construct getTmValue(); - public TopicMapsTypes getTmType(); // null if it is a String value + public ArrayList<String> getStringValue(); + public ArrayList<Pair<TopicMapsTypes, Object>> getTmValue(); // TopicMapsTypes is null if the acual value is a string + public boolean validate(); }
Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/TestClass.java ============================================================================== --- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/TestClass.java Mon Jul 4 23:59:48 2011 (r559) +++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/TestClass.java Tue Jul 5 09:41:31 2011 (r560) @@ -4,6 +4,7 @@ import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Occurrence; import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Topic; import us.isidor.gdl.anaToMia.Widgets.isidorus.LoadSchemaCallback; +import us.isidor.gdl.anaToMia.Widgets.text.GdlText; import us.isidor.gdl.anaToMia.Widgets.text.GdlTextObject; import us.isidor.gdl.anaToMia.Widgets.values.CursorValue; import com.google.gwt.core.client.EntryPoint; @@ -76,6 +77,9 @@ Topic gdlHover = gdlPanel.getSchemaTm().createTopicBySubjectIdentifier(gdlPanel.getSchemaTm().createLocator(GdlPsis.Scope.gdlHover)); Topic gdlActive = gdlPanel.getSchemaTm().createTopicBySubjectIdentifier(gdlPanel.getSchemaTm().createLocator(GdlPsis.Scope.gdlActive)); Topic gdlFocus = gdlPanel.getSchemaTm().createTopicBySubjectIdentifier(gdlPanel.getSchemaTm().createLocator(GdlPsis.Scope.gdlFocus)); + Topic gdlReadonly = gdlPanel.getSchemaTm().createTopicBySubjectIdentifier(gdlPanel.getSchemaTm().createLocator(GdlPsis.OccurrenceType.gdlReadonly)); + Topic gdlResize = gdlPanel.getSchemaTm().createTopicBySubjectIdentifier(gdlPanel.getSchemaTm().createLocator(GdlPsis.OccurrenceType.gdlResize)); + Topic gdlOverflow = gdlPanel.getSchemaTm().createTopicBySubjectIdentifier(gdlPanel.getSchemaTm().createLocator(GdlPsis.OccurrenceType.gdlOverflow)); tmpRepresentative.createOccurrence(gdlBackgroundColor, "red", null); @@ -94,19 +98,22 @@ tmpRepresentative.createOccurrence(gdlBorderBottomColor, "rgb(100%, 100%, 0%)", null); tmpRepresentative.createOccurrence(gdlBorderStyle, "dashed", null); tmpRepresentative.createOccurrence(gdlBorderWidth, "5px", null); - Occurrence bgcHover = tmpRepresentative.createOccurrence(gdlBackgroundColor, "green", null); - bgcHover.addTheme(gdlHover); - Occurrence bgcActive = tmpRepresentative.createOccurrence(gdlBackgroundColor, "purple", null); - bgcActive.addTheme(gdlActive); - Occurrence bgcFocus = tmpRepresentative.createOccurrence(gdlBackgroundColor, "silver", null); - bgcFocus.addTheme(gdlFocus); + tmpRepresentative.createOccurrence(gdlReadonly, "false", null); + tmpRepresentative.createOccurrence(gdlResize, "both", null); + tmpRepresentative.createOccurrence(gdlOverflow, "hidden", null); tmpRepresentative.createOccurrence(gdlFontSize, "15pt", null); - Occurrence fsHover = tmpRepresentative.createOccurrence(gdlFontSize, "25pt", null); - fsHover.addTheme(gdlHover); + //Occurrence bgcHover = tmpRepresentative.createOccurrence(gdlBackgroundColor, "green", null); + //bgcHover.addTheme(gdlHover); + //Occurrence bgcActive = tmpRepresentative.createOccurrence(gdlBackgroundColor, "purple", null); + //bgcActive.addTheme(gdlActive); + //Occurrence bgcFocus = tmpRepresentative.createOccurrence(gdlBackgroundColor, "silver", null); + //bgcFocus.addTheme(gdlFocus); + //Occurrence fsHover = tmpRepresentative.createOccurrence(gdlFontSize, "25pt", null); + //fsHover.addTheme(gdlHover); - GdlTextObject tmp = new GdlTextObject(tmpRepresentative){}; + GdlText tmp = new GdlText(tmpRepresentative){}; this.mainPanel.add(tmp); }catch(Exception e){ e.printStackTrace();
Added: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/environment/MultipleHandlerRegistration.java ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/environment/MultipleHandlerRegistration.java Tue Jul 5 09:41:31 2011 (r560) @@ -0,0 +1,23 @@ +package us.isidor.gdl.anaToMia.Widgets.environment; + +import java.util.ArrayList; + +import com.google.gwt.event.shared.HandlerRegistration; + +public class MultipleHandlerRegistration implements HandlerRegistration { + private ArrayList<HandlerRegistration> registrations = new ArrayList<HandlerRegistration>(); + + + @Override + public void removeHandler() { + for (HandlerRegistration reg : this.registrations) { + reg.removeHandler(); + } + } + + + public void addHandlerRegistration(HandlerRegistration registration){ + this.registrations.add(registration); + } + +}
Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/text/GdlText.java ============================================================================== --- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/text/GdlText.java Mon Jul 4 23:59:48 2011 (r559) +++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/text/GdlText.java Tue Jul 5 09:41:31 2011 (r560) @@ -1,31 +1,118 @@ package us.isidor.gdl.anaToMia.Widgets.text;
-import com.google.gwt.dom.client.Style.Display;
+import java.util.ArrayList; +import com.google.gwt.dom.client.Style.FontStyle; +import com.google.gwt.event.dom.client.BlurHandler; +import com.google.gwt.event.dom.client.FocusHandler; +import com.google.gwt.event.dom.client.KeyPressEvent; +import com.google.gwt.event.dom.client.KeyPressHandler; +import com.google.gwt.event.dom.client.MouseDownHandler; +import com.google.gwt.event.dom.client.MouseOutHandler; +import com.google.gwt.event.dom.client.MouseOverHandler; +import com.google.gwt.event.dom.client.MouseUpHandler; +import com.google.gwt.event.shared.HandlerRegistration; +import com.google.gwt.user.client.DOM; +import com.google.gwt.user.client.Window; +import com.google.gwt.user.client.ui.TextArea; import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Construct; import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Occurrence; import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Topic; import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.TopicMapsTypes; import us.isidor.gdl.anaToMia.Widgets.base.GdlPsis; +import us.isidor.gdl.anaToMia.Widgets.base.GdlVisibleObject; import us.isidor.gdl.anaToMia.Widgets.base.IGdlHasValue; import us.isidor.gdl.anaToMia.Widgets.environment.ExecutionException; import us.isidor.gdl.anaToMia.Widgets.environment.InvalidGdlSchemaException; +import us.isidor.gdl.anaToMia.Widgets.environment.MultipleHandlerRegistration; +import us.isidor.gdl.anaToMia.Widgets.environment.Pair; +import us.isidor.gdl.anaToMia.Widgets.values.AbsoluteNumValue; +import us.isidor.gdl.anaToMia.Widgets.values.AutoNumUnitValue; +import us.isidor.gdl.anaToMia.Widgets.values.AutoNumValue; +import us.isidor.gdl.anaToMia.Widgets.values.BorderStyleValue; +import us.isidor.gdl.anaToMia.Widgets.values.ColorValue; +import us.isidor.gdl.anaToMia.Widgets.values.CursorValue; +import us.isidor.gdl.anaToMia.Widgets.values.DirectionValue; +import us.isidor.gdl.anaToMia.Widgets.values.FontWeightValue; +import us.isidor.gdl.anaToMia.Widgets.values.NormalNumUnitValue; +import us.isidor.gdl.anaToMia.Widgets.values.NumUnitValue; +import us.isidor.gdl.anaToMia.Widgets.values.PositiveNumUnitValue; +import us.isidor.gdl.anaToMia.Widgets.values.ResizeValue; +import us.isidor.gdl.anaToMia.Widgets.values.TextAlignValue; +import us.isidor.gdl.anaToMia.Widgets.values.TextDecorationValue; import us.isidor.gdl.anaToMia.Widgets.values.TextTypeValue;
-public class GdlText extends GdlTextObject implements IGdlHasValue{
+ +public class GdlText extends GdlTextObject implements IGdlHasValue{ + protected ArrayList<TextArea> textElements = new ArrayList<TextArea>(); + protected ArrayList<PasswordKeyPressHandler> passwordKeyPressHandler = null; + protected ArrayList<HandlerRegistration> passwordKeyPressRegistrations = null; + protected ArrayList<Pair<TextArea, ActiveStyleHandler>> activeStyleHandler = new ArrayList<Pair<TextArea,ActiveStyleHandler>>(); + protected ArrayList<Pair<TextArea, FocusStyleHandler>> focusStyleHandler = new ArrayList<Pair<TextArea,FocusStyleHandler>>(); + protected ArrayList<Pair<TextArea, HoverStyleHandler>> hoverStyleHandler = new ArrayList<Pair<TextArea,HoverStyleHandler>>(); + + + // TODO: check ActiveHandler, FocusHandler and HoverHandler for bugs ==> click event! + // some constructors - protected GdlText(){ + protected GdlText() throws InvalidGdlSchemaException, ExecutionException { super(); } public GdlText(Topic tmRepresentative) throws InvalidGdlSchemaException, ExecutionException{ - super(tmRepresentative); + this(); + this.tmRepresentative = tmRepresentative; + this.tm = this.tmRepresentative.getTopicMap(); + super.setId(this.getId()); + // TODO: create a text element for each TM-elem + this.createNewTextArea(); } + // creates a new TextArea item, adds it to the textElements array, + // and applies the styles on it + protected TextArea createNewTextArea() throws InvalidGdlSchemaException, ExecutionException { + TextArea elem = new TextArea(); + this.textElements.add(elem); + DOM.setElementAttribute(elem.getElement(), "id", this.getId() + "__GDL_" + this.textElements.size()); + super.mainPanel.add(elem); + this.setContentGdlStyle(elem); + + // TODO: reset the text area size on each text element + return elem; + } + + + // removes the passed element and all its handlers from the outer element + protected void removeTextArea(TextArea elem){ + for (Pair<TextArea, ActiveStyleHandler> item : this.activeStyleHandler) { + if(item.getFirst().equals(elem)){ + this.activeStyleHandler.remove(item); + break; + } + } + for (Pair<TextArea, FocusStyleHandler> item : this.focusStyleHandler) { + if(item.getFirst().equals(elem)){ + this.focusStyleHandler.remove(item); + break; + } + } + for (Pair<TextArea, HoverStyleHandler> item : this.hoverStyleHandler) { + if(item.getFirst().equals(elem)){ + this.hoverStyleHandler.remove(item); + break; + } + } + + this.textElements.remove(elem); + elem.removeFromParent(); + + // TODO: reset the text area size on each text element + } + // returns a TextType instance of a gdl:text-type occurrence. // If no gdl:text-type occurrence is set, the default value is returned @@ -46,7 +133,7 @@ // returns a boolean instance of a gdl:readonly occurrence. // If no gdl:readonly occurrence is set, the default value is returned - public boolean getReadnonly() throws InvalidGdlSchemaException { + public boolean getReadonly() throws InvalidGdlSchemaException { Occurrence readOnlyOcc = getNoneOrOneUnscopedOccurrence(GdlPsis.OccurrenceType.gdlReadonly);
if(readOnlyOcc != null){ @@ -64,7 +151,6 @@ } - // returns a boolean instance of a gdl:rows occurrence. // If no gdl:rows occurrence is set, the default value is returned public int getRows() throws InvalidGdlSchemaException { @@ -105,56 +191,768 @@ // returns a boolean instance of a gdl:resize occurrence. // If no gdl:resize occurrence is set, the default value is returned - public boolean getResize() throws InvalidGdlSchemaException { + public ResizeValue getResize() throws InvalidGdlSchemaException { Occurrence resizeOcc = getNoneOrOneUnscopedOccurrence(GdlPsis.OccurrenceType.gdlResize);
if(resizeOcc != null){ - String boolStr = resizeOcc.getValue().toUpperCase(); - if(boolStr.equals("TRUE")){ - return true; - } else if(boolStr.equals("FALSE")) { - return false; - } else { - throw new InvalidGdlSchemaException("The occurrence " + GdlPsis.OccurrenceType.gdlResize + " must be set to one of "true" or "false", but is "" + resizeOcc.getValue() + """); + try{ + return ResizeValue.valueOf(resizeOcc.getValue().toUpperCase()); + }catch(IllegalArgumentException e){ + throw new InvalidGdlSchemaException("The occurrence " + GdlPsis.OccurrenceType.gdlResize + " must be set to one of "both", "vertical", "horizontal" or "none", but is "" + resizeOcc.getValue() + """); } } else { - return false; + return ResizeValue.NONE; + } + } + + + // sets a given css property and css value of this element's text area element + private void setCssProperty(TextArea elem, String styleClass, String cssProperty, String cssValue)throws InvalidGdlSchemaException, ExecutionException{ + if(cssValue == null || cssProperty == null) return; + + if(styleClass == null){ + DOM.setStyleAttribute(elem.getElement(), cssProperty, cssValue); + } else if(styleClass.equals(GdlPsis.Scope.gdlActive)){ + for (Pair<TextArea, ActiveStyleHandler> item : this.activeStyleHandler) { + if(item.getFirst().equals(elem)){ + item.getSecond().addCssStyle(new Pair<String, String>(cssProperty, cssValue)); + break; + } + } + } else if(styleClass.equals(GdlPsis.Scope.gdlFocus)){ + for (Pair<TextArea, FocusStyleHandler> item : this.focusStyleHandler) { + if(item.getFirst().equals(elem)){ + item.getSecond().addCssStyle(new Pair<String, String>(cssProperty, cssValue)); + break; + } + } + } else if (styleClass.equals(GdlPsis.Scope.gdlHover)){ + for (Pair<TextArea, HoverStyleHandler> item : this.hoverStyleHandler) { + if(item.getFirst().equals(elem)){ + item.getSecond().addCssStyle(new Pair<String, String>(cssProperty, cssValue)); + break; + } + } + } else { + String values = GdlPsis.Scope.gdlActive + ", " + GdlPsis.Scope.gdlFocus + ", " + GdlPsis.Scope.gdlHover; + throw new InvalidGdlSchemaException("GDL defines only the style classes " + values + ", but found " + styleClass); + } + } + + + // sets the resize style property. + // If gdl:readonly is set to true, this property is set to none, i.e. the passed value is ignored. + // IF gdl:readonly is set to false, this property is set to the passed argument. + public void setResize(ResizeValue value) throws InvalidGdlSchemaException, ExecutionException{ + if(getReadonly() == true){ + for (TextArea elem : this.textElements) this.setCssProperty(elem, null, "resize", "none"); + } else { + for (TextArea elem : this.textElements) this.setCssProperty(elem, null, "resize", value.getCssValue()); + } + + // TODO: if resize == true => set width/height of the outer/container element after the resize operation + } + + + // sets the readonly property of this element's text are element + public void setReadonly(boolean value){ + for (TextArea item : this.textElements) item.setReadOnly(value); + } + + + // sets and registers or unsets and deregisters a PasswordKeyPressHandler + // on this element's text area item. + public void setTextType(TextTypeValue value){ + if(value == TextTypeValue.Password){ + if(this.passwordKeyPressHandler == null) { + this.passwordKeyPressHandler = new ArrayList<PasswordKeyPressHandler>(); + this.passwordKeyPressRegistrations = new ArrayList<HandlerRegistration>(); + + for (TextArea item : this.textElements) { + PasswordKeyPressHandler handler = new PasswordKeyPressHandler(); + this.passwordKeyPressRegistrations.add(item.addKeyPressHandler(handler)); + } + } + }else { + if(this.passwordKeyPressRegistrations != null){ + for (HandlerRegistration reg : this.passwordKeyPressRegistrations) { + reg.removeHandler(); + } + this.passwordKeyPressHandler = null; + this.passwordKeyPressRegistrations = null; + } } } + public void setWidth(TextArea elem, AutoNumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(elem, styleClass, "width", value.getCssValue()); + } + + + @Override + public void setWidth(AutoNumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + // TODO: implement + + } + + + public void setHeight(TextArea elem, AutoNumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + // TODO: implement + } + + + // sets the rows property if gdl:width is not set + public void setRows(int value) throws InvalidGdlSchemaException, ExecutionException { + if(value < 0) throw new InvalidGdlSchemaException("The occurrence " + GdlPsis.OccurrenceType.gdlRows + " must be set to a positive integer, but is "" + value + """); + Occurrence heightOcc = getNoneOrOneUnscopedOccurrence(GdlPsis.OccurrenceType.gdlHeight); + + // rows is only treated if height is not set + if(heightOcc == null) this.setRows(value); + + // set the outer element (the panel to the correct size if it is not set + //TODO: super.setHeight(new AutoNumUnitValue(this.textElement.getOffsetHeight() + "px"), null); + } + + + // sets the cols property if gdl:height is not set + public void setCols(int value) throws InvalidGdlSchemaException, ExecutionException { + if(value < 0) throw new InvalidGdlSchemaException("The occurrence " + GdlPsis.OccurrenceType.gdlRows + " must be set to a positive integer, but is "" + value + """); + Occurrence widthOcc = getNoneOrOneUnscopedOccurrence(GdlPsis.OccurrenceType.gdlWidth); + + // cols is only treated if width is not set + if(widthOcc == null) this.setCols(value); + + // set the outer element (the panel to the correct size if it is not set + //TODO: super.setWidth(new AutoNumUnitValue(this.textElement.getOffsetWidth() + "px"), null); + } + + + // sets the background-color style property of this element's text items by using the GWT DOM class + @Override + public void setBackgroundColor(ColorValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "backgroundColor", value.getCssValue()); + } + + + // sets the cursor style property of this element's text items by using the GWT DOM class + @Override + public void setCursor(CursorValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "cursor", value.getCssValue()); + } + + + // sets the border-color property of this element's text items by using the GWT DOM class + @Override + public void setBorderColor(ColorValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderColor", value.getCssValue()); + } + + + // sets the border-top-color property of this element's text items by using the GWT DOM class + @Override + public void setBorderTopColor(ColorValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderTopColor", value.getCssValue()); + } + + + // sets the border-right-color property of this element's text items by using the GWT DOM class + @Override + public void setBorderRightColor(ColorValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderRightColor", value.getCssValue()); + } + + + // sets the border-bottom-color property of this element's text items by using the GWT DOM class + @Override + public void setBorderBottomColor(ColorValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderBottomColor", value.getCssValue()); + } + + + // sets the border-left-color property of this element's text items by using the GWT DOM class + @Override + public void setBorderLeftColor(ColorValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderLeftColor", value.getCssValue()); + } + + + // sets the border-style property of this element's text items by using the GWT DOM class + @Override + public void setBorderStyle(BorderStyleValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderStyle", value.getCssValue()); + } + + + // sets the border-top-style property of this element's text items by using the GWT DOM class + @Override + public void setBorderTopStyle(BorderStyleValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderTopStyle", value.getCssValue()); + } + + + // sets the border-right-style property of this element's text items by using the GWT DOM class + @Override + public void setBorderRightStyle(BorderStyleValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderRightStyle", value.getCssValue()); + } + + + // sets the border-bottom-style property of this element's text items by using the GWT DOM class + @Override + public void setBorderBottomStyle(BorderStyleValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderBottomStyle", value.getCssValue()); + } + + + // sets the border-left-style property of this element's text items by using the GWT DOM class + @Override + public void setBorderLeftStyle(BorderStyleValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderLeftStyle", value.getCssValue()); + } + + + // sets the border-width property of this element's text items by using the GWT DOM class + @Override + public void setBorderWidth(AbsoluteNumValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderWidth", value.getCssValue()); + } + + + // sets the border-top-width property of this element's text items by using the GWT DOM class + @Override + public void setBorderTopWidth(AbsoluteNumValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderTopWidth", value.getCssValue()); + } + + + // sets the border-right-width property of this element's text items by using the GWT DOM class + @Override + public void setBorderRightWidth(AbsoluteNumValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderRightWidth", value.getCssValue()); + } + + + // sets the border-bottom-width property of this element's text items by using the GWT DOM class + @Override + public void setBorderBottomWidth(AbsoluteNumValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderBottomWidth", value.getCssValue()); + } + + + // sets the border-left-width property of this element's text items by using the GWT DOM class + @Override + public void setBorderLeftWidth(AbsoluteNumValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderLeftWidth", value.getCssValue()); + } + + + // sets the border-radius property of this element's text items by using the GWT DOM class + @Override + public void setBorderRadius(NumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderRadius", value.getCssValue()); + } + + + // sets the border-top-right-radius property of this element's text items by using the GWT DOM class + @Override + public void setBorderTopRightRadius(NumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderTopRightRadius", value.getCssValue()); + } + + + // sets the border-bottom-right-radius property of this element's text items by using the GWT DOM class + @Override + public void setBorderBottomRightRadius(NumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderBottomRightRadius", value.getCssValue()); + } + + + // sets the border-bottom-left-radius property of this element's text items by using the GWT DOM class + @Override + public void setBorderBottomLeftRadius(NumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderBottomLeftRadius", value.getCssValue()); + } + + + // sets the border-top-left-radius property of this element's text items by using the GWT DOM class + @Override + public void setBorderTopLeftRadius(NumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(styleClass, "boderTopLeftRadius", value.getCssValue()); + } + + + // sets the margin property of this element's text items by using the GWT DOM class + public void setMargin(TextArea elem, NumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(elem, styleClass, "margin", value.getCssValue()); + } + + + // sets the margin-top-color property of this element's text items by using the GWT DOM class + public void setMarginTop(TextArea elem, NumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(elem, styleClass, "marginTop", value.getCssValue()); + } + + + // sets the margin-right-color property of this element's text items by using the GWT DOM class + public void setMarginRight(TextArea elem, NumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(elem, styleClass, "marginRight", value.getCssValue()); + } + + + // sets the margin-bottom-color property of this element's text items by using the GWT DOM class + public void setMarginBottom(TextArea elem, NumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(elem, styleClass, "marginBottom", value.getCssValue()); + } + + + // sets the margin-left-color property of this element's text items by using the GWT DOM class + public void setMarginLeft(TextArea elem, NumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(elem, styleClass, "marginLeft", value.getCssValue()); + } + + + // sets the padding property of this element's text items by using the GWT DOM class + public void setPadding(TextArea elem, NumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(elem, styleClass, "padding", value.getCssValue()); + } + + + // sets the padding-top property of this element's text items by using the GWT DOM class + public void setPaddingTop(TextArea elem, NumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(elem, styleClass, "paddingTop", value.getCssValue()); + } + + + // sets the padding-right property of this element's text items by using the GWT DOM class + public void setPaddingRight(TextArea elem, NumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(elem, styleClass, "paddingRight", value.getCssValue()); + } + + + // sets the padding-bottom property of this element's text items by using the GWT DOM class + public void setPaddingBottom(TextArea elem, NumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(elem, styleClass, "paddingBottom", value.getCssValue()); + } + + + // sets the padding-left property of this element's text items by using the GWT DOM class + public void setPaddingLeft(TextArea elem, NumUnitValue value, String styleClass)throws InvalidGdlSchemaException, ExecutionException{ + if(value != null) this.setCssProperty(elem, styleClass, "paddingLeft", value.getCssValue()); + } + + + // sets the background-color property of this element's text items by using the GWT DOM class + public void setBackgroundColor(TextArea elem, ColorValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "backgroundColor", value.getCssValue()); + } + + + // sets the cursor property of this element's text items by using the GWT DOM class + public void setCursor(TextArea elem, CursorValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "cursor", value.getCssValue()); + } + + + // sets the color property of this element's text items by using the GWT DOM class + public void setColor(TextArea elem, ColorValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "color", value.getCssValue()); + } + + + // sets the border-color property of this element's text items by using the GWT DOM class + public void setBorderColor(TextArea elem, ColorValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderColor", value.getCssValue()); + } + + + // sets the border-top-color property of this element's text items by using the GWT DOM class + public void setBorderTopColor(TextArea elem, ColorValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderTopColor", value.getCssValue()); + } + + + // sets the border-right-color property of this element's text items by using the GWT DOM class + public void setBorderRightColor(TextArea elem, ColorValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderRightColor", value.getCssValue()); + } + + + // sets the border-bottom-color property of this element's text items by using the GWT DOM class + public void setBorderBottomColor(TextArea elem, ColorValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderBottomColor", value.getCssValue()); + } + + + // sets the border-left-color property of this element's text items by using the GWT DOM class + public void setBorderLeftColor(TextArea elem, ColorValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderLeftColor", value.getCssValue()); + } + + + // sets the border-style property of this element's text items by using the GWT DOM class + public void setBorderStyle(TextArea elem, BorderStyleValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderStyle", value.getCssValue()); + } + + + // sets the border-top-style property of this element's text items by using the GWT DOM class + public void setBorderTopStyle(TextArea elem, BorderStyleValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderTopStyle", value.getCssValue()); + } + + + // sets the border-right-style property of this element's text items by using the GWT DOM class + public void setBorderRightStyle(TextArea elem, BorderStyleValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderRightStyle", value.getCssValue()); + } + + + // sets the border-bottom-style property of this element's text items by using the GWT DOM class + public void setBorderBottomStyle(TextArea elem, BorderStyleValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderBottomStyle", value.getCssValue()); + } + + + // sets the border-left-style property of this element's text items by using the GWT DOM class + public void setBorderLeftStyle(TextArea elem, BorderStyleValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderLeftStyle", value.getCssValue()); + } + + + // sets the border-width property of this element's text items by using the GWT DOM class + public void setBorderWidth(TextArea elem, AbsoluteNumValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderWidth", value.getCssValue()); + } + + + // sets the border-top-width property of this element's text items by using the GWT DOM class + public void setBorderTopWidth(TextArea elem, AbsoluteNumValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderTopWidth", value.getCssValue()); + } + + + // sets the border-right-width property of this element's text items by using the GWT DOM class + public void setBorderRightWidth(TextArea elem, AbsoluteNumValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderRightWidth", value.getCssValue()); + } + + + // sets the border-bottom-width property of this element's text items by using the GWT DOM class + public void setBorderBottomWidth(TextArea elem, AbsoluteNumValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderBottomWidth", value.getCssValue()); + } + + + // sets the border-left-width property of this element's text items by using the GWT DOM class + public void setBorderLeftWidth(TextArea elem, AbsoluteNumValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderLeftWidth", value.getCssValue()); + } + + + // sets the border-radius property of this element's text items by using the GWT DOM class + public void setBorderRadius(TextArea elem, NumUnitValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderRadius", value.getCssValue()); + } + + + // sets the border-top-right-radius property of this element's text items by using the GWT DOM class + public void setBorderTopRightRadius(TextArea elem, NumUnitValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderTopRightRadius", value.getCssValue()); + } + + + // sets the border-bottom-right-radius property of this element's text items by using the GWT DOM class + public void setBorderBottomRightRadius(TextArea elem, NumUnitValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderBottomRightRadius", value.getCssValue()); + } + + + // sets the border-bottom-left-radius property of this element's text items by using the GWT DOM class + public void setBorderBottomLeftRadius(TextArea elem, NumUnitValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderBottomLeftRadius", value.getCssValue()); + } + + + // sets the border-top-left-radius property of this element's text items by using the GWT DOM class + public void setBorderTopLeftRadius(TextArea elem, NumUnitValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "borderTopLeftRadius", value.getCssValue()); + } + + + // sets the direction property of this element's text items by using the GWT DOM class + public void setDirection(TextArea elem, DirectionValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "direction", value.getCssValue()); + } + + + // sets the text-align property of this element's text items by using the GWT DOM class + public void setTextAlign(TextArea elem, TextAlignValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "textAlign", value.getCssValue()); + } + + + // sets the line-height property of this element's text items by using the GWT DOM class + public void setLineHeight(TextArea elem, NormalNumUnitValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "lineHeight", value.getCssValue()); + } + + + // sets the text-decoration property of this element's text items by using the GWT DOM class + public void setTextDecoration(TextArea elem, TextDecorationValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "textDecoration", value.getCssValue()); + } + + + // sets the font-family property of this element's text items by using the GWT DOM class + public void setFontFamily(TextArea elem, String value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "fontFamily", value); + } + + + // sets the font-style property of this element's text items by using the GWT DOM class + public void setFontStyle(TextArea elem, FontStyle value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "fontStyle", value.getCssName()); + } + + + // sets the font-size property of this element's text items by using the GWT DOM class + public void setFontSize(TextArea elem, PositiveNumUnitValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "fontSize", value.getCssValue()); + } + + + // sets the font-weight property of this element's text items by using the GWT DOM class + public void setFontWeight(TextArea elem, FontWeightValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "fontWeight", value.getCssValue()); + } + + + // sets the letter-spacing property of this element's text items by using the GWT DOM class + public void setLetterSpacing(TextArea elem, NormalNumUnitValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "letterSpacing", value.getCssValue()); + } + + + // sets the word-spacing property of this element's text items by using the GWT DOM class + public void setWordSpacing(TextArea elem, NormalNumUnitValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException { + if(value != null) this.setCssProperty(elem, styleClass, "wordSpacing", value.getCssValue()); + } + + + // sets the GDL style of the passed content element, i.e. the TextArea element + protected void setContentGdlStyle(TextArea elem) throws InvalidGdlSchemaException, ExecutionException{ + // create all handlers for elem + ActiveStyleHandler asHandler = new ActiveStyleHandler(); + this.activeStyleHandler.add(new Pair<TextArea, GdlVisibleObject.ActiveStyleHandler>(elem, asHandler)); + FocusStyleHandler fsHandler = new FocusStyleHandler(); + this.focusStyleHandler.add(new Pair<TextArea, GdlVisibleObject.FocusStyleHandler>(elem, fsHandler)); + HoverStyleHandler hsHandler = new HoverStyleHandler(); + this.hoverStyleHandler.add(new Pair<TextArea, GdlVisibleObject.HoverStyleHandler>(elem, hsHandler)); + + + // all attributes for the actual text element + this.setReadonly(this.getReadonly()); + this.setResize(this.getResize()); + this.setTextType(this.getTextType()); + this.setRows(this.getRows()); + this.setCols(this.getCols()); + + String[] styleClasses = new String[]{null, GdlPsis.Scope.gdlActive, GdlPsis.Scope.gdlFocus, GdlPsis.Scope.gdlHover}; + for (String styleClass : styleClasses) { + // visible object styles + this.setBackgroundColor(elem, this.getBackgroundColor(styleClass), styleClass); + this.setCursor(elem, this.getCursor(styleClass), styleClass); + this.setColor(elem, this.getColor(styleClass), styleClass); + this.setBorderColor(elem, this.getBorderColor(styleClass), styleClass); + this.setBorderTopColor(elem, this.getBorderTopColor(styleClass), styleClass); + this.setBorderRightColor(elem, this.getBorderRightColor(styleClass), styleClass); + this.setBorderBottomColor(elem, this.getBorderBottomColor(styleClass), styleClass); + this.setBorderLeftColor(elem, this.getBorderLeftColor(styleClass), styleClass); + this.setBorderStyle(elem, this.getBorderStyle(styleClass), styleClass); + this.setBorderTopStyle(elem, this.getBorderTopStyle(styleClass), styleClass); + this.setBorderRightStyle(elem, this.getBorderRightStyle(styleClass), styleClass); + this.setBorderBottomStyle(elem, this.getBorderBottomStyle(styleClass), styleClass); + this.setBorderLeftStyle(elem, this.getBorderLeftStyle(styleClass), styleClass); + this.setBorderWidth(elem, this.getBorderWidth(styleClass), styleClass); + this.setBorderTopWidth(elem, this.getBorderTopWidth(styleClass), styleClass); + this.setBorderRightWidth(elem, this.getBorderRightWidth(styleClass), styleClass); + this.setBorderBottomWidth(elem, this.getBorderBottomWidth(styleClass), styleClass); + this.setBorderLeftWidth(elem, this.getBorderLeftWidth(styleClass), styleClass); + this.setBorderRadius(elem, this.getBorderRadius(styleClass), styleClass); + this.setBorderTopRightRadius(elem, this.getBorderTopRightRadius(styleClass), styleClass); + this.setBorderBottomRightRadius(elem, this.getBorderBottomRightRadius(styleClass), styleClass); + this.setBorderBottomLeftRadius(elem, this.getBorderBottomLeftRadius(styleClass), styleClass); + this.setBorderTopLeftRadius(elem, this.getBorderTopLeftRadius(styleClass), styleClass); + this.setMargin(elem, this.getMargin(styleClass), styleClass); + this.setMarginTop(elem, this.getMarginTop(styleClass), styleClass); + this.setMarginRight(elem, this.getMarginRight(styleClass), styleClass); + this.setMarginBottom(elem, this.getMarginBottom(styleClass), styleClass); + this.setMarginLeft(elem, this.getMarginLeft(styleClass), styleClass); + this.setPadding(elem, this.getPadding(styleClass), styleClass); + this.setPaddingTop(elem, this.getPaddingTop(styleClass), styleClass); + this.setPaddingRight(elem, this.getPaddingRight(styleClass), styleClass); + this.setPaddingBottom(elem, this.getPaddingBottom(styleClass), styleClass); + this.setPaddingLeft(elem, this.getPaddingLeft(styleClass), styleClass); + this.setWidth(elem, this.getWidth(styleClass), styleClass); + this.setHeight(elem, this.getHeight(styleClass), styleClass); + + // text object styles + this.setDirection(elem, this.getDirection(styleClass), styleClass); + this.setTextAlign(elem, this.getTextAlign(styleClass), styleClass); + this.setLineHeight(elem, this.getLineHeight(styleClass), styleClass); + this.setTextDecoration(elem, this.getTextDecoration(styleClass), styleClass); + this.setFontFamily(elem, this.getFontFamily(styleClass), styleClass); + this.setFontStyle(elem, this.getFontStyle(styleClass), styleClass); + this.setFontSize(elem, this.getFontSize(styleClass), styleClass); + this.setFontWeight(elem, this.getFontWeight(styleClass), styleClass); + this.setLetterSpacing(elem, this.getLetterSpacing(styleClass), styleClass); + this.setWordSpacing(elem, this.getWordSpacing(styleClass), styleClass); + } + + // register the corresponding handlers for each text element + elem.addMouseDownHandler(asHandler); + elem.addMouseUpHandler(asHandler); + elem.addFocusHandler(fsHandler); + elem.addBlurHandler(fsHandler); + elem.addMouseOutHandler(hsHandler); + elem.addMouseOverHandler(hsHandler); + } + + // calls the super class's setGdlStyle and additionally calls local statements // to fulfill the style settings @Override protected void setGdlStyle() throws InvalidGdlSchemaException, ExecutionException{ - super.setGdlStyle(); - - // TODO: implement - // text-type - // readonly - // rows - // calls - // resize - + // the outer/container element + super.setDisplay(super.getDisplay()); + super.setZindex(super.getZindex()); + super.setFloat(super.getFloat()); + super.setClear(super.getClear()); + + String[] styleClasses = new String[]{null, GdlPsis.Scope.gdlActive, GdlPsis.Scope.gdlFocus, GdlPsis.Scope.gdlHover}; + for (String styleClass : styleClasses) { + super.setVerticalAlign(super.getVerticalAlign(styleClass), styleClass); + super.setOverflow(super.getOverflow(styleClass), styleClass); + super.setWidth(super.getWidth(styleClass), styleClass); + super.setMinWidth(super.getMinWidth(styleClass), styleClass); + super.setMaxWidth(super.getMaxWidth(styleClass), styleClass); + super.setHeight(super.getHeight(styleClass), styleClass); + super.setMinHeight(super.getMinHeight(styleClass), styleClass); + super.setMaxHeight(super.getMaxHeight(styleClass), styleClass); + } + } + + + // registers a passed mouse down handler to each text element of this item + @Override + public MultipleHandlerRegistration addMouseDownHandler(MouseDownHandler handler){ + MultipleHandlerRegistration regs = new MultipleHandlerRegistration(); + for (TextArea item : this.textElements) { + regs.addHandlerRegistration(item.addMouseDownHandler(handler)); + } + return regs; + } + + + // registers a passed mouse up handler to each text element of this item + @Override + public MultipleHandlerRegistration addMouseUpHandler(MouseUpHandler handler){ + MultipleHandlerRegistration regs = new MultipleHandlerRegistration(); + for (TextArea item : this.textElements) { + regs.addHandlerRegistration(item.addMouseUpHandler(handler)); + } + return regs; + } + + + // registers a passed focus handler to each text element of this item + @Override + public MultipleHandlerRegistration addFocusHandler(FocusHandler handler){ + MultipleHandlerRegistration regs = new MultipleHandlerRegistration(); + for (TextArea item : this.textElements) { + regs.addHandlerRegistration(item.addFocusHandler(handler)); + } + return regs; }
+ // registers a passed blur handler to each text element of this item @Override - public String getStringValue() { - // TODO Auto-generated method stub - return null; + public MultipleHandlerRegistration addBlurHandler(BlurHandler handler){ + MultipleHandlerRegistration regs = new MultipleHandlerRegistration(); + for (TextArea item : this.textElements) { + regs.addHandlerRegistration(item.addBlurHandler(handler)); + } + return regs; }
+ + // registers a passed mouse out handler to each text element of this item @Override - public Construct getTmValue() { - // TODO Auto-generated method stub - return null; + public MultipleHandlerRegistration addMouseOutHandler(MouseOutHandler handler){ + MultipleHandlerRegistration regs = new MultipleHandlerRegistration(); + for (TextArea item : this.textElements) { + regs.addHandlerRegistration(item.addMouseOutHandler(handler)); + } + return regs; + } + + + // registers a passed mouse over handler to each text element of this item + @Override + public MultipleHandlerRegistration addMouseOverHandler(MouseOverHandler handler){ + MultipleHandlerRegistration regs = new MultipleHandlerRegistration(); + for (TextArea item : this.textElements) { + regs.addHandlerRegistration(item.addMouseOverHandler(handler)); + } + return regs; + } + + + // returns the results of all text area elements + @Override + public ArrayList<String> getStringValue() { + ArrayList<String> results = new ArrayList<String>(); + for (TextArea item : this.textElements) { + results.add(item.getValue()); + } + + return results; }
+ @Override - public TopicMapsTypes getTmType() { + public ArrayList<Pair<TopicMapsTypes, Object>> getTmValue() { // TODO Auto-generated method stub return null; } - + + + @Override + public boolean validate(){ + // TODO: implement + return false; + } + + + // this class catches all keypress events and transforms the visible + // characters to *, whereas the actual characters are collected and requestable + // via the function getValue. + protected class PasswordKeyPressHandler implements KeyPressHandler { + String realValue = ""; + + @Override + public void onKeyPress(KeyPressEvent event) { + TextArea elem = (TextArea) event.getSource(); + elem.cancelKey(); + elem.setText(elem.getText() + "*"); + realValue += (char)event.getCharCode() + ""; + } + + + public String getValue(){ + return this.realValue; + } + } }
Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/text/GdlTextObject.java ============================================================================== --- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/text/GdlTextObject.java Mon Jul 4 23:59:48 2011 (r559) +++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/text/GdlTextObject.java Tue Jul 5 09:41:31 2011 (r560) @@ -354,7 +354,7 @@ for (String styleClass : styleClasses) { this.setDirection(this.getDirection(styleClass), styleClass); this.setTextAlign(this.getTextAlign(styleClass), styleClass); - this.setTextAlign(this.getTextAlign(styleClass), styleClass); + this.setLineHeight(this.getLineHeight(styleClass), styleClass); this.setTextDecoration(this.getTextDecoration(styleClass), styleClass); this.setColor(this.getColor(styleClass), styleClass); this.setFontFamily(this.getFontFamily(styleClass), styleClass);
Added: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/values/ResizeValue.java ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/values/ResizeValue.java Tue Jul 5 09:41:31 2011 (r560) @@ -0,0 +1,15 @@ +package us.isidor.gdl.anaToMia.Widgets.values; + +public enum ResizeValue implements CssValue { + BOTH, + VERTICAL, + HORIZONTAL, + NONE; + + + @Override + public String getCssValue() { + return this.toString().toLowerCase(); + } + +}