Commit Graph

17 Commits

Author SHA1 Message Date
karnaze%netscape.com
a88b1a3f85 new nsCellMap, BasicTableLayoutStrategy, plus various fixes to table
frames while testing the new cell map and strategy
1999-07-28 08:09:02 +00:00
buster%netscape.com
481008636f fixed warnings 1999-06-28 13:44:40 +00:00
karnaze%netscape.com
a43b2445da collapsing rows, row groups, cols, col groups 1999-02-11 06:22:33 +00:00
buster%netscape.com
178ad83c45 changed getters to be XP_COM-like, with out-params instead of return values.
this is so these getters can be bound to an XPCOM interface, nsITableCellLayout
1999-02-11 01:16:28 +00:00
buster%netscape.com
a4725c5350 minor fix, moved a method call outside an assert macro 1998-10-20 14:35:41 +00:00
buster%netscape.com
9a953b8672 added ColIsSpannedInto, ColHasSpanningCells
moved *IsSpannedInto and *HasSpanningCells into cellmap, giving us the oppurtunity
to easily cache results if we want.  These methods are still accessed through nsTableFrame.
changed nsTableFrame::GetCellAt to nsTableFrame::GetCellFrameAt to make it more clear what
the method returns:  a frame, not content.
1998-09-18 22:37:14 +00:00
buster%netscape.com
5be0373ab2 fixed minColSpan to always be at least one. This helps support empty rows,
among other problems.
1998-09-03 06:15:18 +00:00
buster%netscape.com
70647d8bd6 fixed a space leak for tables with rowspans 1998-09-02 22:55:37 +00:00
buster%netscape.com
5b39e492d0 fixed a space leak caused by incorrect ~nsCellMap iteration through
the new data structures.
1998-09-02 21:51:01 +00:00
buster%netscape.com
49cf716e9d reimplemented cell map in terms of nsVoidArrays for incremental building.
the cellmap is now built incrementally, driven by nsTableRowFrame::InitialReflow
1998-08-31 21:23:28 +00:00
buster%netscape.com
2515e08aee improved colspan handling.
cells with colspans and specified widths divide their width provisionally between the columns they span. This provisional division is ammended by any cell in any of the effected columns that:
1) has a colspan=1, and
2) has a width specified
the widths of all other columns must be adjusted for cells like these.  Further complicating matters is that it seems <faith> that if multiple colspanning cells intersect a column and each has a width
specified such that the column would have a different width depending on which is used, only the first such cell is used </faith>.  I can neither confirm nor deny this reading the mozilla code.

I also taught the cell map how to deal with this situation:

 colspan=1 | colspan=2 | colspan=1
 colspan=1 | colspan=2 | colspan=1

This table "really" has 4 columns, but the middle cells are treated as if they have no colspan.
Trust me, it matters.  The original colspan attributes can't simply be thrown away because Mr. DOM
could come along at any time and add/remove a cell that would make them important.
1998-08-19 15:43:51 +00:00
buster%netscape.com
cc50c03239 GetColCount now returns the effective column count of the table, adjusted
for nonsense COLSPANs at the edge of a table.  Fixed some bugs this uncovered
where the cell was being asked for its colspan attribute rather than the table
being asked for the cell's effective col span.
1998-07-24 16:51:16 +00:00
buster
3e596fc26a major hackage to the table data structures. slimmer, simpler, faster
this work exposed a few bugs and slow spots, which have been fixed
for the aol page, I added some additional backwards compatibility code
to proportionately distribute width when a fixed-width cell has colspans
1998-07-11 00:00:31 +00:00
buster
72142b30f4 fixed 3 dumb bugs I introduced recently.
1. cellmap couldn't properly delete CellData because definition was unavailable
2. optimized table cells made taller wouldn't shrink when they should because we were not
remembering the previous desired height of the cell.
3. rows were placing cells on the left edge, and not adding in the left margin.
1998-07-07 01:06:51 +00:00
rods
19bb8ad4ac moved inlined SetCellAt to body 1998-06-08 22:07:15 +00:00
buster
469b205bb3 most HTML 4 attributes supported (though some are still ignored)
lots of methods made inline
1998-06-08 19:57:04 +00:00
kipp
098bef52b4 moved to pub 1998-04-13 20:24:54 +00:00