63 Commits

Author SHA1 Message Date
troy%netscape.com
b51e46e943 Removed nsIFrame::CreateContinuingFrame()
git-svn-id: svn://10.0.0.236/trunk@21866 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-25 05:31:15 +00:00
troy%netscape.com
70b1ea8e3f Added frame type atoms for several table frame classes
git-svn-id: svn://10.0.0.236/trunk@21708 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-24 05:54:31 +00:00
troy%netscape.com
16495c746c Changed GetRowIndex() so that for continued cell frames the row index is
that of the cell's first-in-flow


git-svn-id: svn://10.0.0.236/trunk@21439 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-21 19:55:22 +00:00
karnaze%netscape.com
6ccd350a1d collapsing rows, row groups, cols, col groups
git-svn-id: svn://10.0.0.236/trunk@20372 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-11 06:22:33 +00:00
buster%netscape.com
3dbeb7eb3f 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


git-svn-id: svn://10.0.0.236/trunk@20326 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-11 01:16:28 +00:00
troy%netscape.com
2af2ec249b Changed GetParent() to use ** instead of *&
git-svn-id: svn://10.0.0.236/trunk@20205 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-10 01:36:30 +00:00
kipp%netscape.com
4e355995e6 Spanked away SizeOf methods and nsIListFilter
git-svn-id: svn://10.0.0.236/trunk@17895 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-16 00:00:50 +00:00
troy%netscape.com
ecc9f6f19d Removed the content-parent frame pointer. Now we just have the one geometric
parent


git-svn-id: svn://10.0.0.236/trunk@17702 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-14 05:16:23 +00:00
buster%netscape.com
f409ad31b4 preliminary work for cell inheritence of valign and halign attributes from col(group) and row(group)
according to css 2 spec


git-svn-id: svn://10.0.0.236/trunk@17078 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-03 19:22:40 +00:00
buster%netscape.com
05fedad27b collapsing border computation and conflict resolution
git-svn-id: svn://10.0.0.236/trunk@16989 18797224-902f-48f8-a5cc-f745e15eee43
1998-12-30 06:48:15 +00:00
buster%netscape.com
0b215739a8 WIP for collapsing borders
git-svn-id: svn://10.0.0.236/trunk@16846 18797224-902f-48f8-a5cc-f745e15eee43
1998-12-23 15:47:43 +00:00
buster%netscape.com
9a780dd772 collapsing borders now do rounding of odd-thickness borders correctly
at the pixel level.  The odd pixel is always given to the right and bottom
cell borders whenever possible, and to the top and left table border otherwise.


git-svn-id: svn://10.0.0.236/trunk@16761 18797224-902f-48f8-a5cc-f745e15eee43
1998-12-21 18:54:23 +00:00
buster%netscape.com
f0d639e1bc beginnings of collapsing borders now implemented. Doesn't work for spanning cells yet,
and doesn't measure borders where the width changes along a shared edge yet.


git-svn-id: svn://10.0.0.236/trunk@16742 18797224-902f-48f8-a5cc-f745e15eee43
1998-12-21 06:38:18 +00:00
kipp%netscape.com
eaee82d4b3 Revised frame Paint API
git-svn-id: svn://10.0.0.236/trunk@16666 18797224-902f-48f8-a5cc-f745e15eee43
1998-12-18 15:54:23 +00:00
buster%netscape.com
7e9d6c54cd WIP on collapsing borders
git-svn-id: svn://10.0.0.236/trunk@16519 18797224-902f-48f8-a5cc-f745e15eee43
1998-12-16 17:05:14 +00:00
buster%netscape.com
dd4dfe439e clean up, removed some obsolete methods
git-svn-id: svn://10.0.0.236/trunk@16503 18797224-902f-48f8-a5cc-f745e15eee43
1998-12-16 06:33:15 +00:00
troy%netscape.com
3c043772bd Removed SetColIndex() which wasn't being used
git-svn-id: svn://10.0.0.236/trunk@16480 18797224-902f-48f8-a5cc-f745e15eee43
1998-12-16 01:35:25 +00:00
buster%netscape.com
0117f09401 support for CSS2 style property "empty-cells"
git-svn-id: svn://10.0.0.236/trunk@16177 18797224-902f-48f8-a5cc-f745e15eee43
1998-12-10 19:57:42 +00:00
troy%netscape.com
3b547e08e4 Moved logic that created a BODY frame that forms the cell's content from the
table frame code to the frame construction code


git-svn-id: svn://10.0.0.236/trunk@15755 18797224-902f-48f8-a5cc-f745e15eee43
1998-12-04 02:08:51 +00:00
buster%netscape.com
28547e48be minor optimizations and cleanup. removed constructors that did nothing.
git-svn-id: svn://10.0.0.236/trunk@15709 18797224-902f-48f8-a5cc-f745e15eee43
1998-12-03 20:19:01 +00:00
troy%netscape.com
01f27b2a31 Added Init() member function to nsIFrame
git-svn-id: svn://10.0.0.236/trunk@15682 18797224-902f-48f8-a5cc-f745e15eee43
1998-12-03 06:31:43 +00:00
buster%netscape.com
6f5b201dbe implemented table height algorithms. also made a slight modification to
the way a table finds its container's width.


git-svn-id: svn://10.0.0.236/trunk@14973 18797224-902f-48f8-a5cc-f745e15eee43
1998-11-20 01:01:25 +00:00
kipp%netscape.com
b527c7f026 Added DumpRegressionData; revised ListTag; added GetFrameName
git-svn-id: svn://10.0.0.236/trunk@14946 18797224-902f-48f8-a5cc-f745e15eee43
1998-11-19 17:22:29 +00:00
buster%netscape.com
0a52434582 support for frame and rules attribute
git-svn-id: svn://10.0.0.236/trunk@14443 18797224-902f-48f8-a5cc-f745e15eee43
1998-11-11 19:56:02 +00:00
troy%netscape.com
1c0da71da3 Renamed Init() to SetInitialChildList() and added an additional parameter
for the name of the child list


git-svn-id: svn://10.0.0.236/trunk@14333 18797224-902f-48f8-a5cc-f745e15eee43
1998-11-10 06:05:32 +00:00
buster%netscape.com
d2c0910241 various small fixes and clean up
git-svn-id: svn://10.0.0.236/trunk@14163 18797224-902f-48f8-a5cc-f745e15eee43
1998-11-05 21:42:46 +00:00
buster%netscape.com
cf08e060ad some extremely preliminary work for styleChanged incremental reflow
git-svn-id: svn://10.0.0.236/trunk@13722 18797224-902f-48f8-a5cc-f745e15eee43
1998-10-30 07:57:44 +00:00
buster%netscape.com
75468d7b44 all containers now decend from nsHTMLContainerFrame
all "unknown frame" incremental reflow support methods now
replaced with nsHTMLContainerFrame::AddFrame and ::RemoveFrame


git-svn-id: svn://10.0.0.236/trunk@13209 18797224-902f-48f8-a5cc-f745e15eee43
1998-10-20 17:45:07 +00:00
spider%netscape.com
19d327904e Add EOL to get to compile on Solaris
git-svn-id: svn://10.0.0.236/trunk@12836 18797224-902f-48f8-a5cc-f745e15eee43
1998-10-14 22:23:26 +00:00
buster%netscape.com
5377ebdea8 all frames properly setting ascent and descent values for reflow
WIP incremental reflow in nsTableOuterFrame


git-svn-id: svn://10.0.0.236/trunk@12283 18797224-902f-48f8-a5cc-f745e15eee43
1998-10-08 15:34:48 +00:00
kipp%netscape.com
d8069b04db use new body factory method
git-svn-id: svn://10.0.0.236/trunk@11993 18797224-902f-48f8-a5cc-f745e15eee43
1998-10-06 00:44:35 +00:00
buster%netscape.com
68bbfa7e34 minor interface cleanup
git-svn-id: svn://10.0.0.236/trunk@11797 18797224-902f-48f8-a5cc-f745e15eee43
1998-10-02 20:36:35 +00:00
troy%netscape.com
e191c422d9 Eliminated nsIRunaround interface, and folded space manager parameter into
nsHTMLReflowState structure


git-svn-id: svn://10.0.0.236/trunk@11749 18797224-902f-48f8-a5cc-f745e15eee43
1998-10-02 04:10:00 +00:00
troy%netscape.com
7eac0bfdac Separated reflow process out of nsIFrame and into nsIFrameReflow. Also
added nsIHTMLReflow, which is an HTML specific reflow interface


git-svn-id: svn://10.0.0.236/trunk@11646 18797224-902f-48f8-a5cc-f745e15eee43
1998-10-01 04:46:11 +00:00
buster%netscape.com
0c00c9f654 removed lots of assumptions about frame ordering and containership.
table frames no longer assume they are n levels below the inner table frame
table frames no longer assume their child frames are always the expected type of
frame.  Now they check the display type and use that as sufficient proof that the frame
is of the right type.  This implies a heavy reliance on the frame construction code to do
the right thing and always stamp out the right kind of frame for a given display type.


git-svn-id: svn://10.0.0.236/trunk@10922 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-24 16:37:22 +00:00
troy%netscape.com
8b2676b6e1 Frame construction changes for tables
git-svn-id: svn://10.0.0.236/trunk@10159 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-16 17:19:20 +00:00
buster%netscape.com
1c8d847337 nsStyleConsts.h added some HTML 4 consts for tables
nsHTMLAtoms.cpp,h             added some HTML 4 strings for tables
nsHTMLParts.h                 added constructors for new table content classes
nsGenericHTMLElement.cpp,h    added table frame creation, common table attribute parsing
nsHTMLTable*Element.cpp       these are the new table content classes
nsHTMLContentSink.cpp         enabled the new content and removed the old
nsHTMLStyleSheet.cpp          fixed the table style optimizations to work with new content
nsTable*Frame.cpp             these work with the new content


git-svn-id: svn://10.0.0.236/trunk@10047 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-15 17:58:24 +00:00
buster%netscape.com
9a7b48eb26 expanded nsIFrame::List to include nsIListFilter *aFilter param, by default nsnull.
aFilter is useful for determining if a frame should output itself during
a List().  In any event, the children of the frame are always processed.
added nsIListFilter, an interface for any object that wants to act like a filter for frame dumps
added   static NS_LAYOUT nsIListFilter * GetFilter(nsString *aFilterName);
currently, only TableListFilter implements nsIListFilter.
in response to List(...TableListFilter), the frame model is dumped in a way that is useful
for table layout regression testing.  Currently this is controlled by command line switches on the viewer app.


git-svn-id: svn://10.0.0.236/trunk@9156 18797224-902f-48f8-a5cc-f745e15eee43
1998-09-02 21:59:54 +00:00
peterl%netscape.com
6655d27071 remove text attribute processing
git-svn-id: svn://10.0.0.236/trunk@8586 18797224-902f-48f8-a5cc-f745e15eee43
1998-08-27 00:56:17 +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
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
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
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
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
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
buster
0d87d412e5 some tentative steps towards content/frame separation in tables
git-svn-id: svn://10.0.0.236/trunk@3637 18797224-902f-48f8-a5cc-f745e15eee43
1998-06-11 00:13:18 +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
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