[isidorus-cvs] r598 - in branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets: base complexData views
lgiessmann at common-lisp.net
lgiessmann at common-lisp.net
Mon Jul 11 15:07:34 UTC 2011
Author: lgiessmann
Date: Mon Jul 11 08:07:34 2011
New Revision: 598
Log:
gdl-frontend: Widgets: implemented the method GdlView.getStartElement that returns the a topic that represents the first visible object within a GdlView instance
Added:
branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/GdlPosition.java
Modified:
branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/GdlPsis.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/complexData/GdlDateTimePicker.java
branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlCreatorAssociationView.java
branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlDefaultCreatorTopicView.java
branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlEditorAssociationView.java
branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlSpecialCreatorTopicView.java
branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlSpecialEditorTopicView.java
branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlView.java
Added: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/GdlPosition.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/base/GdlPosition.java Mon Jul 11 08:07:34 2011 (r598)
@@ -0,0 +1,15 @@
+package us.isidor.gdl.anaToMia.Widgets.base;
+
+import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Topic;
+
+public class GdlPosition implements GdlDescriptor {
+
+
+
+ @Override
+ public Topic getTmRepresentative() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+}
Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/GdlPsis.java
==============================================================================
--- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/GdlPsis.java Mon Jul 11 06:50:59 2011 (r597)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/GdlPsis.java Mon Jul 11 08:07:34 2011 (r598)
@@ -200,7 +200,7 @@
public final static String gdlPosition = gdl + "position";
public final static String gdlNthPosition = gdl + "nth-position";
public final static String gdlButtonPosition = gdl + "button-position";
- public final static String gdlTmbinding = gdl + "tm-binding";
+ public final static String gdlTmBinding = gdl + "tm-binding";
public final static String gdlViewBinding = gdl + "view-binding";
}
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 11 06:50:59 2011 (r597)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/base/TestClass.java Mon Jul 11 08:07:34 2011 (r598)
@@ -1,13 +1,21 @@
package us.isidor.gdl.anaToMia.Widgets.base;
+import java.util.ArrayList;
+
import us.isidor.gdl.anaToMia.TmEngine.jtmsBasedEngine.JtmsTmEngine;
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Occurrence;
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Topic;
+import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.TopicMap;
+import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.TopicMapsTypes;
import us.isidor.gdl.anaToMia.Widgets.complexData.GdlDatePicker;
import us.isidor.gdl.anaToMia.Widgets.container.GdlUnit;
+import us.isidor.gdl.anaToMia.Widgets.environment.InvalidGdlSchemaException;
+import us.isidor.gdl.anaToMia.Widgets.environment.Pair;
import us.isidor.gdl.anaToMia.Widgets.isidorus.LoadSchemaCallback;
import us.isidor.gdl.anaToMia.Widgets.values.CursorValue;
+import us.isidor.gdl.anaToMia.Widgets.views.GdlView;
+
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
@@ -143,7 +151,38 @@
- GdlDatePicker tmp = new GdlDatePicker(tmpRepresentative);
+ GdlView tmp = new GdlView(tmpRepresentative) {
+
+ @Override
+ public boolean validate() {
+ // TODO Auto-generated method stub
+ return false;
+ }
+
+ @Override
+ public ArrayList<Pair<TopicMapsTypes, Object>> getTmValue() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public ArrayList<String> getStringValue() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public void append(GdlVisibleObject ancestor, GdlVisibleObject descendant)throws InvalidGdlSchemaException {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public TopicMap getContent() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+ };
this.mainPanel.add(tmp);
}catch(Exception e){
e.printStackTrace();
Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/complexData/GdlDateTimePicker.java
==============================================================================
--- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/complexData/GdlDateTimePicker.java Mon Jul 11 06:50:59 2011 (r597)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/complexData/GdlDateTimePicker.java Mon Jul 11 08:07:34 2011 (r598)
@@ -2,4 +2,5 @@
public class GdlDateTimePicker extends GdlComplexData {
// TODO: implement
+
}
Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlCreatorAssociationView.java
==============================================================================
--- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlCreatorAssociationView.java Mon Jul 11 06:50:59 2011 (r597)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlCreatorAssociationView.java Mon Jul 11 08:07:34 2011 (r598)
@@ -1,5 +1,7 @@
package us.isidor.gdl.anaToMia.Widgets.views;
+import java.util.ArrayList;
+
import com.google.gwt.dom.client.Style.Float;
import com.google.gwt.dom.client.Style.Overflow;
import com.google.gwt.event.dom.client.BlurEvent;
@@ -16,12 +18,14 @@
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Construct;
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Topic;
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.TopicMap;
+import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.TopicMapsTypes;
import us.isidor.gdl.anaToMia.Widgets.base.GdlVisibleObject;
import us.isidor.gdl.anaToMia.Widgets.environment.ActiveStyleHandler;
import us.isidor.gdl.anaToMia.Widgets.environment.ExecutionException;
import us.isidor.gdl.anaToMia.Widgets.environment.FocusStyleHandler;
import us.isidor.gdl.anaToMia.Widgets.environment.HoverStyleHandler;
import us.isidor.gdl.anaToMia.Widgets.environment.InvalidGdlSchemaException;
+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.BorderStyleValue;
@@ -420,4 +424,16 @@
}
+ @Override
+ public ArrayList<String> getStringValue() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ @Override
+ public ArrayList<Pair<TopicMapsTypes, Object>> getTmValue() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
}
Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlDefaultCreatorTopicView.java
==============================================================================
--- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlDefaultCreatorTopicView.java Mon Jul 11 06:50:59 2011 (r597)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlDefaultCreatorTopicView.java Mon Jul 11 08:07:34 2011 (r598)
@@ -1,5 +1,7 @@
package us.isidor.gdl.anaToMia.Widgets.views;
+import java.util.ArrayList;
+
import com.google.gwt.event.dom.client.BlurEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.event.dom.client.DomEvent;
@@ -11,12 +13,14 @@
import com.google.gwt.user.client.ui.Widget;
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Topic;
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.TopicMap;
+import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.TopicMapsTypes;
import us.isidor.gdl.anaToMia.Widgets.base.GdlVisibleObject;
import us.isidor.gdl.anaToMia.Widgets.environment.ActiveStyleHandler;
import us.isidor.gdl.anaToMia.Widgets.environment.ExecutionException;
import us.isidor.gdl.anaToMia.Widgets.environment.FocusStyleHandler;
import us.isidor.gdl.anaToMia.Widgets.environment.HoverStyleHandler;
import us.isidor.gdl.anaToMia.Widgets.environment.InvalidGdlSchemaException;
+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.BorderStyleValue;
@@ -461,4 +465,18 @@
// TODO Auto-generated method stub
}
+
+
+ @Override
+ public ArrayList<String> getStringValue() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+
+ @Override
+ public ArrayList<Pair<TopicMapsTypes, Object>> getTmValue() {
+ // TODO Auto-generated method stub
+ return null;
+ }
}
Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlEditorAssociationView.java
==============================================================================
--- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlEditorAssociationView.java Mon Jul 11 06:50:59 2011 (r597)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlEditorAssociationView.java Mon Jul 11 08:07:34 2011 (r598)
@@ -1,5 +1,7 @@
package us.isidor.gdl.anaToMia.Widgets.views;
+import java.util.ArrayList;
+
import com.google.gwt.dom.client.Style.Float;
import com.google.gwt.dom.client.Style.Overflow;
import com.google.gwt.event.dom.client.BlurEvent;
@@ -16,12 +18,14 @@
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Construct;
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Topic;
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.TopicMap;
+import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.TopicMapsTypes;
import us.isidor.gdl.anaToMia.Widgets.base.GdlVisibleObject;
import us.isidor.gdl.anaToMia.Widgets.environment.ActiveStyleHandler;
import us.isidor.gdl.anaToMia.Widgets.environment.ExecutionException;
import us.isidor.gdl.anaToMia.Widgets.environment.FocusStyleHandler;
import us.isidor.gdl.anaToMia.Widgets.environment.HoverStyleHandler;
import us.isidor.gdl.anaToMia.Widgets.environment.InvalidGdlSchemaException;
+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.BorderStyleValue;
@@ -463,6 +467,20 @@
// TODO Auto-generated method stub
}
+
+
+ @Override
+ public ArrayList<String> getStringValue() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+
+ @Override
+ public ArrayList<Pair<TopicMapsTypes, Object>> getTmValue() {
+ // TODO Auto-generated method stub
+ return null;
+ }
Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlSpecialCreatorTopicView.java
==============================================================================
--- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlSpecialCreatorTopicView.java Mon Jul 11 06:50:59 2011 (r597)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlSpecialCreatorTopicView.java Mon Jul 11 08:07:34 2011 (r598)
@@ -1,5 +1,7 @@
package us.isidor.gdl.anaToMia.Widgets.views;
+import java.util.ArrayList;
+
import com.google.gwt.dom.client.Style.Float;
import com.google.gwt.dom.client.Style.Overflow;
import com.google.gwt.event.dom.client.BlurEvent;
@@ -15,12 +17,14 @@
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Construct;
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Topic;
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.TopicMap;
+import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.TopicMapsTypes;
import us.isidor.gdl.anaToMia.Widgets.base.GdlVisibleObject;
import us.isidor.gdl.anaToMia.Widgets.environment.ActiveStyleHandler;
import us.isidor.gdl.anaToMia.Widgets.environment.ExecutionException;
import us.isidor.gdl.anaToMia.Widgets.environment.FocusStyleHandler;
import us.isidor.gdl.anaToMia.Widgets.environment.HoverStyleHandler;
import us.isidor.gdl.anaToMia.Widgets.environment.InvalidGdlSchemaException;
+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.BorderStyleValue;
@@ -464,5 +468,19 @@
// TODO Auto-generated method stub
}
+
+
+ @Override
+ public ArrayList<String> getStringValue() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+
+ @Override
+ public ArrayList<Pair<TopicMapsTypes, Object>> getTmValue() {
+ // TODO Auto-generated method stub
+ return null;
+ }
}
Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlSpecialEditorTopicView.java
==============================================================================
--- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlSpecialEditorTopicView.java Mon Jul 11 06:50:59 2011 (r597)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlSpecialEditorTopicView.java Mon Jul 11 08:07:34 2011 (r598)
@@ -1,5 +1,7 @@
package us.isidor.gdl.anaToMia.Widgets.views;
+import java.util.ArrayList;
+
import com.google.gwt.dom.client.Style.Float;
import com.google.gwt.dom.client.Style.Overflow;
import com.google.gwt.event.dom.client.BlurEvent;
@@ -15,12 +17,14 @@
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Construct;
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Topic;
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.TopicMap;
+import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.TopicMapsTypes;
import us.isidor.gdl.anaToMia.Widgets.base.GdlVisibleObject;
import us.isidor.gdl.anaToMia.Widgets.environment.ActiveStyleHandler;
import us.isidor.gdl.anaToMia.Widgets.environment.ExecutionException;
import us.isidor.gdl.anaToMia.Widgets.environment.FocusStyleHandler;
import us.isidor.gdl.anaToMia.Widgets.environment.HoverStyleHandler;
import us.isidor.gdl.anaToMia.Widgets.environment.InvalidGdlSchemaException;
+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.BorderStyleValue;
@@ -466,5 +470,19 @@
// TODO Auto-generated method stub
}
+
+
+ @Override
+ public ArrayList<String> getStringValue() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+
+ @Override
+ public ArrayList<Pair<TopicMapsTypes, Object>> getTmValue() {
+ // TODO Auto-generated method stub
+ return null;
+ }
}
Modified: branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlView.java
==============================================================================
--- branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlView.java Mon Jul 11 06:50:59 2011 (r597)
+++ branches/gdl-frontend/src/anaToMia/GDL_Widgets/src/us/isidor/gdl/anaToMia/Widgets/views/GdlView.java Mon Jul 11 08:07:34 2011 (r598)
@@ -1,101 +1,82 @@
package us.isidor.gdl.anaToMia.Widgets.views;
+import java.util.ArrayList;
+
import com.google.gwt.core.client.JsArray;
-import com.google.gwt.dom.client.Style.Overflow;
-import com.google.gwt.dom.client.Style.VerticalAlign;
-import com.google.gwt.event.dom.client.BlurHandler;
import com.google.gwt.event.dom.client.ClickHandler;
-import com.google.gwt.event.dom.client.FocusHandler;
-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.user.client.ui.Widget;
-import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Construct;
+import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Association;
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Name;
+import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Role;
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.Topic;
import us.isidor.gdl.anaToMia.TopicMaps.TopicMapsModel.TopicMap;
import us.isidor.gdl.anaToMia.Widgets.base.GdlPsis;
import us.isidor.gdl.anaToMia.Widgets.base.GdlVisibleObject;
import us.isidor.gdl.anaToMia.Widgets.base.IGdlContainer;
+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.values.ContentOrientationValue;
-public abstract class GdlView extends GdlVisibleObject implements IGdlContainer {
- private String viewName = "";
- private TopicMap tm = null;
- private Topic representative = null;
- // TODO: implement
-
+public abstract class GdlView extends GdlVisibleObject implements IGdlContainer, IGdlHasValue {
+ protected GdlView(){
+ super();
+ }
public GdlView(Topic tmRepresentative) throws InvalidGdlSchemaException, ExecutionException{
super(tmRepresentative);
- // TODO: implement
}
- protected void init(TopicMap tm, Topic representative) throws InvalidGdlSchemaException {
- this.tm = tm;
- this.representative = representative;
- JsArray<Name> viewNames = representative.getNames(tm.getTopicBySubjectIdentifier(tm.createLocator(GdlPsis.NameType.gdlViewName)));
+ public String getViewName()throws InvalidGdlSchemaException {
+ JsArray<Name> viewNames = super.tmRepresentative.getNames(tm.getTopicBySubjectIdentifier(tm.createLocator(GdlPsis.NameType.gdlViewName)));
if(viewNames.length() != 1){
throw new InvalidGdlSchemaException("A view must be bound to a " + GdlPsis.NameType.gdlViewName + " instance");
}
-
- this.viewName = viewNames.get(0).getValue();
+ return viewNames.get(0).getValue();
}
+
-
- public String getViewName(){
- return this.viewName;
+ public void registerButtonCallback(ClickHandler handler, String id){
+ //TODO: implement
}
+
-
- public abstract boolean validate();
-
-
- public abstract TopicMap getContent();
-
-
- public abstract void registerButtonCallback(ClickHandler handler, String id);
-
-
- public abstract void deregisterButtonCallback(ClickHandler handler, String id);
-
-
- @Override
- public void setVerticalAlign(Widget widget, VerticalAlign value, String styleClass) throws InvalidGdlSchemaException, ExecutionException {
+ public void deregisterButtonCallback(ClickHandler handler, String id){
// TODO: implement
}
-
- public void setContentOrientation(Widget widget, ContentOrientationValue value){
- // do nothing - since all content elements are positioned vie the GDL positioning concept
+ // Searches the topic that represents the first item that is playced within this view instance
+ // i.e. such an item must not have an association that is bound to it via a role of the type
+ // gdl:ancestor.
+ protected Topic getStartElement() throws InvalidGdlSchemaException {
+ JsArray<Role> roles = this.tmRepresentative.getRolesPlayed(this.tm.getTopicBySubjectIdentifier(tm.createLocator(GdlPsis.RoleType.gdlContainer)), this.tm.getTopicBySubjectIdentifier(tm.createLocator(GdlPsis.AssociationType.gdlContains)));
+ for(int i = 0; i != roles.length(); ++i){
+ Association assoc = roles.get(i).getParent();
+ JsArray<Role> assocRoles = assoc.getRoles(this.tm.getTopicBySubjectIdentifier(this.tm.createLocator(GdlPsis.RoleType.gdlContainee)));
+ ArrayList<Topic> topsWithoutAncestorPosAssoc = new ArrayList<Topic>();
+ for(int j = 0; j != assocRoles.length(); ++j){
+ Topic player = assocRoles.get(j).getPlayer();
+ if(player.getRolesPlayed(this.tm.getTopicBySubjectIdentifier(this.tm.createLocator(GdlPsis.RoleType.gdlAncestor)), this.tm.getTopicBySubjectIdentifier(this.tm.createLocator(GdlPsis.AssociationType.gdlPosition))).length() == 0){
+ topsWithoutAncestorPosAssoc.add(player);
+ }
+ }
+ if(topsWithoutAncestorPosAssoc.size() > 1){
+ String foundTops = "";
+ for (Topic topic : topsWithoutAncestorPosAssoc) {
+ foundTops += GdlPsis.getAnyIdOfTopic(topic) + ", ";
+ }
+ if(foundTops.length() >= 2)foundTops = foundTops.substring(0, foundTops.length() - 2);
+ throw new InvalidGdlSchemaException("A " + GdlPsis.TopicType.gdlView + " must have maximal one item that is desiganted to tbe the first item in this view, i.e. there must be zero or one items without being bound to a " + GdlPsis.RoleType.gdlAncestor + " but found: " + foundTops);
+ } else if(topsWithoutAncestorPosAssoc.size() == 1){
+ return topsWithoutAncestorPosAssoc.get(0);
+ }
+ }
+ return null;
}
-
-
-
-
- // TODO: implement addXYZhandler(handler, id);
-
-
-
- // hierarchy
- //
- // => Default-Topic-View => Default-Creator-Topic-View
- // => Default-Editor-Topic-View
- // => Topic-View
- // => Special-Topic-view => Special-Creator-Topic-view
- // => Special-Editor-Topic-View
- // Visible-Object => View
- //
- // => Association-view => Creator-Association-view
- // => Editor-Association-View
-}
+
+ public abstract TopicMap getContent();
+}
\ No newline at end of file
More information about the Isidorus-cvs
mailing list