Commit Graph

702 Commits

Author SHA1 Message Date
buster%netscape.com
00a794eb94 BasicTableLayoutStrategy::Initialize now properly re-iinitializes instance variables
git-svn-id: svn://10.0.0.236/trunk@6173 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-22 18:22:12 +00:00
buster%netscape.com
97ce24b2ed fixed table width problems when there are colspanning cells
git-svn-id: svn://10.0.0.236/trunk@6154 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-22 05:38:41 +00:00
troy%netscape.com
878c1d1350 Changed PaintBorder() to use the (x,y) that's passed in
git-svn-id: svn://10.0.0.236/trunk@6152 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-22 05:02:07 +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
troy%netscape.com
e727c63ed5 Changed nsCSSRendering::PaintBorder() so the entire rect is used
and not just the width and height


git-svn-id: svn://10.0.0.236/trunk@6136 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-22 02:46:00 +00:00
troy%netscape.com
a237b859e6 Fixed it so tables that don't want a border don't get a border
git-svn-id: svn://10.0.0.236/trunk@6063 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-21 08:12:22 +00:00
troy%netscape.com
23025b2d69 Commented out code that was forcing the border style to solid rather
than using whatever is in the default ua style sheet (inset)


git-svn-id: svn://10.0.0.236/trunk@6062 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-21 07:47:46 +00:00
troy%netscape.com
5e3cee8013 Changed Paint() to use the parent frame's color style struct. We can't use our
color style struct because we're a pseudo frame and so the style system forces
us to have a transparent background


git-svn-id: svn://10.0.0.236/trunk@6026 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-20 23:58:00 +00:00
troy%netscape.com
6b933cd127 Changed Paint() to render the background if there is one
git-svn-id: svn://10.0.0.236/trunk@6025 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-20 23:56:17 +00:00
buster%netscape.com
2d3b42883a fixed a space leak/logic error handling colspans
added backwards compatibility for percent width tables inside of auto width tables (see http://webreview.com/wr/pub  warning:  you'll have to look at a local copy until
Troy/Vidur/somebody fixes an image problem.)


git-svn-id: svn://10.0.0.236/trunk@5842 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-17 21:02:28 +00:00
buster%netscape.com
2280d3dcab fixed table maxElementSize
git-svn-id: svn://10.0.0.236/trunk@5821 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-17 17:51:55 +00:00
buster%netscape.com
8928761040 we now allow empty rows
git-svn-id: svn://10.0.0.236/trunk@5820 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-17 17:51: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
kipp%netscape.com
fe90cdc817 Fix incremental reflow bug
git-svn-id: svn://10.0.0.236/trunk@5748 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-16 22:15:02 +00:00
troy
ca3a5dd4c3 Some more changes of nsIPresContext* to nsIPresContext&
git-svn-id: svn://10.0.0.236/trunk@5601 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-15 17:05:21 +00:00
troy
ee770f6c01 Added an XXX to remind me to talk with Cujo about how we determine
whether the column widths have changed...


git-svn-id: svn://10.0.0.236/trunk@5581 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-15 04:52:32 +00:00
troy
fea23176e8 Turned off some code that was accidently turned on
git-svn-id: svn://10.0.0.236/trunk@5580 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-15 04:46:51 +00:00
troy
daf7150ca5 Some improvements to the incremental reflow logic to handle all the
cases handled by resize reflow


git-svn-id: svn://10.0.0.236/trunk@5579 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-15 04:45:58 +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
troy
5d54fed53c Incremental reflow changes
git-svn-id: svn://10.0.0.236/trunk@5482 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-14 15:29:50 +00:00
buster
d23536257e turned debug noise off
git-svn-id: svn://10.0.0.236/trunk@5412 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-13 20:44:07 +00:00
buster
1a959d659a for Nav compatibility, 0-width cells do not have insets
git-svn-id: svn://10.0.0.236/trunk@5411 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-13 20:41:38 +00:00
buster
b481b4f1eb added Nav4 compatibility code for 0-width cells
git-svn-id: svn://10.0.0.236/trunk@5400 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-13 19:22:45 +00:00
buster
e51faf6d00 fixed 2 minor space leaks having to do with temporary structs allocated
to handle colspans


git-svn-id: svn://10.0.0.236/trunk@5398 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-13 18:11:12 +00:00
kipp
c6eae7d71d Reflow child when max-element-size is requested (this works around a purify detected crash)
git-svn-id: svn://10.0.0.236/trunk@5375 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-12 00:19:17 +00:00
troy
fd17693b35 Added back in some changes that got lost in the previous
check-in


git-svn-id: svn://10.0.0.236/trunk@5359 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-11 04:16:29 +00:00
buster
27d15214e7 fixed unix build, and one small uninitialized variable problem
git-svn-id: svn://10.0.0.236/trunk@5326 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-11 00:47:29 +00:00
buster
8baeb40126 *** empty log message ***
git-svn-id: svn://10.0.0.236/trunk@5323 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-11 00:08:08 +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
troy
5b2534fcda More code re-shuffling. I need to hurry and check-in before Cujo
whacks the tree


git-svn-id: svn://10.0.0.236/trunk@5320 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-10 22:56:13 +00:00
troy
99f12e096a Deprecated the SetFirstContentOffset/SetLastContentOffset member
functions that take a nsIFrame*


git-svn-id: svn://10.0.0.236/trunk@5297 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-10 19:04:06 +00:00
troy
45923e2e1b Changed it so we assume that rows are always complete
git-svn-id: svn://10.0.0.236/trunk@5277 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-10 05:23:05 +00:00
troy
c54f7d9d1c Some incremental improvements
git-svn-id: svn://10.0.0.236/trunk@5276 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-10 04:00:38 +00:00
troy
b936040985 Changed it so the inner table is reflowed by using the Reflow()
member function rather than poking the individual pass 1, pass 2, ...
member functions


git-svn-id: svn://10.0.0.236/trunk@5223 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-09 14:30:34 +00:00
troy
6044ce3680 Changes to the caption handling code
git-svn-id: svn://10.0.0.236/trunk@5176 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-08 20:21:17 +00:00
troy
e3b310d6e6 Tables not allow only one caption
git-svn-id: svn://10.0.0.236/trunk@5134 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-08 04:49:01 +00:00
troy
276aea3a61 Cleaned up ShrinkWrapChildren so pass 1 doesn't resize the rows
git-svn-id: svn://10.0.0.236/trunk@5084 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-07 03:48:21 +00:00
buster
38ee9372e2 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.


git-svn-id: svn://10.0.0.236/trunk@5082 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-07 01:06:51 +00:00
troy
3b5b47465b More incremental reflow changes
git-svn-id: svn://10.0.0.236/trunk@5081 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-07 00:49:07 +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
buster
4771ca51e3 fixed a few bugs with distributing excess/restricted space inappropriately.
we now pass around info about whether we're an auto width table.


git-svn-id: svn://10.0.0.236/trunk@5074 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-06 22:48:19 +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
91626f8759 More work-in-progress incremental reflow code
git-svn-id: svn://10.0.0.236/trunk@4951 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-02 23:19:31 +00:00
kipp
7cf6711c96 Fixed bug where tables weren't returning a proper set of metrics
git-svn-id: svn://10.0.0.236/trunk@4919 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-02 21:24:56 +00:00
troy
89a3525fb4 Moved code that resized the table row cells from the row group frame
to the row frame. It's now handled as part of the DidReflow() post-
processing code


git-svn-id: svn://10.0.0.236/trunk@4916 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-02 20:35:23 +00:00
buster
192406dc56 added an optimization that skips pass2 cell reflows when the new available width is unchanged
from the prior available width.  Some real-world test cases sped up
1-2 orders of magnitude for resize reflow.  Initial reflow is unchanged because
we still need to get pass1 metrics on all content.
fixed nsCSSBlockFrame.cpp to take margins into account when computing parent's available width
fixed distribution of excess space to table cells when table is bigger than the content it holds.
not quite finished yet, but better.


git-svn-id: svn://10.0.0.236/trunk@4905 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-02 17:40:56 +00:00
troy
5984f25221 Some work-in-progress for incremental reflow
git-svn-id: svn://10.0.0.236/trunk@4892 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-02 05:39:10 +00:00
atotic
8336cedefe Fixed the for (PRInt32 i=) problem
git-svn-id: svn://10.0.0.236/trunk@4839 18797224-902f-48f8-a5cc-f745e15eee43
1998-07-01 22:40:00 +00:00