fenfire-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ff-cvs] libvob/doc/pegboard/single_focus_manager--mudyc...


From: Matti Katila
Subject: [ff-cvs] libvob/doc/pegboard/single_focus_manager--mudyc...
Date: Mon, 15 Sep 2003 09:17:37 -0400

CVSROOT:        /cvsroot/libvob
Module name:    libvob
Branch:         
Changes by:     Matti Katila <address@hidden>   03/09/15 09:17:36

Modified files:
        doc/pegboard/single_focus_manager--mudyc: peg.rst 

Log message:
        finished the peg, i think

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/libvob/libvob/doc/pegboard/single_focus_manager--mudyc/peg.rst.diff?tr1=1.3&tr2=1.4&r1=text&r2=text

Patches:
Index: libvob/doc/pegboard/single_focus_manager--mudyc/peg.rst
diff -u libvob/doc/pegboard/single_focus_manager--mudyc/peg.rst:1.3 
libvob/doc/pegboard/single_focus_manager--mudyc/peg.rst:1.4
--- libvob/doc/pegboard/single_focus_manager--mudyc/peg.rst:1.3 Sat Sep  6 
00:57:05 2003
+++ libvob/doc/pegboard/single_focus_manager--mudyc/peg.rst     Mon Sep 15 
09:17:36 2003
@@ -5,86 +5,101 @@
 
 :Authors:  Matti J. Katila
 :Date-Created: 2003-09-05
-:Last-Modified: $Date: 2003/09/06 04:57:05 $
-:Revision: $Revision: 1.3 $
+:Last-Modified: $Date: 2003/09/15 13:17:36 $
+:Revision: $Revision: 1.4 $
 :Status:   Incomplete
 :Stakeholders: mudyc, tjl, benja
 :Scope:    Major
 :Type:     Interface
 
 
-The buoy oriented interface is in real use and must be stabilizer.
-Here are the proposal interface to be implemented by single manager.
-The term single manager means one focus view port which is arounded 
-by buoy view ports.
+The buoy oriented interface is in real use and must be stabilized.
+Here are the propose interface to be implemented by manager of
+one focus view port and buoy view ports.
 
 
 Issues
 ======
 
-- Method naming?
+..
 
 Changes
 =======
 
-The followin interface should be implemented:
+We define the following......
+The following interface should be implemented:
 
 ::
 
-    /** The manager for buoy view ports and one focus view port.
+    /** An interface for managing the buoy links and the construction 
+     * of base coordinate systems related to buoy view.
+     * Basicly the manager constructs activated coordinate systems for focus, 
main node,
+     * and for every buoy links. The information of buoys, i.e. buoy anchor, 
node type etc.,
+     * are needed afterwards when user clicks any of the buoys to perform an 
action.
      */
-    public interface BuoyManager {
+    public interface BuoyManager extends BuoyLinkListener {
 
-        /** Folow the buoy link that is given. 
-         * BuoyManager implementation should interpolate 
-         * the old buoy to main view port and 
-         * old main view port to new buoy.
+        /** Represantion of anchor object rendered with some node type.
+         * Buoy implementation should be memory efficient
+        * and this implies that it's not clear that reference of buoy, 
+        * which you asked from BuoyManager, is same after new draw is done.
+        */
+        public interface Buoy {
+
+           /** Get the node type of this buoy.
+            */
+           BuoyViewNodeType getNodeType();
+
+           /** Get the link identification which is 
+            * used in interpolations. The identification must be unique 
+             * to get proper interpolation.
+            */
+           Object getLinkId();
+
+
+           /** Get the anchor inside of this buoy. 
+             * The anchor is the object which was the reason to render this 
buoy.
+            */
+           Object getBuoyAnchor();
+
+
+           /** Get the coordinate system of this buoy.
+             * The cs is given and activated by BuoyManager and the node type
+             * of this Buoy renders into it.
+            */
+           int getBuoyCS();
+
+           /** Get the direction of this buoy. If direction > 0 
+            * buoy is on the rigth side, else the buoy is on the left side.
+            */
+           int getDirection();
+       }
+
+
+        /** Moves the focus to given buoy with interpolation from old buoy to 
new focus.
+         * If the Buoy is not from this BuoyManager an error is thrown.
+        * The old focus view port should be interpolated to new buoy.
          */
-        void followLink(Buoy buoy);
+        void moveFocusTo(Buoy buoy);
 
-
-        /** Draw the focus view port and buoys around it.
-         * @param into The coordinate system where the focus is drawn.
+        /** Draw the focus main node. While rendering BuoyViewMainNode 
+          * BuoyManager get buoys with LinkListener's call back 
+          * interface which it implements. The buoys must not be rendered
+          * while call back linking but after every link, because 
+          * main node might render into stenciled buffer.
+          * @param into The coordinate system where the focus is drawn.
          */
-        void drawScene(VobScene vs, int into);
+        void draw(VobScene vs, int into);
 
-        /** Returns the main node view.
+        /** Returns the focused main node.
          */
-        BuoyViewMainNode getViewMainNode();
+        BuoyViewMainNode getMainNode();
 
-        /** Return the buoy if it's associated with this manager 
-         * by given coordinate system, otherwise returns null.
+        /** To found the buoy which is clicked ask activated
+         * coordinate system from VobScene.
          */
         Buoy getBuoy(int cs);
-    }
-
 
-The Buoy class is one buoy floating around including these attributes 
-(In jython prototype implementation it used to be list of objects with 
-out any naming. At least definited C kind structure should be used instead.):
-
-
-::
-
-    /** One instance of buoy hanging around buoy view managered by BuoyManager.
-     * @see BuoyManager
-     */
-    public class Buoy {
-        public final BuoyViewNodeType buoyNode;
-        public final Object linkId, buoyAnchor;
-        public final int buoyCS, direction;
+    }
 
 
-        /** One buoy.
-         * @param linkId The link identification of this buoy used in 
interpolations.
-         * @param buoyCS The coordinate system of this buoy.
-         */
-        public Buoy(BuoyViewNodeType buoyNode, Object linkId, 
-               Object buoyAnchor, int buoyCS, int direction) {
-               this.buoyNode = buoyNode;
-               this.linkId = linkId;
-               this.buoyAnchor = buoyAnchor;
-               this.buoyCS = buoyCS;
-               this.direction = direction;
-        }
-    }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]