[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] alph/doc alph.rst
From: |
Tuomas J. Lukka |
Subject: |
[Gzz-commits] alph/doc alph.rst |
Date: |
Mon, 26 May 2003 04:26:52 -0400 |
CVSROOT: /cvsroot/alph
Module name: alph
Changes by: Tuomas J. Lukka <address@hidden> 03/05/26 04:26:52
Modified files:
doc : alph.rst
Log message:
more
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/alph/alph/doc/alph.rst.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
Patches:
Index: alph/doc/alph.rst
diff -u alph/doc/alph.rst:1.1 alph/doc/alph.rst:1.2
--- alph/doc/alph.rst:1.1 Mon May 26 04:06:16 2003
+++ alph/doc/alph.rst Mon May 26 04:26:52 2003
@@ -5,9 +5,17 @@
Alph is an implementation of xanalogical hypertext (see e.g. Nelson's
writings). The fundamental point in xanalogical hypertext is that
each smallest unit of media has a unique identity.
-Alph does not use the tumbler model in previous implementations,
-but is rather based on *scrollblocks* - fixed units
-of fluid media. This allows Alph to exist on top of Storm.
+
+Spans and Media types
+=====================
+
+The most user-visible objects in Alph are spans. A span
+is a contiguous block of permanent media, e.g. "the 5 characters
+'xyahb' typed on 5 May 2003 by Janne V. Kujala" or
+"the 23x12 block of pixels in a particular photo snapshot of a custom
+controller built from lego bricks by Asko Soukka".
+Spans are operated on much as any immutable media objects,
+like Java's own ``String``s.
The media types handled by Alph are
@@ -82,4 +90,56 @@
Note: Spans are immutable objects - the ``append()`` method returns
a new span, if the the object and the parameter were consecutive
in the right order.
+
+Manipulating text: Enfilades, Span makers
+=========================================
+
+
+Scrollblocks
+============
+
+Alph does not use the tumbler model in previous implementations,
+but is rather based on *scrollblocks* - fixed units
+of fluid media. This allows Alph to exist on top of Storm.
+
+Each span can contain media only inside one scrollblock:
+
+.. UML:: alph_scrollblock
+
+ class Span "interface"
+
+ class ScrollBlock
+ assoc multi(1) - multi(*) Span
+ methods
+ String getContentType()
+ Span getCurrent()
+ boolean isMutable()
+ String getID()
+ Object getBlockId()
+
+
+
+
+The scrollblock model assumes that given a span it is possible
+to access all the fluid media units inside the same block.
+However, this is not always true:
+there are some span types that do not have a real scroll block -
+``FakeTextSpan`` and ``URN5TextSpan``.
+
+
+Access to the original media: block files
+=========================================
+
+Alph does not currently provide access methods
+for data in images and pagespans. This is because the
+programs may use their own methods for accessing these -
+e.g. Fenfire uses either Java AWT *or* the Libvob OpenGL
+system implemented in C++. Forcing access using AWT images
+would make things inefficient for the OpenGL system.
+
+Because of this, Alph provides direct access to the underlying
+block:
+
+
+
- [Gzz-commits] alph/doc alph.rst,
Tuomas J. Lukka <=