//(c): Tuomas J. Lukka and Matti J. Katila package org.fenfire.view.buoy; import org.fenfire.view.*; import org.nongnu.libvob.*; import org.nongnu.libvob.buoy.*; import com.hp.hpl.mesa.rdf.jena.model.*; public interface NodeBuoyViewNodeType { /** True if this view "owns" a certain node. */ public boolean ownsNode(RDFNode node); /** Get the ideal size for this buoy. * (mudyc): Just and idea if vobscene width and height is passed in wh... * @return An object that, if passed to renderBuoy, may help * performance a little. */ public Object getSize(RDFNode node, Object content, float[] wh); /** Render this view centered on a given node. * Since this is delegated from BuoyViewNodeType.renderBuoy, * the same rules apply. * @see BuoyViewNodeType#renderBuoy * @param content If not null, an object describing the part of content * that the view should be centered on. Can be ignored. * @return The coordinate system of the anchor */ public int renderBuoy(VobScene vs, int into, RDFNode node, Object content, Object cachedSize); public BuoyViewMainNode createMainNode(RDFNode node, Object content, NodePlacementHook hook); }