[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] fenfire ./build.xml org/fenfire/Space.java org/...
From: |
Matti Katila |
Subject: |
[Gzz-commits] fenfire ./build.xml org/fenfire/Space.java org/... |
Date: |
Mon, 31 Mar 2003 07:37:48 -0500 |
CVSROOT: /cvsroot/fenfire
Module name: fenfire
Changes by: Matti Katila <address@hidden> 03/03/31 07:37:48
Modified files:
. : build.xml
org/fenfire : Space.java
org/fenfire/impl: AbstractSpace.java
org/fenfire/modules/pp: BgVob.java PPActionsImpl.java
PPActionsImpl.test PPCanvasCursor.java
PPCanvasNode.java
org/fenfire/util: ShortRDF.java
org/fenfire/view: CoordinatePlaneView.java
org/fenfire/view/buoy: PPLinker.java PPLinker.test
Added files:
org/fenfire/modules/pp: Pp.java SinglePaper.java
UniquePaperVob.java
org/fenfire/view: SpatialPlane.java
org/fenfire/view/buoy: BuoyAdaptor.java
Log message:
start the awt port of pp.
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/build.xml.diff?tr1=1.23&tr2=1.24&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/Space.java.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/impl/AbstractSpace.java.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/Pp.java?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/SinglePaper.java?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/UniquePaperVob.java?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/BgVob.java.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/PPActionsImpl.java.diff?tr1=1.12&tr2=1.13&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/PPActionsImpl.test.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/PPCanvasCursor.java.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/PPCanvasNode.java.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/util/ShortRDF.java.diff?tr1=1.15&tr2=1.16&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/SpatialPlane.java?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/CoordinatePlaneView.java.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/buoy/BuoyAdaptor.java?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/buoy/PPLinker.java.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/buoy/PPLinker.test.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
Patches:
Index: fenfire/build.xml
diff -u fenfire/build.xml:1.23 fenfire/build.xml:1.24
--- fenfire/build.xml:1.23 Thu Mar 27 06:27:53 2003
+++ fenfire/build.xml Mon Mar 31 07:37:47 2003
@@ -73,6 +73,14 @@
</java>
</target>
+ <target name="pp">
+ <java classname="org.fenfire.modules.pp.Pp" fork="true">
+ <arg value="${file}"/>
+ <classpath refid="theClassPath"/>
+ </java>
+ </target>
+
+
<target name="run-gl">
<java classname="org.fenfire.loom.Loom" fork="true">
<sysproperty key="vob.api" value="gl"/>
Index: fenfire/org/fenfire/Space.java
diff -u fenfire/org/fenfire/Space.java:1.2 fenfire/org/fenfire/Space.java:1.3
--- fenfire/org/fenfire/Space.java:1.2 Wed Mar 26 21:26:40 2003
+++ fenfire/org/fenfire/Space.java Mon Mar 31 07:37:47 2003
@@ -2,25 +2,28 @@
package org.fenfire;
+import org.nongnu.alph.*;
import java.util.Set;
import com.hp.hpl.mesa.rdf.jena.model.*;
import com.hp.hpl.mesa.rdf.jena.common.*;
-/** A ZZ space - a set of nodes and connections.
- * @diagram zzstruct
+/** An RDF space - a set of triplets
* @diagram delta
*/
public interface Space {
-String rcsid = "$Id: Space.java,v 1.2 2003/03/27 02:26:40 mudyc Exp $";
+String rcsid = "$Id: Space.java,v 1.3 2003/03/31 12:37:47 mudyc Exp $";
/** There are many plases where model is needed
* and this provides it.
*/
Model getModel();
+ /** XXX
+ */
+ Enfilade1D getEnfilade(RDFNode node);
/** Get a subject node by its ID.
* @diagram zzstruct
@@ -81,6 +84,18 @@
RDFNode N(RDFNode inSlice, Dim dim, int dir, Obs o);
RDFNode N(RDFNode inSlice, RDFNode dim, int dir, Obs o);
*/
+
+ /** Makes a new alph text node.
+ */
+ Resource N();
+
+ /** Makes a new alph text node with param text content.
+ */
+ Resource N(String text);
+
+ /** Make a new node from param subject with param property
+ */
+ Resource N(String text, Resource subject, Property property);
/** Delete a given node.
* @diagram zzstruct
Index: fenfire/org/fenfire/impl/AbstractSpace.java
diff -u fenfire/org/fenfire/impl/AbstractSpace.java:1.2
fenfire/org/fenfire/impl/AbstractSpace.java:1.3
--- fenfire/org/fenfire/impl/AbstractSpace.java:1.2 Thu Mar 27 02:53:07 2003
+++ fenfire/org/fenfire/impl/AbstractSpace.java Mon Mar 31 07:37:47 2003
@@ -29,7 +29,8 @@
package org.fenfire.impl;
import org.fenfire.*;
import org.fenfire.util.*;
-//import org.fenfire.errors.*;
+import org.fenfire.vocab.*;
+import org.nongnu.alph.*;
import com.hp.hpl.mesa.rdf.jena.vocabulary.RDF;
import com.hp.hpl.mesa.rdf.jena.model.*;
@@ -42,7 +43,8 @@
*/
public abstract class AbstractSpace implements Space{
-public static final String rcsid = "$Id: AbstractSpace.java,v 1.2 2003/03/27
07:53:07 tjl Exp $";
+public static final String rcsid = "$Id: AbstractSpace.java,v 1.3 2003/03/31
12:37:47 mudyc Exp $";
+ private static void pa(String s) {
System.out.println("AbstractSpace::"+s); }
protected ModularNodeTexter nodeTexter;
protected JavaObjector javaObjector;
@@ -59,6 +61,17 @@
public Model getModel() { return model; }
+ public Enfilade1D getEnfilade(RDFNode node) {
+ if (!(node instanceof Resource)) return null;
+
+ RDFNode n = node;
+ if (ShortRDF.isNodeType(model, n, ALPH.cloneType))
+ n = ShortRDF.getRes(model, n, ALPH.clone);
+
+ return ((VStreamNodeTexter)nodeTexter).getEnfilade(n, null);
+ }
+
+
/*
public Dim getDim(String s) {
@@ -67,6 +80,33 @@
abstract public Dim getCloneDim();
+ */
+
+ public Resource N() { return N(""); }
+ public Resource N(String text)
+ {
+ RDFNode clone = ShortRDF.newNode(model, ALPH.cloneType);
+ RDFNode data = ShortRDF.newNode(model, clone, ALPH.clone,
ALPH.dataType);
+ nodeTexter.setText(data, text);
+
+ return (Resource)clone;
+ }
+
+ public Resource N(String text, Resource subject, Property property)
+ { try {
+ // Do we need more checks!?
+
+ Resource obj = N(text);
+ subject.addProperty(property, obj);
+ return obj;
+
+ } catch (RDFException e) {
+ pa("Fault creating a new node: "+e);
+ throw new Error("Error in creating a new node.");
+ }}
+
+
+ /*
public final Node N() {
return N(getHomeNode());
}
Index: fenfire/org/fenfire/modules/pp/BgVob.java
diff -u fenfire/org/fenfire/modules/pp/BgVob.java:1.1
fenfire/org/fenfire/modules/pp/BgVob.java:1.2
--- fenfire/org/fenfire/modules/pp/BgVob.java:1.1 Thu Mar 27 05:32:17 2003
+++ fenfire/org/fenfire/modules/pp/BgVob.java Mon Mar 31 07:37:47 2003
@@ -25,7 +25,7 @@
/*
* Written by Tuukka Hastrup
*/
-package org.fenfire.modules.pp.vob;
+package org.fenfire.modules.pp;
import org.fenfire.impl.*;
import org.fenfire.*;
import org.nongnu.libvob.*;
@@ -43,7 +43,7 @@
* used to pan pretty easily.
*/
public class BgVob extends org.nongnu.libvob.Vob {
-public static final String rcsid = "$Id: BgVob.java,v 1.1 2003/03/27 10:32:17
mudyc Exp $";
+public static final String rcsid = "$Id: BgVob.java,v 1.2 2003/03/31 12:37:47
mudyc Exp $";
public static boolean dbg = false;
private static void pa(String s) { System.err.println(s); }
Index: fenfire/org/fenfire/modules/pp/PPActionsImpl.java
diff -u fenfire/org/fenfire/modules/pp/PPActionsImpl.java:1.12
fenfire/org/fenfire/modules/pp/PPActionsImpl.java:1.13
--- fenfire/org/fenfire/modules/pp/PPActionsImpl.java:1.12 Wed Mar 26
09:00:24 2003
+++ fenfire/org/fenfire/modules/pp/PPActionsImpl.java Mon Mar 31 07:37:47 2003
@@ -1,6 +1,7 @@
//(c): Tuomas J. Lukka and Matti Katila
package org.fenfire.modules.pp;
+import org.fenfire.*;
import org.fenfire.vocab.*;
import org.fenfire.util.*;
import java.io.IOException;
@@ -13,17 +14,17 @@
/** The implementation of PPActions.
*/
public class PPActionsImpl extends UnicastRemoteObject implements PPActions {
-public static final String rcsid = "$Id: PPActionsImpl.java,v 1.12 2003/03/26
14:00:24 mudyc Exp $";
+public static final String rcsid = "$Id: PPActionsImpl.java,v 1.13 2003/03/31
12:37:47 mudyc Exp $";
public static final boolean dbg = true;
protected static void p(String s) { if(dbg) pa(s); }
protected static void pa(String s) { System.out.println(s); }
- private Model model;
- public void setModel(Model model) { this.model = model; }
+ private Space space;
+ public void setSpace(Space space) { this.space = space; }
- public PPActionsImpl(Model model) throws RemoteException {
+ public PPActionsImpl(Space space) throws RemoteException {
super();
- setModel(model);
+ setSpace(space);
}
@@ -31,27 +32,22 @@
// --- implement PPActions
//
public String newPaper() throws RemoteException
- { synchronized(model) { try {
+ { synchronized(space) { try {
- // We need a unique uri for paper
- String uri = URN5Namespace.instance.generateId();
- Resource paper = model.createResource(uri);
-
- // and resource must be also paper..
- paper.addProperty(RDF.type, PP.paperType);
+ Resource paper = (Resource)ShortRDF.newNode(space.getModel(),
PP.paperType);
// set creation time
// XXX we need iso 8601 time presentation here
paper.addProperty(PP.creationTime, "123");
- return uri;
+ return paper.toString();
} catch (RDFException e) {
return "";
}}}
public void deletePaper(String paperURI) throws RemoteException
- { synchronized(model) {
+ { synchronized(space) {
/*
// must delete all notes first
Cell paper = space.getCell(paperId).h(d.contains, -1);
@@ -73,19 +69,19 @@
public String newNote(String paperURI, int x, int y, String text)
throws RemoteException
- { synchronized(model) { try {
+ { synchronized(space) { try {
// find the paper
- Resource paper = model.getResource(paperURI);
+ Resource paper = space.getModel().getResource(paperURI);
+ if (paper == null) {
+ pa("Paper is NULL!!");
+ return "";
+ }
// note doesn't exist so we need to make one
- String note_uri = URN5Namespace.instance.generateId();
- Resource note = model.createResource(note_uri);
+ Resource note = (Resource)space.N(text, paper, PP.contains);
note.addProperty(RDF.type, PP.noteType);
- // set note to paper
- paper.addProperty(PP.contains, note);
-
// set coords
note.addProperty(SPATIAL.coordX, ""+x);
note.addProperty(SPATIAL.coordY, ""+y);
@@ -95,10 +91,7 @@
// scale etc.. XXX
-
- // XXX use real Alph!!!!
- note.addProperty(ALPH.content, text);
- return note_uri;
+ return note.toString();
} catch (RDFException e) {
pa("Fault creating a new note: "+e);
@@ -108,7 +101,7 @@
public void deleteNote(String noteURI)
throws RemoteException
- { synchronized(model) { try {
+ { synchronized(space) { try {
/*
// MUST DELETE ALL ASSOCS FIRST
@@ -144,7 +137,7 @@
// not implemented
// ===============
- Resource note = model.getResource(noteURI);
+ Resource note = space.getModel().getResource(noteURI);
} catch (RDFException e) {
pa("Fault deleting a note: "+e);
@@ -152,14 +145,14 @@
public void moveNote(String noteURI, int x, int y)
throws RemoteException
- { synchronized(model) { try {
+ { synchronized(space) { try {
- Resource note = model.getResource(noteURI);
+ Resource note = space.getModel().getResource(noteURI);
if (note == null) return;
// delete all old coords
- ShortRDF.rmObj(model, note, SPATIAL.coordX);
- ShortRDF.rmObj(model, note, SPATIAL.coordY);
+ ShortRDF.rmObj(space.getModel(), note, SPATIAL.coordX);
+ ShortRDF.rmObj(space.getModel(), note, SPATIAL.coordY);
// set coords
note.addProperty(SPATIAL.coordX, ""+x);
@@ -171,9 +164,9 @@
public void assocNotes(String noteURI, int side, String assocURI)
throws RemoteException
- { synchronized(model) { try {
- Resource note = model.getResource(noteURI);
- Resource assoc = model.getResource(assocURI);
+ { synchronized(space) { try {
+ Resource note = space.getModel().getResource(noteURI);
+ Resource assoc = space.getModel().getResource(assocURI);
if (note == assoc) {
pa("link to itself???");
@@ -182,7 +175,7 @@
if (side < 0) {
// check if already associated
- if (((ModelCom)model).contains(assoc, PP.association,
(RDFNode)note)) {
+ if (((ModelCom)space.getModel()).contains(assoc, PP.association,
(RDFNode)note)) {
pa("Already associated!");
return;
}
@@ -191,7 +184,7 @@
assoc.addProperty(PP.association, note);
} else {
// check if already associated
- if (((ModelCom)model).contains(note, PP.association,
(RDFNode)assoc)) {
+ if (((ModelCom)space.getModel()).contains(note, PP.association,
(RDFNode)assoc)) {
pa("Already associated!");
return;
}
@@ -205,7 +198,7 @@
public void detachNotes(String id1, int side, String id2)
throws RemoteException
- { synchronized(model) {
+ { synchronized(space) {
/*
Cell c1 = space.getCell(id1).h(d.clone);
@@ -234,7 +227,7 @@
public void insertText(String noteURI, int offs, String text)
throws RemoteException
- { synchronized(model) { //try {
+ { synchronized(space) { //try {
/*
Cell note = space.getCell(noteId);
note.insertText(offs, text);
@@ -277,7 +270,7 @@
public void deleteText(String noteURI, int begin, int end)
throws RemoteException
- { synchronized(model) { // try {
+ { synchronized(space) { // try {
/*
Cell note = space.getCell(noteId);
note.deleteText(begin, end);
Index: fenfire/org/fenfire/modules/pp/PPActionsImpl.test
diff -u fenfire/org/fenfire/modules/pp/PPActionsImpl.test:1.3
fenfire/org/fenfire/modules/pp/PPActionsImpl.test:1.4
--- fenfire/org/fenfire/modules/pp/PPActionsImpl.test:1.3 Wed Mar 26
09:00:24 2003
+++ fenfire/org/fenfire/modules/pp/PPActionsImpl.test Mon Mar 31 07:37:47 2003
@@ -1,36 +1,39 @@
#(c): Matti Katila
-from org.fenfire.vocab import PP, SPATIAL
+from org.fenfire.vocab import PP, SPATIAL, ALPH
from org.fenfire.modules.pp import *
+from org.fenfire.impl import ModularSpace, SimpleVStreamTexter
from org.fenfire.util import URN5Namespace
+from org.nongnu.alph import impl
from com.hp.hpl.mesa.rdf import jena
from com.hp.hpl.mesa.rdf.jena.vocabulary import RDF
def setUp():
- global model, ppact
+ global model, space, ppact
model = jena.mem.ModelMem()
- ppact = PPActionsImpl(model)
+ space = ModularSpace(SimpleVStreamTexter(
+ impl.FakeSpanMaker(),
+ impl.Enfilade1DImpl.Enfilade1DImplMaker()),
+ model)
+ ppact = PPActionsImpl(space)
+def checkIter(slctr):
+ iter = model.listStatements(slctr)
+ assert iter.hasNext() == 1
+ stmt = iter.next()
+ assert iter.hasNext() == 0
+ return stmt
+
def testNewPaper():
paper = ppact.newPaper()
assert paper != ''
slctr = jena.common.SelectorImpl(None, RDF.type, PP.paperType)
- iter = model.listStatements(slctr)
- assert iter.hasNext() == 1
- stmt = iter.next()
- assert iter.hasNext() == 0
+ stmt = checkIter(slctr)
assert stmt.getSubject().toString() == paper
# XXX does not check creation time
-def checkIter(slctr):
- iter = model.listStatements(slctr)
- assert iter.hasNext() == 1
- stmt = iter.next()
- assert iter.hasNext() == 0
- return stmt
-
def testNewNote():
paper = URN5Namespace.instance.generateId()
paperRes = jena.common.ResourceImpl(paper)
@@ -39,6 +42,11 @@
# type test - NoteType
slctr = jena.common.SelectorImpl(noteRes, RDF.type, PP.noteType)
+ stmt = checkIter(slctr)
+ assert stmt.getSubject().toString() == note
+
+ # has note any content?
+ slctr = jena.common.SelectorImpl(noteRes, RDF.type, ALPH.cloneType)
stmt = checkIter(slctr)
assert stmt.getSubject().toString() == note
Index: fenfire/org/fenfire/modules/pp/PPCanvasCursor.java
diff -u fenfire/org/fenfire/modules/pp/PPCanvasCursor.java:1.1
fenfire/org/fenfire/modules/pp/PPCanvasCursor.java:1.2
--- fenfire/org/fenfire/modules/pp/PPCanvasCursor.java:1.1 Wed Mar 26
04:12:24 2003
+++ fenfire/org/fenfire/modules/pp/PPCanvasCursor.java Mon Mar 31 07:37:47 2003
@@ -4,9 +4,12 @@
import org.fenfire.view.*;
import org.fenfire.view.buoy.*;
import org.fenfire.util.*;
+import org.fenfire.*;
+import org.fenfire.vocab.PP;
import org.nongnu.libvob.*;
import org.nongnu.libvob.gl.*;
import org.nongnu.libvob.impl.*;
+import org.nongnu.libvob.impl.gl.*;
import org.nongnu.libvob.buoy.*;
import com.hp.hpl.mesa.rdf.jena.model.*;
import com.hp.hpl.mesa.rdf.jena.common.*;
@@ -20,9 +23,9 @@
/** XXX
*/
public class PPCanvasCursor implements BuoyViewMainNode {
-private static final String rcsid = "$Id: PPCanvasCursor.java,v 1.1 2003/03/26
09:12:24 mudyc Exp $";
+private static final String rcsid = "$Id: PPCanvasCursor.java,v 1.2 2003/03/31
12:37:47 mudyc Exp $";
public static boolean dbg = false;
- private static void pa(String s) {
System.out.println("PPCanvasCursor:"+s); }
+ private static void pa(String s) {
System.out.println("PPCanvasCursor::"+s); }
// Geometry
@@ -95,16 +98,18 @@
- private Object content;
+ private RDFNode node;
private NodePlacementHook hook;
private GraphicsAPI.Window window;
+ private Space space;
- public PPCanvasCursor(Object content,
+ public PPCanvasCursor(RDFNode node,
NodePlacementHook hook,
- GraphicsAPI.Window w) {
- this.content = content;
+ GraphicsAPI.Window w, Space space) {
+ this.node = node;
this.hook = hook;
this.window = w;
+ this.space = space;
/*
SimpleVStreamTexter sct = (SimpleVStreamTexter)space.getNodeTexter();
@@ -145,11 +150,24 @@
vs.matcher.add(into, c2fCS, "C2F");
vs.matcher.add(into, c2fCSInv, "C2FINV");
*/
- c2fCS = vs.orthoCS(into, "C2F",0,0,0, 10,10);
- int c2fCSInv = vs.orthoCS(into, "C2FINV",0,0,0, 10,10);
- setZoomPan(vs, into);
- // XXX SinglePaper.i(space, d, window, current).render(vs, into, c2fCS,
c2fCSInv, hook);
+ if (GraphicsAPI.getInstance() instanceof GLAPI) {
+ c2fCS = vs.orthoCS(into, "C2F",0,0,0, 10,10);
+ int c2fCSInv = vs.orthoCS(into, "C2FINV",0,0,0, 10,10);
+
+ setZoomPan(vs, into);
+ // XXX SinglePaper.i(space, d, window, current).render(vs, into,
c2fCS, c2fCSInv, hook);
+ } else {
+
+ // kludge
+ int focusCtr = vs.matcher.getCS("FocusCtr");
+
+ int zo = (int)(zoom * 100000);
+ int geometry = vs.orthoCS(focusCtr, "FocusGeometry",0, zo,0, panx,
pany);
+
+ vs.map.put(new UniquePaperVob(URN5Namespace.instance.generateId()),
into, geometry);
+ (new SpatialPlane(PP.noteType, PP.contains)).renderAWT(vs, into,
geometry, node, space, hook);
+ }
}
public void keystroke(String s) {
Index: fenfire/org/fenfire/modules/pp/PPCanvasNode.java
diff -u fenfire/org/fenfire/modules/pp/PPCanvasNode.java:1.3
fenfire/org/fenfire/modules/pp/PPCanvasNode.java:1.4
--- fenfire/org/fenfire/modules/pp/PPCanvasNode.java:1.3 Thu Mar 27
05:42:37 2003
+++ fenfire/org/fenfire/modules/pp/PPCanvasNode.java Mon Mar 31 07:37:47 2003
@@ -20,9 +20,9 @@
import com.hp.hpl.mesa.rdf.jena.vocabulary.*;
public class PPCanvasNode implements NodeBuoyViewNodeType {
-private static final String rcsid = "$Id: PPCanvasNode.java,v 1.3 2003/03/27
10:42:37 mudyc Exp $";
+private static final String rcsid = "$Id: PPCanvasNode.java,v 1.4 2003/03/31
12:37:47 mudyc Exp $";
public static boolean dbg = false;
- private static void pa(String s) { System.out.println("PPCanvasNode:"+s); }
+ private static void pa(String s) { System.out.println("PPCanvasNode::"+s);
}
private Space space;
private GraphicsAPI.Window win;
@@ -111,10 +111,7 @@
}
public BuoyViewMainNode createMainNode(RDFNode node, Object content,
NodePlacementHook hook) {
-
- // XXX
-
- return null;
+ return new PPCanvasCursor(node, hook, win, space);
}
Index: fenfire/org/fenfire/util/ShortRDF.java
diff -u fenfire/org/fenfire/util/ShortRDF.java:1.15
fenfire/org/fenfire/util/ShortRDF.java:1.16
--- fenfire/org/fenfire/util/ShortRDF.java:1.15 Thu Mar 27 05:10:38 2003
+++ fenfire/org/fenfire/util/ShortRDF.java Mon Mar 31 07:37:47 2003
@@ -8,7 +8,7 @@
public class ShortRDF {
-public static final String rcsid = "$Id: ShortRDF.java,v 1.15 2003/03/27
10:10:38 mudyc Exp $";
+public static final String rcsid = "$Id: ShortRDF.java,v 1.16 2003/03/31
12:37:47 mudyc Exp $";
private static void pa(String s) { System.out.println("ShortRDF"+s); }
public static Resource getRes(Model model, RDFNode node, Property
predicate)
@@ -25,6 +25,21 @@
throw new Error("ShortRDF has RDFException!");
}}
+ public static Resource getSubj(Model model, RDFNode obj, Property
predicate)
+ { try {
+ Selector selector = new SelectorImpl(null, predicate, obj);
+ StmtIterator iter = model.listStatements(selector);
+ if (iter.hasNext()) {
+ Statement stmt = iter.next();
+ return (Resource)stmt.getSubject();
+ }
+ else throw new Error("No available resources!");
+ } catch (RDFException e) {
+ pa("Exception ocurred!: "+e);
+ throw new Error("ShortRDF has RDFException!");
+ }}
+
+
public static int getInt(Model model, RDFNode node, Property predicate)
{ try {
Selector selector = new SelectorImpl((Resource)node, predicate,
(RDFNode) null);
@@ -60,10 +75,19 @@
*/
public static boolean isNodeType(Model model, RDFNode node, RDFNode type)
{ try {
+ Selector selector = new SelectorImpl((Resource)node, RDF.type, type);
+ StmtIterator iter = model.listStatements(selector);
+ while (iter.hasNext()) {
+ Statement stmt = iter.next();
+ if (stmt.getSubject().equals((Resource)node))
+ return true;
+ }
+ /*
if (
((Resource)node).getProperty(RDF.type).getObject().equals((Resource)type))
return true;
else
- return false;
+ */
+ return false;
} catch (RDFException e) {
pa("Exception ocurred!: "+e);
throw new Error("ShortRDF has RDFException!");
@@ -73,14 +97,14 @@
static public RDFNode newNode(Model model) {
return newNode(model, null);
}
- static public RDFNode newNode(Model model, RDFNode object)
+ static public RDFNode newNode(Model model, RDFNode type)
{ try {
String uri = URN5Namespace.instance.generateId();
- if (object == null) {
+ if (type == null) {
return model.createResource(uri);
} else {
Resource res = model.createResource(uri);
- res.addProperty(RDF.type, (Resource)object);
+ res.addProperty(RDF.type, (Resource)type);
return res;
}
} catch (RDFException e) {
@@ -112,13 +136,6 @@
((Resource)node).addProperty(property, res);
res.addProperty(RDF.type, (Resource)type);
-
- pa("node: "+ res);
- pa("foo: " + res.getProperty(RDF.type));
- if ( ((Resource)res).getProperty(RDF.type).equals((Resource)type))
- pa("ALL RIGHT!");
- if(!isNodeType(model, res, type)) throw new Error("ARGH");
-
return res;
} catch (RDFException e) {
Index: fenfire/org/fenfire/view/CoordinatePlaneView.java
diff -u fenfire/org/fenfire/view/CoordinatePlaneView.java:1.4
fenfire/org/fenfire/view/CoordinatePlaneView.java:1.5
--- fenfire/org/fenfire/view/CoordinatePlaneView.java:1.4 Thu Mar 27
04:02:32 2003
+++ fenfire/org/fenfire/view/CoordinatePlaneView.java Mon Mar 31 07:37:47 2003
@@ -25,7 +25,7 @@
*/
public class CoordinatePlaneView {
-public static final String rcsid = "$Id: CoordinatePlaneView.java,v 1.4
2003/03/27 09:02:32 mudyc Exp $";
+public static final String rcsid = "$Id: CoordinatePlaneView.java,v 1.5
2003/03/31 12:37:47 mudyc Exp $";
public static boolean dbg = false;
private static void pa(String s) {
System.out.println("CoordinatePlaneView"+s); }
@@ -44,7 +44,7 @@
"Vertex 1 1\n" +
"Vertex 1 0\n" +
"End\n" +
- "PopAttrib\n"
+ "PopAttrib"
);
}
}
@@ -56,26 +56,36 @@
/** Render with culling.
* @param cullCS is the clip cs or under zero if not used.
*/
- // public void render(VobScene vs, int into,
- // AbstractViewContext context, int cullCS,
- // Space space, NodePlacementHook hook)
- //{
- /*
- try {
+ public void render(VobScene vs, int into,
+ RDFNode node, int cullCS,
+ Space space, NodePlacementHook hook)
+ { // try {
+
+ Model mod = space.getModel();
+ RDFNode current = node;
+ RDFNode paper = current;
+
+ if (ShortRDF.isNodeType(mod, current, PP.noteType)) {
+ paper = ShortRDF.getSubj(mod, current, PP.contains);
+ }
+
+
+ /*
+
float[] bs = new float[2];
cursorBox = -1;
-
+
RDFNode node = context.getAccurse();
-
+
NodeView orig_nv = context.getNodeView();
-
+
Selector slctr = new SelectorImpl(node, PP.contains, (RDFNode) null);
StmtIterator iter = model.listStatements(slctr);
Statement stmt = null;
while (iter.hasNext()) {
RDFNode node = ((Statement)iter.next()).getSubject();
-
+
SimpleVStreamTexter sct =
(SimpleVStreamTexter)space.getCellTexter();
Enfilade1DImpl enf = (Enfilade1DImpl)sct.getEnfilade(node, null);
java.util.List enfList= enf.getList();
@@ -114,6 +124,8 @@
// get size XXX
boolean drawFrame = false;
+
+ */
/*
from nodeview nv.getSize(note, bs)
@@ -150,6 +162,7 @@
throw new Error("PPLinker error: Failed to doLink!!");
}
*/
- //}
+
+ }
}
Index: fenfire/org/fenfire/view/buoy/PPLinker.java
diff -u fenfire/org/fenfire/view/buoy/PPLinker.java:1.2
fenfire/org/fenfire/view/buoy/PPLinker.java:1.3
--- fenfire/org/fenfire/view/buoy/PPLinker.java:1.2 Wed Mar 26 09:00:25 2003
+++ fenfire/org/fenfire/view/buoy/PPLinker.java Mon Mar 31 07:37:47 2003
@@ -1,6 +1,7 @@
//(c): Matti Katila
package org.fenfire.modules.pp;
+import org.fenfire.*;
import org.fenfire.view.buoy.*;
import org.fenfire.util.*;
import org.fenfire.vocab.*;
@@ -12,13 +13,13 @@
/** Make the kinds of links familiar from PP structure.
*/
public class PPLinker implements BuoyNodeViewLinker {
-public static final String rcsid = "$Id: PPLinker.java,v 1.2 2003/03/26
14:00:25 mudyc Exp $";
+public static final String rcsid = "$Id: PPLinker.java,v 1.3 2003/03/31
12:37:47 mudyc Exp $";
public static boolean dbg = false;
private static void pa(String s) { System.out.println("PPLinker:"+s); }
- private Model model;
- public PPLinker(Model model) {
- this.model = model;
+ private Space space;
+ public PPLinker(Space space) {
+ this.space = space;
}
public void doLinks(RDFNode node, VobScene vs, int cs,
@@ -36,7 +37,7 @@
// Right links!
Selector slctr = new SelectorImpl(n, PP.association, (RDFNode) null);
- StmtIterator iter = model.listStatements(slctr);
+ StmtIterator iter = space.getModel().listStatements(slctr);
Statement stmt = null;
while (iter.hasNext()) {
@@ -48,7 +49,7 @@
// Left links!
slctr = new SelectorImpl(null, PP.association, n);
- iter = model.listStatements(slctr);
+ iter = space.getModel().listStatements(slctr);
while (iter.hasNext()) {
stmt = iter.next();
l.link(-1,cs,nodeType,
Index: fenfire/org/fenfire/view/buoy/PPLinker.test
diff -u fenfire/org/fenfire/view/buoy/PPLinker.test:1.3
fenfire/org/fenfire/view/buoy/PPLinker.test:1.4
--- fenfire/org/fenfire/view/buoy/PPLinker.test:1.3 Wed Mar 26 09:00:25 2003
+++ fenfire/org/fenfire/view/buoy/PPLinker.test Mon Mar 31 07:37:47 2003
@@ -2,18 +2,24 @@
from org.fenfire.modules.pp import *
from org.fenfire.vocab import PP
+from org.fenfire.impl import ModularSpace, SimpleVStreamTexter
import org.fenfire.view.buoy
from org.fenfire.util import URN5Namespace, Pair
from org.nongnu.libvob.buoy import BuoyViewNodeType,\
BuoyLinkListener
+from org.nongnu.alph import impl
from com.hp.hpl.mesa.rdf import jena
from org.fenfire.test.gfx import getvs
def setUp():
- global model
+ global model, space
model = jena.mem.ModelMem()
+ space = ModularSpace(SimpleVStreamTexter(
+ impl.FakeSpanMaker(),
+ impl.Enfilade1DImpl.Enfilade1DImplMaker()),
+ model)
global uriA, uriB
global nodeA, nodeB
@@ -27,7 +33,7 @@
nodeA.addProperty(PP.association, nodeB)
global ppLinker
- ppLinker = PPLinker(model)
+ ppLinker = PPLinker(space)
class NodeType(BuoyViewNodeType):
def getSizde(self, linkId, anchor, wh):
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gzz-commits] fenfire ./build.xml org/fenfire/Space.java org/...,
Matti Katila <=