Re: Table workaround


Subject: Re: Table workaround
From: Georg Lehner (jorge@toa.magma.com.ni)
Date: Wed Dec 20 2000 - 21:30:27 CST


Hello!

I tried to take a look at Kword's tables, but it would mean to install
the whole kde,... maybe I go for it in holidays (what is this?).

However, one could start with rtf-tables. They are well (?) and
publicly described, and Abiword should be able to implement them
anyway. From my personal experience with Wordprocessors I liked most
StarOffice's capabilities for tables, but it is weak for selecting,
draging, moving contents, etc.

I middle-thing could be html-tables, which AbiWord should also manage.

If I think personally about an abstraction (LaTex's) minipages comes
to my mind, that is (in my abstraction, not in LaTex): a text box
which behaves like it were one AbiWord Page, i.e. it can hold any
content, but of course paragraphs of text in first place. It has
separate attribute sets for each border (top, bottom, left, right),
and can set it's background to color, filling grid or to an image. The
size of the box is determined by it's contents or by a x and/or y size
constraint.

A minipage is placed into a page either at an absolute x/y coordinate,
or relatively to a paragraph, or to a character (or any other
selectable object. Text of the page in which the minipage is scaled
flows around it just at the users whish.

Now, a table is a mesh of minipages. Each minipage has a top, bottom
predecesor and a left and right follower. They are numbered
secuencially, independent from the "vertical" and "horizontal"
ordering. As each individual cell (minipage) can change it's size
arbitrarily even wholes can occur between them.

Law and order is established at construction time: If you insert a MxN
Table in a page the available page width is divided by M, M*N cells
are created, they are numbered in left - right, top - bottom order,
horizontal links are established each M succeding cells, vertical
links are established each M'th cell. The height of each cell is
initialized to one line of standar text.

Figure out by yourself how you make selecting columns then, and all
the other nice things like adding height to all horizontal linked
cells if a minipage grows higher when the text wraps one line,... . If
the user deletes on cell in the middle and distort's her neighbors
sizes she is looking for chaos and will get it!

Now, I think it would be useful, to implement some trivial table type,
which simply let you do what tabs can do for you, but just a little
bit nicer. It would only need equal column widhths through all the
rows, and a single line or double line border per cell-limit to make
live easier for most standard secretary tasks like signatures, article
lists, etc. and maybe it is a simple quick hack.

It would not hurt to have both table types, and the trivial table first.

Best Regards

        Jorge-León



This archive was generated by hypermail 2b25 : Wed Dec 20 2000 - 21:33:14 CST