[isidorus-cvs] r660 - in branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets: . base container text
lgiessmann at common-lisp.net
lgiessmann at common-lisp.net
Fri Jul 22 11:18:22 UTC 2011
Author: lgiessmann
Date: Fri Jul 22 04:18:21 2011
New Revision: 660
Log:
gdl-frontend: Widgets: fixed a bug when applying the css property "text-decoration" on GdlUnit in Firefox
Modified:
branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/TODO.txt
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/container/GdlUnit.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/TODO.txt
==============================================================================
--- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/TODO.txt Fri Jul 22 02:30:54 2011 (r659)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/TODO.txt Fri Jul 22 04:18:21 2011 (r660)
@@ -1,8 +1,8 @@
-
-2. Implement GdlLineBreak => placeholder
-3. Implement TopicMaps data consumption
-4. Implement TopicMaps data generation
-3. Implement GdlButton(s)
-4. Implement GdlButton(s) positioning
-6. ImplementGdlVisibleObject => (de)registerButtonCallback
-7. Fix css-pseudo-class-handlers
\ No newline at end of file
+* fix setting the float property in firefox
+* Implement GdlLineBreak => placeholder
+* Implement TopicMaps data consumption
+* Implement TopicMaps data generation
+* Implement GdlButton(s)
+* Implement GdlButton(s) positioning
+* ImplementGdlVisibleObject => (de)registerButtonCallback
+* Fix css-pseudo-class-handlers
\ No newline at end of file
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 Fri Jul 22 02:30:54 2011 (r659)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/GdlVisibleObject.java Fri Jul 22 04:18:21 2011 (r660)
@@ -47,6 +47,7 @@
import com.google.gwt.event.dom.client.MouseUpHandler;
import com.google.gwt.event.shared.EventHandler;
import com.google.gwt.user.client.DOM;
+import com.google.gwt.user.client.Element;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.AbsolutePanel;
import com.google.gwt.user.client.ui.Composite;
@@ -1423,6 +1424,7 @@
}
+
// sets a given css property and css value of this element's sub element
protected void setCssProperty(Widget elem, String styleClass, String cssProperty, String cssValue)throws InvalidGdlSchemaException, ExecutionException{
if(cssValue == null || cssProperty == null) return;
@@ -1432,6 +1434,25 @@
} else if(styleClass.equals(GdlPsis.Scope.gdlActive)){
this.activeCssNamesAndStyles.add(new Pair<String, String>(cssProperty, cssValue));
} else if(styleClass.equals(GdlPsis.Scope.gdlFocus)){
+ this.focusCssNamesAndStyles.add(new Pair<String, String>(cssProperty, cssValue));
+ } else if (styleClass.equals(GdlPsis.Scope.gdlHover)){
+ this.hoverCssNamesAndStyles.add(new Pair<String, String>(cssProperty, cssValue));
+ } 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 a given css property and css value of this element's sub element
+ protected void setCssProperty(Element elem, String styleClass, String cssProperty, String cssValue)throws InvalidGdlSchemaException, ExecutionException{
+ if(cssValue == null || cssProperty == null) return;
+
+ if(styleClass == null){
+ DOM.setStyleAttribute(elem, cssProperty, cssValue);
+ } else if(styleClass.equals(GdlPsis.Scope.gdlActive)){
+ this.activeCssNamesAndStyles.add(new Pair<String, String>(cssProperty, cssValue));
+ } else if(styleClass.equals(GdlPsis.Scope.gdlFocus)){
this.focusCssNamesAndStyles.add(new Pair<String, String>(cssProperty, cssValue));
} else if (styleClass.equals(GdlPsis.Scope.gdlHover)){
this.hoverCssNamesAndStyles.add(new Pair<String, String>(cssProperty, cssValue));
Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/container/GdlUnit.java
==============================================================================
--- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/container/GdlUnit.java Fri Jul 22 02:30:54 2011 (r659)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/container/GdlUnit.java Fri Jul 22 04:18:21 2011 (r660)
@@ -3,6 +3,7 @@
import java.util.ArrayList;
import com.google.gwt.user.client.Element;
import com.google.gwt.user.client.Window;
+import com.google.gwt.dom.client.NodeList;
import com.google.gwt.event.dom.client.BlurEvent;
import com.google.gwt.event.dom.client.BlurHandler;
import com.google.gwt.event.dom.client.FocusEvent;
@@ -135,6 +136,20 @@
}
}
}
+
+
+ // sets the text-decoration style property of this element by using the GWT DOM class
+ @Override
+ public void setTextDecoration(Widget widget, TextDecorationValue value, String styleClass) throws InvalidGdlSchemaException, ExecutionException {
+ if(value != null && widget.getClass().equals(UnitWidget.class)){
+ for(int i = 0; i != DOM.getChildCount(((UnitWidget)widget).basePanel.getElement()); ++i){
+ if(DOM.getChild(((UnitWidget)widget).basePanel.getElement(), i).getNodeName().toLowerCase().equals("legend")){
+ Element legend = DOM.getChild(((UnitWidget)widget).basePanel.getElement(), i);
+ this.setCssProperty(legend, styleClass, "textDecoration", value.getCssValue());
+ }
+ }
+ }
+ }
// sets all GDL styles that are defined by the topic map representative to tha passed widget
@@ -143,8 +158,8 @@
super.setGdlStyle(widget);
this.setUnitName(widget, this.getUnitName());
}
-
+
@Override
@Deprecated
public GdlVisibleObject append(Topic ancestor, Topic current) throws InvalidGdlSchemaException, ExecutionException {
@@ -180,6 +195,7 @@
private UnitWidget(){
initWidget(this.basePanel);
this.basePanel.add(this.containerPanel);
+ DOM.setStyleAttribute(this.basePanel.getElement(), "textDecoration", "none");
}
@@ -280,5 +296,19 @@
public HandlerRegistration addFocusHandler(FocusHandler handler) {
return this.addDomHandler(handler, FocusEvent.getType());
}
+
+
+ @Override
+ public void onAttach(){
+ super.onAttach();
+ try{
+ String[] styleClasses = new String[]{null, GdlPsis.Scope.gdlActive, GdlPsis.Scope.gdlFocus, GdlPsis.Scope.gdlHover};
+ for (String styleClass : styleClasses) {
+ GdlUnit.this.setTextDecoration(this, GdlUnit.this.getTextDecoration(styleClass), styleClass);
+ }
+ }catch(Exception e){
+ e.printStackTrace();
+ }
+ }
}
}
\ No newline at end of file
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 Fri Jul 22 02:30:54 2011 (r659)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/text/GdlTextObject.java Fri Jul 22 04:18:21 2011 (r660)
@@ -29,7 +29,6 @@
public GdlTextObject(Topic tmRepresentative) throws InvalidGdlSchemaException, ExecutionException{
super(tmRepresentative);
super.setGdlStyle();
- DOM.setStyleAttribute(this.mainPanel.getElement(), "float", "left"); // TODO: remove
}
More information about the Isidorus-cvs
mailing list