[isidorus-cvs] r652 - in branches/gdl-frontend/src/anaToMia/GDL_Widgets: src/us/isidor/gdl/anaToMia/Widgets/base src/us/isidor/gdl/anaToMia/Widgets/container war/gdl_widgets

lgiessmann at common-lisp.net lgiessmann at common-lisp.net
Wed Jul 20 17:01:42 UTC 2011


Author: lgiessmann
Date: Wed Jul 20 10:01:42 2011
New Revision: 652

Log:
gdl-frontend: Widgets: changed UnitWidget to a Caption panel

Modified:
   branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/TmHelper.java
   branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/container/GdlUnit.java
   branches/gdl-frontend/src/anaToMia/GDL_Widgets/war/gdl_widgets/test.gdl.jtm

Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/TmHelper.java
==============================================================================
--- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/TmHelper.java	Wed Jul 20 07:32:13 2011	(r651)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/TmHelper.java	Wed Jul 20 10:01:42 2011	(r652)
@@ -19,6 +19,7 @@
 import us.isidor.gdl.anaToMia.Widgets.environment.Pair;
 import us.isidor.gdl.anaToMia.Widgets.environment.TopicIdentifierTypes;
 import com.google.gwt.core.client.JsArray;
+import com.google.gwt.user.client.Window;
 
 
 public class TmHelper {

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	Wed Jul 20 07:32:13 2011	(r651)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/container/GdlUnit.java	Wed Jul 20 10:01:42 2011	(r652)
@@ -24,6 +24,7 @@
 import com.google.gwt.event.shared.HandlerRegistration;
 import com.google.gwt.user.client.DOM;
 import com.google.gwt.user.client.ui.AbsolutePanel;
+import com.google.gwt.user.client.ui.CaptionPanel;
 import com.google.gwt.user.client.ui.Composite;
 import com.google.gwt.user.client.ui.Widget;
 import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Occurrence;
@@ -1173,7 +1174,7 @@
 			UnitWidget unit = (UnitWidget)source;
 			for (Pair<String, String> pair : this.unitHoverCssNamesAndStyles) {		
 				if(pair.getFirst().equals("textDecoration"))unit.setTextDecoration(pair.getSecond());
-				else DOM.setStyleAttribute(unit.fieldset, pair.getFirst(), pair.getSecond());
+				else DOM.setStyleAttribute(unit.basePanel.getElement(), pair.getFirst(), pair.getSecond());
 				
 				if(unit.styleOfUnitWidgetBase(pair.getFirst())) DOM.setStyleAttribute(unit.basePanel.getElement(), pair.getFirst(), pair.getSecond());
 			}
@@ -1189,7 +1190,7 @@
 			UnitWidget unit = (UnitWidget)widget;
 			for (Pair<String, String> pair : this.unitHoverCssNamesAndStyles) {
 				if(pair.getFirst().equals("textDecoration"))unit.setTextDecoration(pair.getSecond());
-				else DOM.setStyleAttribute(unit.fieldset, pair.getFirst(), pair.getSecond());
+				else DOM.setStyleAttribute(unit.basePanel.getElement(), pair.getFirst(), pair.getSecond());
 				
 				if(unit.styleOfUnitWidgetBase(pair.getFirst())) DOM.setStyleAttribute(unit.basePanel.getElement(), pair.getFirst(), pair.getSecond());
 			}
@@ -1205,7 +1206,7 @@
 			UnitWidget unit = (UnitWidget)widget;
 			for (Pair<String, String> pair : this.unitFocusCssNamesAndStyles) {
 				if(pair.getFirst().equals("textDecoration"))unit.setTextDecoration(pair.getSecond());
-				else DOM.setStyleAttribute(unit.fieldset, pair.getFirst(), pair.getSecond());
+				else DOM.setStyleAttribute(unit.basePanel.getElement(), pair.getFirst(), pair.getSecond());
 				
 				if(unit.styleOfUnitWidgetBase(pair.getFirst())) DOM.setStyleAttribute(unit.basePanel.getElement(), pair.getFirst(), pair.getSecond());
 			}
@@ -1222,7 +1223,7 @@
 			UnitWidget unit = (UnitWidget)source;
 			for (Pair<String, String> pair : this.unitFocusCssNamesAndStyles) {
 				if(pair.getFirst().equals("textDecoration"))unit.setTextDecoration(pair.getSecond());
-				else DOM.setStyleAttribute(unit.fieldset, pair.getFirst(), pair.getSecond());
+				else DOM.setStyleAttribute(unit.basePanel.getElement(), pair.getFirst(), pair.getSecond());
 				
 				if(unit.styleOfUnitWidgetBase(pair.getFirst())) DOM.setStyleAttribute(unit.basePanel.getElement(), pair.getFirst(), pair.getSecond());
 			}
@@ -1238,7 +1239,7 @@
 			UnitWidget unit = (UnitWidget)widget;
 			for (Pair<String, String> pair : this.unitActiveCssNamesAndStyles) {
 				if(pair.getFirst().equals("textDecoration"))unit.setTextDecoration(pair.getSecond());
-				else DOM.setStyleAttribute(unit.fieldset, pair.getFirst(), pair.getSecond());
+				else DOM.setStyleAttribute(unit.basePanel.getElement(), pair.getFirst(), pair.getSecond());
 				
 				if(unit.styleOfUnitWidgetBase(pair.getFirst())) DOM.setStyleAttribute(unit.basePanel.getElement(), pair.getFirst(), pair.getSecond());
 			}
@@ -1255,7 +1256,7 @@
 			UnitWidget unit = (UnitWidget)source;
 			for (Pair<String, String> pair : this.unitActiveCssNamesAndStyles) {
 				if(pair.getFirst().equals("textDecoration"))unit.setTextDecoration(pair.getSecond());
-				else DOM.setStyleAttribute(unit.fieldset, pair.getFirst(), pair.getSecond());
+				else DOM.setStyleAttribute(unit.basePanel.getElement(), pair.getFirst(), pair.getSecond());
 				
 				if(unit.styleOfUnitWidgetBase(pair.getFirst())) DOM.setStyleAttribute(unit.basePanel.getElement(), pair.getFirst(), pair.getSecond());
 			}
@@ -1286,7 +1287,326 @@
 		return TmHelper.getFirstContainee(super.getTmRepresentative(), containees);
 	}
 	
+	
+	
+	protected class UnitWidget extends Composite implements HasFocusHandlers, HasBlurHandlers, HasMouseOutHandlers, HasMouseOverHandlers, HasMouseDownHandlers, HasMouseUpHandlers{
+		private CaptionPanel basePanel = new CaptionPanel();
+		private Topic tmRepresentative = null;
+		private ArrayList<Widget> subElements = new ArrayList<Widget>();
+		
+		
+		private UnitWidget(){
+			initWidget(this.basePanel);
+		}
+		
+		
+		public UnitWidget(Topic tmRepresentative){
+			this();
+			this.tmRepresentative = tmRepresentative;
+		}
+		
+		
+		public Topic getTmRepresentative(){
+			return this.tmRepresentative;
+		}
+		
+		
+		
+		// appends a new element in form of a topic to this unit-widget
+		public GdlVisibleObject append(Topic ancestor, Topic current) throws ExecutionException, InvalidGdlSchemaException {
+			if(ancestor == null || current == null) throw new ExecutionException("to append \"" + TmHelper.getAnyIdOfTopic(current) + "\" on \"" + TmHelper.getAnyIdOfTopic(ancestor) + "\" both topics must be present");
+			GdlPosition position = new GdlPosition(TmHelper.getPositionOf(ancestor, current));
+			
+			GdlVisibleObject newObj = GdlInstantiator.instantiate(current);
+			GdlVisibleObject oldObj = null;
+			for (Widget widget : this.subElements){
+				if(((GdlVisibleObject)widget).getTmRepresentative().equals(ancestor)){
+					oldObj = (GdlVisibleObject)widget;
+					break;
+				}
+			}
+			
+			this.subElements.add(newObj);
+			if(this.getTmRepresentative().equals(ancestor)){
+				this.basePanel.add(newObj);
+			}
+			else{
+				Element elemBefore = oldObj.getElement();
+				Element elemAfter = DOM.getNextSibling(elemBefore);
+				// insert before seems to be a more accepted and stable
+				// way of inserting new child elements than insertAfter
+				if(elemAfter == null) this.basePanel.add(newObj);
+				else this.basePanel.getElement().insertBefore(newObj.getElement(), elemAfter);
+			}			
+			position.setAttributes(newObj);
+			return newObj;
+		}
+		
+		
+		public void setId(String id){
+			DOM.setElementAttribute(this.basePanel.getElement(), "id", id);
+		}
+		
 		
+		// some css style setters
+		public void setHeight(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "height", value);
+		}
+		
+		
+		public void setMaxHeight(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "maxHeight", value);
+		}
+		
+		
+		public void setMinHeight(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "minHeight", value);
+		}
+		
+		
+		public void setWidth(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "width", value);
+		}
+		
+		
+		public void setMaxWidth(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "maxWidth", value);
+		}
+		
+		
+		public void setMinWidth(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "minWidth", value);
+		}
+		
+		
+		public void setBorderWidth(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderWidth", value);
+		}
+		
+		
+		public void setBorderTopWidth(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderTopWidth", value);
+		}
+		
+		
+		public void setBorderRightWidth(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderRightWidth", value);
+		}
+		
+				
+		public void setBorderBottomWidth(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderBottomWidth", value);
+		}
+		
+		
+		public void setBorderLeftWidth(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderLeftWidth", value);
+		}
+
+		
+		public void setBorderColor(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderColor", value);
+		}
+		
+		
+		public void setBorderTopColor(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderTopColor", value);
+		}
+		
+		
+		public void setBorderRightColor(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderRightColor", value);
+		}
+		
+
+		public void setTextDecoration(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "textDecoration", value);
+		}
+		
+				
+		public void setBorderBottomColor(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderBottomColor", value);
+		}
+		
+		
+		public void setBorderLeftColor(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderLeftColor", value);
+		}
+	
+		
+		public void setBorderStyle(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderStyle", value);
+		}
+		
+		
+		public void setBorderTopStyle(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderTopStyle", value);
+		}
+		
+		
+		public void setBorderRightStyle(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderRightStyle", value);
+		}
+		
+				
+		public void setBorderBottomStyle(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderBottomStyle", value);
+		}
+		
+		
+		public void setBorderLeftStyle(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderLeftStyle", value);
+		}
+	
+		
+		public void setPadding(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "padding", value);
+		}
+		
+		
+		public void setPaddingTop(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "paddingTop", value);
+		}
+		
+		
+		public void setPaddingRight(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "paddingRight", value);
+		}
+		
+				
+		public void setPaddingBottom(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "paddingBottom", value);
+		}
+		
+		
+		public void setPaddingLeft(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "paddingLeft", value);
+		}
+	
+
+		public void setMargin(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "margin", value);
+		}
+		
+		
+		public void setMarginTop(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "marginTop", value);
+		}
+		
+		
+		public void setMarginRight(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "marginRight", value);
+		}
+		
+				
+		public void setMarginBottom(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "marginBottom", value);
+		}
+		
+		
+		public void setMarginLeft(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "marginLeft", value);
+		}
+		
+		
+		public void setBorderRadius(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderRadius", value);
+		}
+		
+		
+		public void setBorderTopRightRadius(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderTopRightRadius", value);
+		}
+		
+		
+		public void setBorderBottomRightRadius(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderBottomRightRadius", value);
+		}
+		
+				
+		public void setBorderBottomLeftRadius(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderBottomLeftRadius", value);
+		}
+		
+		
+		public void setBorderTopLeftRadius(String value){
+			DOM.setStyleAttribute(this.basePanel.getElement(), "borderTopLeftRadius", value);
+		}
+		
+		
+		public String getCaption() {
+			return this.basePanel.getCaptionText();
+		}
+		
+		
+		// sets the unit's name. If the name is "" or null,
+		// the legend element is set to non-visible
+		public void setCaption(String caption) {
+			if(caption == null || caption.length() == 0){
+				this.basePanel.setCaptionText(caption);
+				//DOM.setStyleAttribute(this.legend, "display", "none");
+			} else {
+				this.basePanel.setCaptionText(caption);
+				//DOM.setStyleAttribute(this.legend, "display", "inline");
+			}
+		}
+		
+		
+		// returns true if the passed style property must be applied on both the fieldset and absolutepanel
+		public boolean styleOfUnitWidgetBase(String styleProperty){
+			if(styleProperty.equals("borderWidth") || styleProperty.equals("borderTopWidth") || styleProperty.equals("borderRightWidth") || styleProperty.equals("borderBottomWidth") || styleProperty.equals("borderLeftWidth")){
+				return false;
+			}else if(styleProperty.equals("borderColor") || styleProperty.equals("borderTopColor") || styleProperty.equals("borderRightColor") || styleProperty.equals("borderBottomColor") || styleProperty.equals("borderLeftColor")){
+				return false;
+			}else if(styleProperty.equals("padding") || styleProperty.equals("paddingTop") || styleProperty.equals("paddingRight") || styleProperty.equals("paddingBottom") || styleProperty.equals("paddingLeft")){
+				return false;
+			}else if(styleProperty.equals("margin") || styleProperty.equals("marginTop") || styleProperty.equals("marginRight") || styleProperty.equals("marginBottom") || styleProperty.equals("marginLeft")){
+				return false;
+			}else if(styleProperty.equals("borderRadius") || styleProperty.equals("borderTopRightRadius") || styleProperty.equals("borderBottomRightRadius") || styleProperty.equals("borderBottomLeftRadius") || styleProperty.equals("borderTopLeftRadius")){
+				return false;
+			}else {
+				return true;
+			}
+		}
+
+
+		@Override
+		public HandlerRegistration addMouseUpHandler(MouseUpHandler handler) {
+			return this.addDomHandler(handler, MouseUpEvent.getType());
+		}
+
+
+		@Override
+		public HandlerRegistration addMouseDownHandler(MouseDownHandler handler) {
+			return this.addDomHandler(handler, MouseDownEvent.getType());
+		}
+
+
+		@Override
+		public HandlerRegistration addMouseOverHandler(MouseOverHandler handler) {
+			return this.addDomHandler(handler, MouseOverEvent.getType());
+		}
+
+
+		@Override
+		public HandlerRegistration addMouseOutHandler(MouseOutHandler handler) {
+			return this.addDomHandler(handler, MouseOutEvent.getType());
+		}
+
+
+		@Override
+		public HandlerRegistration addBlurHandler(BlurHandler handler) {
+			return this.addDomHandler(handler, BlurEvent.getType());
+		}
+
+
+		@Override
+		public HandlerRegistration addFocusHandler(FocusHandler handler) {
+			return this.addDomHandler(handler, FocusEvent.getType());
+		}
+	}
+	
+	/*
 	// wraps a fieldset with a legend item that represent a group-element
 	protected class UnitWidget extends Composite implements HasFocusHandlers, HasBlurHandlers, HasMouseOutHandlers, HasMouseOverHandlers, HasMouseDownHandlers, HasMouseUpHandlers{
 		private AbsolutePanel basePanel = new AbsolutePanel();
@@ -1611,4 +1931,5 @@
 			}
 		}
 	}
+	*/
 }
\ No newline at end of file

Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/war/gdl_widgets/test.gdl.jtm
==============================================================================
--- branches/gdl-frontend/src/anaToMia/GDL_Widgets/war/gdl_widgets/test.gdl.jtm	Wed Jul 20 07:32:13 2011	(r651)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/war/gdl_widgets/test.gdl.jtm	Wed Jul 20 10:01:42 2011	(r652)
@@ -38,6 +38,7 @@
            {"subject_identifiers":["[gdl:nth-element]"], "instance_of":["si:[tmcl:role-type]"]},
            {"subject_identifiers":["[gdl:background-color]"], "instance_of":["si:[tmcl:occurrence-type]"]},
            {"subject_identifiers":["[gdl:width]"], "instance_of":["si:[tmcl:occurrence-type]"]},
+           {"subject_identifiers":["[gdl:unit-name]"], "instance_of":["si:[tmcl:occurrence-type]"]},
            {"subject_identifiers":["[gdl:height]"], "instance_of":["si:[tmcl:occurrence-type]"]},
            {"subject_identifiers":["[gdl:font-weight]"], "instance_of":["si:[tmcl:occurrence-type]"]},
            {"subject_identifiers":["[doc:default-creator-topic-view-1]"], "instance_of":["si:[gdl:Default-Creator-Topic-View]"], "names":[{"value": "Def. Creator View 1", "type":"si:[gdl:view-name]"}], "occurrences":[{"type":"si:[gdl:id]", "value":"default_creator_topic_view_1_id", "datatype":"[xsd:ID]"}, {"type":"si:[gdl:background-color]", "value":"#ccc"}, {"type":"si:[gdl:width]", "value":"500px"}, {"type":"si:[gdl:height]", "value":"600px"}]},
@@ -51,6 +52,7 @@
            {"subject_identifiers":["[doc:list-item-2]"], "instance_of":["si:[gdl:Text]"], "occurrences":[{"type":"si:[gdl:id]", "value":"list_item_2_id", "datatype":"[xsd:ID]"}, {"type":"si:[gdl:padding]", "value":"5px"}, {"type":"si:[gdl:margin-top]", "value":"5px"}]},
            {"subject_identifiers":["[gdl:List-Box]"]},
            {"subject_identifiers":["[doc:text-1]"], "instance_of":["si:[gdl:Text]"], "occurrences":[{"type":"si:[gdl:id]", "value":"text_1_id", "datatype":"[xsd:ID]"}, {"type":"si:[gdl:readonly]", "value":"false", "datatype":"[xsd:boolean]"}]},
+           {"subject_identifiers":["[doc:unit-1]"], "instance_of":["si:[gdl:Unit]"], "occurrences":[{"type":"si:[gdl:id]", "value":"unit_1_id", "datatype":"[xsd:ID]"}, {"type":"si:[gdl:unit-name]", "value":"unit 1"}]},
            {"subject_identifiers":["[doc:title-1]"], "instance_of":["si:[gdl:Title]"], "occurrences":[{"type":"si:[gdl:id]", "value":"title_1_id", "datatype":"[xsd:ID]"}, {"type":"si:[gdl:text-decoration]", "value":"underline"}, {"type":"si:[gdl:background-color]", "value":"#ccc"}, {"type":"si:[gdl:font-weight]", "value":"bold"}]},
            {"subject_identifiers":["[doc:reference-1]"], "instance_of":["si:[gdl:Reference]"], "occurrences":[{"type":"si:[gdl:id]", "value":"reference_1_id", "datatype":"[xsd:ID]"}, {"type":"si:[gdl:margin-left]", "value":"200px"}, {"type":"si:[gdl:background-color]", "value":"yellow"}]},
            {"subject_identifiers":["[doc:list-box-1]"], "instance_of":["si:[gdl:List-Box]"], "occurrences":[{"type":"si:[gdl:id]", "value":"list_box_1_id", "datatype":"[xsd:ID]"}]},
@@ -60,12 +62,14 @@
            {"subject_identifiers":["[doc:pos-of-reference-1]"], "instance_of":["si:[gdl:Position]"], "occurrences":[{"type":"si:[gdl:position-style]", "value":"static"}]},
            {"subject_identifiers":["[doc:pos-of-list-box-1]"], "instance_of":["si:[gdl:Position]"], "occurrences":[{"type":"si:[gdl:position-style]", "value":"absolute"}, {"type":"si:[gdl:bottom]", "value":"5px"}, {"type":"si:[gdl:right]", "value":"5px"}]},
            {"subject_identifiers":["[doc:pos-of-person-list]"], "instance_of":["si:[gdl:Position]"]},
+           {"subject_identifiers":["[doc:pos-of-unit]"], "instance_of":["si:[gdl:Position]"]},
            {"subject_identifiers":["[gdl:position-style]"], "instance_of":["si:[tmcl:occurrence-type]"]},
            {"subject_identifiers":["[gdl:top]"], "instance_of":["si:[tmcl:occurrence-type]"]},
            {"subject_identifiers":["[gdl:right]"], "instance_of":["si:[tmcl:occurrence-type]"]},
            {"subject_identifiers":["[gdl:bottom]"], "instance_of":["si:[tmcl:occurrence-type]"]},
            {"subject_identifiers":["[gdl:left]"], "instance_of":["si:[tmcl:occurrence-type]"]},
            {"subject_identifiers":["[gdl:TM-Value]"]},
+           {"subject_identifiers":["[gdl:Unit]"]},
            {"subject_identifiers":["[gdl:Nth-Element]"]},
            {"subject_identifiers":["[gdl:nth-value]"], "instance_of":["si:[tmcl:occurrence-type]"]},
            {"subject_identifiers":["[doc:nth-elem-1]"], "instance_of":["si:[gdl:Nth-Element]"], "occurrences":[{"type":"si:[gdl:nth-value]", "value":"0"}]},
@@ -117,6 +121,7 @@
                  {"type":"si:[tmdm:supertype-subtype]", "roles":[{"type":"si:[tmdm:supertype]", "player":"si:[gdl:Text-Object]"},{"type":"si:[tmdm:subtype]", "player":"si:[gdl:List-Box]"}]},
                  {"type":"si:[tmdm:supertype-subtype]", "roles":[{"type":"si:[tmdm:supertype]", "player":"si:[gdl:Visible-Object]"},{"type":"si:[tmdm:subtype]", "player":"si:[gdl:List]"}]},
                  {"type":"si:[tmdm:supertype-subtype]", "roles":[{"type":"si:[tmdm:supertype]", "player":"si:[gdl:Descriptor]"},{"type":"si:[tmdm:subtype]", "player":"si:[gdl:Nth-Element]"}]},
+                 {"type":"si:[tmdm:supertype-subtype]", "roles":[{"type":"si:[tmdm:supertype]", "player":"si:[gdl:Text-Object]"},{"type":"si:[tmdm:subtype]", "player":"si:[gdl:Unit]"}]},
                  {"type":"si:[gdl:contains]", "roles":[{"type":"si:[gdl:container]", "player":"si:[doc:test-schema]"},{"type":"si:[gdl:containee]", "player":"si:[doc:default-creator-topic-view-1]"}]},
                  {"type":"si:[gdl:contains]", "roles":[{"type":"si:[gdl:container]", "player":"si:[doc:test-schema]"},{"type":"si:[gdl:containee]", "player":"si:[doc:default-creator-topic-view-2]"}]},
                  {"type":"si:[gdl:contains]", "roles":[{"type":"si:[gdl:container]", "player":"si:[doc:test-schema]"},{"type":"si:[gdl:containee]", "player":"si:[doc:default-editor-topic-view]"}]},
@@ -139,11 +144,13 @@
                  {"type":"si:[gdl:contains]", "roles":[{"type":"si:[gdl:container]", "player":"si:[doc:default-creator-topic-view-1]"},{"type":"si:[gdl:containee]", "player":"si:[doc:reference-1]"}]},
                  {"type":"si:[gdl:contains]", "roles":[{"type":"si:[gdl:container]", "player":"si:[doc:default-creator-topic-view-1]"},{"type":"si:[gdl:containee]", "player":"si:[doc:list-box-1]"}]},
                  {"type":"si:[gdl:contains]", "roles":[{"type":"si:[gdl:container]", "player":"si:[doc:default-creator-topic-view-1]"},{"type":"si:[gdl:containee]", "player":"si:[doc:person-list]"}]},
+                 {"type":"si:[gdl:contains]", "roles":[{"type":"si:[gdl:container]", "player":"si:[doc:default-creator-topic-view-1]"},{"type":"si:[gdl:containee]", "player":"si:[doc:unit-1]"}]},
                  {"type":"si:[gdl:position]", "roles":[{"type":"si:[gdl:descriptor]", "player":"si:[doc:pos-of-title-1]"},{"type":"si:[gdl:ancestor]", "player":"si:[doc:default-creator-topic-view-1]"}, {"type":"si:[gdl:descendant]", "player":"si:[doc:title-1]"}]},
                  {"type":"si:[gdl:position]", "roles":[{"type":"si:[gdl:descriptor]", "player":"si:[doc:pos-of-text-1]"},{"type":"si:[gdl:ancestor]", "player":"si:[doc:title-1]"}, {"type":"si:[gdl:descendant]", "player":"si:[doc:text-1]"}]},
                  {"type":"si:[gdl:position]", "roles":[{"type":"si:[gdl:descriptor]", "player":"si:[doc:pos-of-reference-1]"},{"type":"si:[gdl:ancestor]", "player":"si:[doc:text-1]"}, {"type":"si:[gdl:descendant]", "player":"si:[doc:reference-1]"}]},
                  {"type":"si:[gdl:position]", "roles":[{"type":"si:[gdl:descriptor]", "player":"si:[doc:pos-of-list-box-1]"},{"type":"si:[gdl:ancestor]", "player":"si:[doc:reference-1]"}, {"type":"si:[gdl:descendant]", "player":"si:[doc:list-box-1]"}]},
                  {"type":"si:[gdl:position]", "roles":[{"type":"si:[gdl:descriptor]", "player":"si:[doc:pos-of-person-list]"},{"type":"si:[gdl:ancestor]", "player":"si:[doc:list-box-1]"}, {"type":"si:[gdl:descendant]", "player":"si:[doc:person-list]"}]},
+                 {"type":"si:[gdl:position]", "roles":[{"type":"si:[gdl:descriptor]", "player":"si:[doc:pos-of-unit]"},{"type":"si:[gdl:ancestor]", "player":"si:[doc:person-list]"}, {"type":"si:[gdl:descendant]", "player":"si:[doc:unit-1]"}]},
                  {"type":"si:[gdl:contains]", "roles":[{"type":"si:[gdl:container]", "player":"si:[doc:person-list]"},{"type":"si:[gdl:containee]", "player":"si:[doc:list-item-1]"}, {"type":"si:[gdl:nth-element]", "player":"si:[doc:nth-elem-1]"}]},
                  {"type":"si:[gdl:contains]", "roles":[{"type":"si:[gdl:container]", "player":"si:[doc:person-list]"},{"type":"si:[gdl:containee]", "player":"si:[doc:list-item-2]"}, {"type":"si:[gdl:nth-element]", "player":"si:[doc:nth-elem-2]"}]},
                  {"type":"si:[gdl:contains]", "roles":[{"type":"si:[gdl:container]", "player":"si:[doc:person-list]"},{"type":"si:[gdl:containee]", "player":"si:[doc:list-item-3]"}, {"type":"si:[gdl:nth-element]", "player":"si:[doc:nth-elem-3]"}]}




More information about the Isidorus-cvs mailing list