Commit Graph

75 Commits

Author SHA1 Message Date
buster@netscape.com
9bfada9c54 support nsTableOuterFrame incremental reflow 1998-10-09 19:59:45 +00:00
troy@netscape.com
effa132f8d Removed GetContentIndex() from nsIFrame 1998-10-08 20:35:16 +00:00
buster@netscape.com
f30d1af844 all frames properly setting ascent and descent values for reflow
WIP incremental reflow in nsTableOuterFrame
1998-10-08 15:34:48 +00:00
troy@netscape.com
c850ca269e Changed ReflowChild() to send the WillReflow() notification as well 1998-10-06 00:27:22 +00:00
troy@netscape.com
5c50ea58dd Removed calls to MoveTo() BEFORE reflowing a frame. We used to do this
sequence: MoveTo(), Reflow(), SetRect(). Now that we have the WillReflow()/
DidReflow() code sandwhiches we no longer need to do the MoveTo()
1998-10-05 00:58:32 +00:00
troy@netscape.com
ee0a3c543f Eliminated nsIRunaround interface, and folded space manager parameter into
nsHTMLReflowState structure
1998-10-02 04:10:00 +00:00
troy@netscape.com
942c471f56 Separated reflow process out of nsIFrame and into nsIFrameReflow. Also
added nsIHTMLReflow, which is an HTML specific reflow interface
1998-10-01 04:46:11 +00:00
buster@netscape.com
8fe4a93753 just synching up some minor cleanup work 1998-09-30 18:11:48 +00:00
troy@netscape.com
5036d4dfaa Removed all references to m<First,Last>ContentOffset,mChildCount,mLastContentIsComplete 1998-09-21 03:40:32 +00:00
buster@netscape.com
965be4f3c3 captions now work properly with new frame layout strategy.
nsTableOuterFrame->mFirstChild==nsTableOuterFrame->mInnerTableFrame, always.
1998-09-20 04:50:08 +00:00
troy@netscape.com
80417bf958 Removed farme enumeration member functions for indexed access, last child,
and child count
1998-09-19 03:24:26 +00:00
troy@netscape.com
7f644b87ab Removed nsIContentDelegate.h 1998-09-18 17:34:48 +00:00
troy@netscape.com
ef8db633a3 Removed content delegates 1998-09-18 17:18:37 +00:00
troy@netscape.com
8d97240161 Cleaned up frame construction code 1998-09-17 04:07:58 +00:00
troy@netscape.com
e9fcec8bda Frame construction changes for tables 1998-09-16 17:19:20 +00:00
buster@netscape.com
de1257f4bd 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
1998-09-15 17:58:24 +00:00
buster@netscape.com
11dada02d7 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.
1998-09-02 21:59:54 +00:00
kipp@netscape.com
d515f73150 XPCOM'ized nsIContent and nsIHTMLContent 1998-08-29 20:20:38 +00:00
michaelp@netscape.com
5e20b74430 DeleteFrame() now takes a pres context. 1998-08-28 03:02:39 +00:00
buster@netscape.com
56cb6e6233 removed an overly-aggressive assertion that prevents nested tables from laying out 1998-08-04 17:16:56 +00:00
troy@netscape.com
b84b13c22b Added ASSERT for the case where we get passed a reflow reason of initial
when we've already been reflowed once
1998-08-03 23:29:35 +00:00
buster@netscape.com
2bb3616b5e fixed cases where we were not computing the table width correctly
fixed cases where we were inappropriately portioning out
a spanning cell's min width to the columns it spanned.
1998-08-01 02:31:55 +00:00
troy@netscape.com
3c005aebbc Fixed it so tables that don't want a border don't get a border 1998-07-21 08:12:22 +00:00
troy
26046305da Changed API for CreateContinuingFrame and GetReflowMetrics to take
a reference to a nsIPresContext
1998-07-15 03:23:23 +00:00
troy
26b49b4476 Changed Reflow() member function to take a reference to a nsIPresContext
instead of a pointer
1998-07-15 02:53:09 +00:00
troy
fa4e80a752 Deprecated the SetFirstContentOffset/SetLastContentOffset member
functions that take a nsIFrame*
1998-07-10 19:04:06 +00:00
troy
8a8d9d6bd9 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
1998-07-09 14:30:34 +00:00
troy
daeb7006be Changes to the caption handling code 1998-07-08 20:21:17 +00:00
troy
019262c017 Tables not allow only one caption 1998-07-08 04:49:01 +00:00
kipp
359232b3be Fixed bug where tables weren't returning a proper set of metrics 1998-07-02 21:24:56 +00:00
buster
b121968466 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.
1998-07-02 17:40:56 +00:00
kipp
f9a7f09630 Use new PropagateContentOffsets API 1998-06-30 20:22:44 +00:00
troy
854a1f9515 Changed to make sure we set the (x,y) for the frame before we reflow it 1998-06-24 18:09:47 +00:00
troy
823e9c13ab Changed to make sure we link the child frame into the list of frames before
we reflow it
1998-06-24 16:35:21 +00:00
troy
961d591af9 Some incremental reflow changes 1998-06-24 04:38:52 +00:00
buster
34ee46e65a lots of nested tables look much better
misc. nav4 compatibility enhancements
added the ability to QueryInterface for some specific table frame types
1998-06-23 23:23:21 +00:00
troy
e5b7f89fc9 Some work-in-progress for table incremental reflow 1998-06-23 05:43:27 +00:00
troy
54c2d772b2 Eliminated mFirstPassValid and changed code to key off the reflow
reason
1998-06-22 21:59:43 +00:00
troy
55b3a8dec9 Started hooking up incremental reflow. So far we only handle changed
captions
1998-06-22 05:34:17 +00:00
troy
62eaa1c62b Work in progress for incremental reflow 1998-06-19 05:21:45 +00:00
troy
36ed98b9cc Eliminated nsTableCaptionFrame and now we just use a nsBodyFrame instead 1998-06-19 00:34:12 +00:00
buster
3ed8a1b541 Separated table content from table layout. This paves the way for XML/CSS-2 tables.
Lots and lots of optimizations.
1998-06-17 16:38:24 +00:00
troy
7afaeaecfd Fixed some places where the reflow reason wasn't getting correctly set for
the initial reflow
1998-06-12 04:11:41 +00:00
troy
53c0050b71 Added nsIReflowCommand interface 1998-06-09 04:51:44 +00:00
buster
c908aa496b more attributes: cell nowrap, caption align, some misc HTML 4 attributes too 1998-06-08 15:47:03 +00:00
peterl
4094b160d0 sync up to new style data apis 1998-06-05 06:09:09 +00:00
buster
0a4b04fa63 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
1998-06-03 00:43:53 +00:00
kipp
6639c5321b Updated a few table API's so that percentage width could be properly computed 1998-05-30 21:21:51 +00:00
troy
017eaee3fd Changed nsReflowState structs to be linked together 1998-05-29 20:36:05 +00:00
troy
8736c4b7d5 Added WillReflow() calls around reflowing of child frame 1998-05-28 18:37:56 +00:00