294 Commits

Author SHA1 Message Date
buster%netscape.com
b7b8a5e07f * migrated and improved some fixes from the branch to the tip
* fixes sample6, yahoo resizing
* added BasicTableLayoutStrategy::ColIsSpecifiedAsMinimumWidth helper function,
which tells us if the given column has a width attribute that means "make me as small as possible"
* nsTableFrame methods now no longer use mCellMap directly, they ask for it from
GetCellMap which gets the cell map from the first-in-flow.  Only the first-in-flow has a
cell map because the cellmap refers to the table as a single object, not to each table frame.
* Likewise, continuing table frames do not call BalanceColumnWidths or SetTableWidth
which are "global" operations.  Responsibility for these lies with the first-in-flow.


git-svn-id: svn://10.0.0.236/trunk@8020 18797224-902f-48f8-a5cc-f745e15eee43
1998-08-14 16:16:43 +00:00
troy%netscape.com
f5d7d63a42 Removed MoveTo() and SizeTo() member functions that were for debug
purposes, and are no longer needed


git-svn-id: svn://10.0.0.236/trunk@7571 18797224-902f-48f8-a5cc-f745e15eee43
1998-08-07 18:17:34 +00:00
buster%netscape.com
a264875bff COLS attribute ignored if any column width info is specified (like <TD width=100>)
fixed lots of COLS related bugs.
handle min width spec (<TD width=0 or width=0% or width=0*>)
major fix to colspan handling


git-svn-id: svn://10.0.0.236/trunk@6493 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-26 04:23:01 +00:00
buster%netscape.com
5c09b61055 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.


git-svn-id: svn://10.0.0.236/trunk@6402 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-24 16:51:16 +00:00
buster%netscape.com
26234a5a97 * reworked the way colspan and rowspans are handled in table layout strategy. We do less work, and we look better.
* fixed more margin code.  we're inching towards correctness.
* the width contributed by a colspanning cell is now proportionately distributed to the columns based on the columns "effective width"
* added logic for handling illegal COLS attribute on a table (like COLS=4 in a 3-column table).  See nsTableFrame::GetEffectiveCOLSAttribute()
* added logic for handling illegal COLSPAN attribute on a cell (like COLSPAN=4 in a 3-column table).  See nsTableFrame::GetEffectiveColSpan().  This is wrong, and will get reworked soon.
* added the ability for cell width attributes to effect column width like Nav4.


git-svn-id: svn://10.0.0.236/trunk@6145 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-22 03:53:43 +00:00
buster%netscape.com
6ec4e2be88 fundemental overhaul of the BasicTableLayoutStrategy
We now cache lots of useful info in the colframes
we now properly account for margins just as uniform cellspacing


git-svn-id: svn://10.0.0.236/trunk@5754 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-16 23:23:31 +00:00
troy
eb7fa8a66e Changed API for CreateContinuingFrame and GetReflowMetrics to take
a reference to a nsIPresContext


git-svn-id: svn://10.0.0.236/trunk@5569 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-15 03:23:23 +00:00
troy
547dc8ae9b Changed Reflow() member function to take a reference to a nsIPresContext
instead of a pointer


git-svn-id: svn://10.0.0.236/trunk@5565 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-15 02:53:09 +00:00
buster
7e8cc1207b 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


git-svn-id: svn://10.0.0.236/trunk@5322 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-11 00:00:31 +00:00
buster
07691d8960 fix for empty tables. we now support tables that have no content.
git-svn-id: svn://10.0.0.236/trunk@5079 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-07 00:20:21 +00:00
troy
a40632c113 Incremental reflow work-in-progress
git-svn-id: svn://10.0.0.236/trunk@5065 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-06 21:39:23 +00:00
buster
ead43eee9f added support for "effective column widths", the width of a column pretending that spanning cells have no effect.
this gets us some more Nav4 compatibility.
several minor fixes.


git-svn-id: svn://10.0.0.236/trunk@5056 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-06 21:00:11 +00:00
troy
6b8fcf2004 Eliminated some usage of ChildAt()
git-svn-id: svn://10.0.0.236/trunk@4835 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-01 22:22:28 +00:00
troy
1d0565bf04 Moved shrink wrap code from table frame to table row group frame
git-svn-id: svn://10.0.0.236/trunk@4693 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-30 02:11:07 +00:00
buster
49fc78ed8a fixed some bugs related to rowspans. This gets us closer on pages like Mozilla.org that were getting wild table heights.
git-svn-id: svn://10.0.0.236/trunk@4429 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-24 19:13:19 +00:00
buster
fe4ba8793e lots of nested tables look much better
misc. nav4 compatibility enhancements
added the ability to QueryInterface for some specific table frame types


git-svn-id: svn://10.0.0.236/trunk@4348 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-23 23:23:21 +00:00
troy
a1d33a1377 Some work-in-progress for table incremental reflow
git-svn-id: svn://10.0.0.236/trunk@4282 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-23 05:43:27 +00:00
buster
dc23f3a90e Separated table content from table layout. This paves the way for XML/CSS-2 tables.
Lots and lots of optimizations.


git-svn-id: svn://10.0.0.236/trunk@3982 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-17 16:38:24 +00:00
troy
c1f731addb Eliminated FindCellLayoutData() and changed code to use GetCellLayoutData()
instead


git-svn-id: svn://10.0.0.236/trunk@3662 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-11 18:50:17 +00:00
buster
4955cecaaa column widths with cells that span columns now work in most cases, for pixels and percents
not yet implemented for the "constrained" case


git-svn-id: svn://10.0.0.236/trunk@3349 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-05 18:11:20 +00:00
peterl
bc184de5ad sync up to new style data apis
git-svn-id: svn://10.0.0.236/trunk@3322 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-05 06:09:09 +00:00
buster
a8657b2060 cell width calculations are working (not for colspan cells yet)
some bug fixes and optimizations
some of the more elaborate test cases are closer to Nav4-compatible


git-svn-id: svn://10.0.0.236/trunk@3301 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-05 02:36:25 +00:00
buster
c660db67ef a variety of fixes and optimizations
together with a fix troy just checked in, this makes a lot of real-world tables look a whole lot better


git-svn-id: svn://10.0.0.236/trunk@2982 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-03 00:43:53 +00:00
kipp
69de10fd12 Updated a few table API's so that percentage width could be properly computed
git-svn-id: svn://10.0.0.236/trunk@2759 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-30 21:21:51 +00:00
buster
a4a065bae0 some proportional column balancing now works
the <TABLE> COLS attribute is supported via proportional column balancing.


git-svn-id: svn://10.0.0.236/trunk@2648 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-29 22:08:19 +00:00
troy
003a885b86 Changed nsReflowState structs to be linked together
git-svn-id: svn://10.0.0.236/trunk@2643 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-29 20:36:05 +00:00
peterl
e232225565 added visibility style attribute
git-svn-id: svn://10.0.0.236/trunk@2306 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 23:17:29 +00:00
buster
314c1c9eb4 table width computation using style system (more than it used to, at least)
git-svn-id: svn://10.0.0.236/trunk@2294 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 22:03:16 +00:00
kostello
b9b928f869 Updated Table Border code to render HTML3.2 compatible borders (no longer using the cool,
CSS borders).
Fixed Table but submitted by Isaac David Guedalia <daniel_sh@gezernet.co.il>.


git-svn-id: svn://10.0.0.236/trunk@2288 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-26 20:57:24 +00:00
troy
d2d4e15ea4 Merged ResizeReflow() and IncrementalReflow() into one Reflow() member function
git-svn-id: svn://10.0.0.236/trunk@2253 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-25 17:31:49 +00:00
kostello
997174b4d5 * Added Support for cell spacing
* NOTE: due to changes in the style system -- things won't look correct right away.


git-svn-id: svn://10.0.0.236/trunk@2149 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-21 23:43:18 +00:00
thom
38a3d3a5fc fixed compile errors for mac
git-svn-id: svn://10.0.0.236/trunk@1984 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-19 23:11:28 +00:00
peterl
f9ecfae273 sync to new spacing apis
git-svn-id: svn://10.0.0.236/trunk@1471 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 22:28:01 +00:00
troy
5a839584c7 Change to nsIFrame API
git-svn-id: svn://10.0.0.236/trunk@1441 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-12 04:17:56 +00:00
kipp
d75e25fc42 Ported to new CreateFrame/CreateContinuingFrame APIs
git-svn-id: svn://10.0.0.236/trunk@1204 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-07 00:08:20 +00:00
troy
22a5d2831e Frames no longet store the content index-in-parent
git-svn-id: svn://10.0.0.236/trunk@1169 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-05 23:56:50 +00:00
kostello
36357f1dc0 Made SetStyleContext take the presentation context as a parameter
Made DidSetStyleContext virtual, since we need to override the behavior in subclasses
Moved attribute setting logic from nsTableCell to nsTableCellFrame
Table Borders are being drawn again : )
Table Padding is being displayed


git-svn-id: svn://10.0.0.236/trunk@1027 18797224-902f-48f8-a5cc-f745e15eee43
1998-05-01 20:44:55 +00:00
buster
3a3e869ea0 added nsITableLayoutStrategy as the interface for objects that manage
table column balancing.  Implemented in BasicTableLayoutStrategy (HTML4-spec).
nsTableFrame instantiates a strategy depending on the compatibility mode.


git-svn-id: svn://10.0.0.236/trunk@911 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-30 17:57:09 +00:00
kostello
d534119b9b Name changed from ResetColumnLayoutData to RecalcColumnLayoutData
git-svn-id: svn://10.0.0.236/trunk@801 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-28 22:41:25 +00:00
kipp
b87f9199b6 Port to removal of nsStyleMolecule
git-svn-id: svn://10.0.0.236/trunk@665 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-25 18:48:48 +00:00
troy
fd68898ebd Changed nsIFrame member functions to return a nsresult
git-svn-id: svn://10.0.0.236/trunk@346 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-17 01:41:24 +00:00
buster
b4bffd274b simple tables now paginate nicely. Some more complex tables
also paginate ok, though resizing in paginated mode doesn't work yet.
Captions still don't work.


git-svn-id: svn://10.0.0.236/trunk@332 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-16 22:21:32 +00:00
buster
cd9cbaa5c4 documentation changes
git-svn-id: svn://10.0.0.236/trunk@269 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-14 21:45:28 +00:00
kipp
fb1503758e moved to pub
git-svn-id: svn://10.0.0.236/trunk@165 18797224-902f-48f8-a5cc-f745e15eee43
1998-04-13 20:24:54 +00:00