[isidorus-cvs] r552 - in branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets: base values
lgiessmann at common-lisp.net
lgiessmann at common-lisp.net
Fri Jul 1 21:03:30 UTC 2011
Author: lgiessmann
Date: Fri Jul 1 14:03:30 2011
New Revision: 552
Log:
gdl-frontend: Widgets: fixed a bug in the constructor AutoNumValue(String)
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/TestClass.java
branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/values/AutoNumUnitValue.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 Fri Jul 1 13:42:48 2011 (r551)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/GdlVisibleObject.java Fri Jul 1 14:03:30 2011 (r552)
@@ -39,10 +39,12 @@
this.tmRepresentative = tmRepresentative;
this.tm = this.tmRepresentative.getTopicMap();
- // TODO: apply GDL style
+ this.setId(this.getId());
+ this.setGdlStyle();
}
+ // returns the topic that represents this element
public Topic getTmRepresentative(){
return this.tmRepresentative;
}
@@ -50,7 +52,9 @@
// a helper method that returns all occurrences of the type bound to the passed PSI
private JsArray<Occurrence> getOccurrences(String occurrenceType){
- return tmRepresentative.getOccurrences(tm.getTopicBySubjectIdentifier(tm.createLocator(occurrenceType)));
+ Topic occType = tm.getTopicBySubjectIdentifier(tm.createLocator(occurrenceType));
+ if(occType == null) return null;
+ else return tmRepresentative.getOccurrences(occType);
}
@@ -65,7 +69,7 @@
}
if(unscopedOccs.size() > 1){
- throw new InvalidGdlSchemaException("The topic " + GdlPsis.getAnyIdOfTopic(this.tmRepresentative) + "must be bound to none or one unscoped occurrence of the type " + occurrenceType + "but is bound " + unscopedOccs.size() + " times to it");
+ throw new InvalidGdlSchemaException("The topic " + GdlPsis.getAnyIdOfTopic(this.tmRepresentative) + " must be bound to none or one unscoped occurrence of the type " + occurrenceType + ", but is bound " + unscopedOccs.size() + " times to it");
} else if(unscopedOccs.size() == 1){
return unscopedOccs.get(0);
} else {
@@ -107,7 +111,7 @@
public String getId() throws InvalidGdlSchemaException {
JsArray<Occurrence> idOccs = getOccurrences(GdlPsis.OccurrenceType.gdlId);
if(idOccs.length() != 1){
- throw new InvalidGdlSchemaException("The topic " + GdlPsis.getAnyIdOfTopic(this.tmRepresentative) + "must be bound to exactly one occurrence of the type " + GdlPsis.OccurrenceType.gdlId + "but is bound " + idOccs.length() + " times to it");
+ throw new InvalidGdlSchemaException("The topic " + GdlPsis.getAnyIdOfTopic(this.tmRepresentative) + " must be bound to exactly one occurrence of the type " + GdlPsis.OccurrenceType.gdlId + ", but is bound " + idOccs.length() + " times to it");
} else {
return idOccs.get(0).getValue();
}
@@ -1499,7 +1503,11 @@
- public void setGdlStyle(){
+ public void setGdlStyle() throws InvalidGdlSchemaException {
// TODO: implement
+
+ this.setWidth(this.getWidth(null));
+ this.setHeight(this.getHeight(null));
+ this.setBackgroundColor(this.getBackgroundColor(null));
}
}
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 Fri Jul 1 13:42:48 2011 (r551)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/TestClass.java Fri Jul 1 14:03:30 2011 (r552)
@@ -11,13 +11,12 @@
import com.google.gwt.dom.client.Style.Display;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
-import com.google.gwt.event.dom.client.MouseOutEvent;
import com.google.gwt.user.client.DOM;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.user.client.ui.RootPanel;
-import com.google.gwt.user.client.ui.Widget;
+
public class TestClass implements EntryPoint{
HorizontalPanel mainPanel = new HorizontalPanel();
@@ -59,20 +58,26 @@
try{
Topic tmpRepresentative = gdlPanel.getSchemaTm().createTopicBySubjectIdentifier(gdlPanel.getSchemaTm().createLocator("http://test.org/test-top"));
Topic gdlBackgroundColor = gdlPanel.getSchemaTm().createTopicBySubjectIdentifier(gdlPanel.getSchemaTm().createLocator(GdlPsis.OccurrenceType.gdlBackgroundColor));
+ Topic gdlId = gdlPanel.getSchemaTm().createTopicBySubjectIdentifier(gdlPanel.getSchemaTm().createLocator(GdlPsis.OccurrenceType.gdlId));
+ Topic gdlWidth = gdlPanel.getSchemaTm().createTopicBySubjectIdentifier(gdlPanel.getSchemaTm().createLocator(GdlPsis.OccurrenceType.gdlWidth));
+ Topic gdlHeight = gdlPanel.getSchemaTm().createTopicBySubjectIdentifier(gdlPanel.getSchemaTm().createLocator(GdlPsis.OccurrenceType.gdlHeight));
tmpRepresentative.createOccurrence(gdlBackgroundColor, "red", null);
+ tmpRepresentative.createOccurrence(gdlId, "ID_1", null);
+ tmpRepresentative.createOccurrence(gdlWidth, "300px", null);
+ tmpRepresentative.createOccurrence(gdlHeight, "300px", null);
+
GdlVisibleObject tmp = new GdlVisibleObject(tmpRepresentative){};
- tmp.setPixelSize(300, 300); // TODO: remove
- DOM.setStyleAttribute(tmp.getElement(), "backgroundColor", "lime"); // TODO: remove
this.mainPanel.add(tmp);
}catch(Exception e){
+ e.printStackTrace();
Window.alert(">> e >> " + e.getClass() + " >> " + e.getMessage());
}
}
Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/values/AutoNumUnitValue.java
==============================================================================
--- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/values/AutoNumUnitValue.java Fri Jul 1 13:42:48 2011 (r551)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/values/AutoNumUnitValue.java Fri Jul 1 14:03:30 2011 (r552)
@@ -14,14 +14,14 @@
if(upperString.equals("AUTO")){
super.unit = null; // if unit is null, the default value is auto
super.value = 0f;
- }else if(value.endsWith("PX")){
- this.value = makeFloat(value, 2);
+ }else if(upperString.endsWith("PX")){
+ this.value = makeFloat(upperString, 2);
this.unit = CssUnit.PIXEL;
- }else if (value.endsWith("PT")){
- this.value = makeFloat(value, 2);
+ }else if (upperString.endsWith("PT")){
+ this.value = makeFloat(upperString, 2);
this.unit = CssUnit.POINT;
- } else if(value.endsWith("%")){
- this.value = makeFloat(value, 1);
+ } else if(upperString.endsWith("%")){
+ this.value = makeFloat(upperString, 1);
this.unit = CssUnit.PERCENTAGE;
} else {
throw new InvalidGdlSchemaException("auto numeric values supported by the GDL containing a unit definition must be of the form <numeric-value>(pt|px|%)|auto, but found: " + value);
More information about the Isidorus-cvs
mailing list