[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ff-cvs] libvob/doc/pegboard/vob_event_action--mudyc peg...
From: |
Matti Katila |
Subject: |
[ff-cvs] libvob/doc/pegboard/vob_event_action--mudyc peg... |
Date: |
Mon, 15 Sep 2003 04:28:15 -0400 |
CVSROOT: /cvsroot/libvob
Module name: libvob
Branch:
Changes by: Matti Katila <address@hidden> 03/09/15 04:28:15
Modified files:
doc/pegboard/vob_event_action--mudyc: peg.rst
Log message:
hmm, still something important missing..
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/libvob/libvob/doc/pegboard/vob_event_action--mudyc/peg.rst.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
Patches:
Index: libvob/doc/pegboard/vob_event_action--mudyc/peg.rst
diff -u libvob/doc/pegboard/vob_event_action--mudyc/peg.rst:1.1
libvob/doc/pegboard/vob_event_action--mudyc/peg.rst:1.2
--- libvob/doc/pegboard/vob_event_action--mudyc/peg.rst:1.1 Mon Sep 8
04:55:39 2003
+++ libvob/doc/pegboard/vob_event_action--mudyc/peg.rst Mon Sep 15 04:28:13 2003
@@ -5,8 +5,8 @@
:Authors: Matti J. Katila
:Date-Created: 2003-09-08
-:Last-Modified: $Date: 2003/09/08 08:55:39 $
-:Revision: $Revision: 1.1 $
+:Last-Modified: $Date: 2003/09/15 08:28:13 $
+:Revision: $Revision: 1.2 $
:Status: Incomplete
:Stakeholders: mudyc, tjl
:Scope: Minor
@@ -14,13 +14,70 @@
.. Affect-PEGs:
-Short intro.
+Our framework still lacks of good way to create button and
+menu like objects. These objects are different than
+most other objects, since usually Vob doesn't know anything
+about events and events don't know anything about Vobs.
+Now it's time to take care that vobs and events
+meet eachother in a way that selectable objects
+can be created.
+
Issues
======
+..
Changes
=======
+
+Create a new abstract Vob which reacts to following events:
+
+ 1) select down(pre selection, event pressed but no released),
+ 2) select up(no events, mostly this is the normal mode before events) and
+ 3) selection selected(post selection, event pressed and released).
+
+These three selections, `selection modes`, are represent with
+three Vobs. Because of efficiency (reusing vobscene),
+the select Vob is immutable and all three Vobs must be given
+in constructor. The current `selection mode` is shown by one of the Vobs
+at the bottom and then placeable object is placed over it, i.e. text.
+The control of `selection mode` is done with second coordinate system.
+It is the only way to do it with immutable object.
+
+::
+
+ public abstract class AbstractSelectionVob {
+
+ protected final org.nongnu.libvob.lava.placeable.Placeable mask;
+ protected final Vob selectUpVob, selectDownVob, selectActivatedVob;
+
+ public AbstractSelectionVob(
+ org.nongnu.libvob.lava.placeable.Placeable mask,
+ Vob normalUpVob, Vob preSelectVob, Vob activatedVob
+ {
+ this.mask = mask;
+ this.selectUpVob = normalUpVob;
+ this.selectDownVob = preSelectVob;
+ this.selectActivatedVob = activatedVob;
+ }
+
+
+ public static int createControlCS(VobScene vs, Object key) {
+ vs.orthoCS(0, key,0, 1,2,3,4); // put placeholders
+ }
+
+ static public class ControlState { private ControlState() {; } }
+
+ /** Enumeration of control line.
+ */
+ static public final ControlState
+ selectUp = new ControlState(),
+ selectDown = new ControlState(),
+ selectionActivated = new ControlState();
+
+ public static void setControl(VobScene currentVS, int controlCS,
+ ControlState state) { ; }
+ }