Commit Graph

438 Commits

Author SHA1 Message Date
troy@netscape.com
e602e25924 Added Init() member function to nsIFrame 1998-12-03 06:31:43 +00:00
wtc@netscape.com
50476c767e This checkin (under mozilla/layout) is all about 'const'. Digital Unix's
C++ compiler is strict about getting 'const' right.  Most of the changes
are to add 'const' to the type casts for the second argument of the
GetStyleData method, which wants a const reference.
1998-12-02 16:45:20 +00:00
buster@netscape.com
560f1fe058 2 Nav4 compatibility additions:
1. width=0 is treated as width=auto, not width=min
2. empty cells <td></td> are assigned a width of (2*borderWidth + 2*cellspacing + 3) pixels
The "3" is a fudge factor added by Nav and IE.
1998-11-25 18:43:56 +00:00
kipp@netscape.com
f6502df0e2 Added DumpRegressionData; revised ListTag; added GetFrameName 1998-11-19 17:22:29 +00:00
troy@netscape.com
7d57a590c9 Renamed Init() to SetInitialChildList() and added an additional parameter
for the name of the child list
1998-11-10 06:05:32 +00:00
troy@netscape.com
b04ee51233 First of a few changes to allow frames to have multiple child lists.
FirstChild() now takes an additional argument which is the name of the
child list.
1998-11-09 19:40:27 +00:00
buster@netscape.com
b80a9ca305 some extremely preliminary work for styleChanged incremental reflow 1998-10-30 07:57:44 +00:00
buster@netscape.com
cf730b7bd6 fixed several incremental reflow bugs 1998-10-21 22:29:00 +00:00
buster@netscape.com
ecd2d8b2f4 all containers now decend from nsHTMLContainerFrame
all "unknown frame" incremental reflow support methods now
replaced with nsHTMLContainerFrame::AddFrame and ::RemoveFrame
1998-10-20 17:45:07 +00:00
buster@netscape.com
c212263e76 lots of work for incremental reflow when the target frame is a table frame 1998-10-14 16:32:45 +00:00
kipp@netscape.com
a16b0dd7bf Removed nsCSSLayout::GetStyleSize and converted callers to use state in the html reflow state 1998-10-12 17:00:32 +00:00
kipp@netscape.com
9f8e72a224 Added an nsIPresContext& to html-reflow-state's ctors and used it to implement better percentage width/height handling 1998-10-12 14:48:02 +00:00
buster@netscape.com
7d43982d5a WIP for inner table incremental reflow
lots of interface cleanup
1998-10-11 09:18:27 +00:00
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