Commit Graph

221 Commits

Author SHA1 Message Date
troy@netscape.com
bf2283fba6 Moved a bunch of stuff out to a nsIFrameDebug interface 1999-11-01 22:12:45 +00:00
troy@netscape.com
c68d32adb4 b=17573. Changed mRowIndex to be signed integer (was unsigned integer) but
field. This allows it be negative, which some of the table code is depending
on
1999-10-31 03:15:52 +00:00
troy@netscape.com
6e1d6d82ed Space reduction. We now save 8 bytes per row frame by eliminating the max
top/bottom margin data members which are no longer needed
1999-10-29 14:40:58 +00:00
troy@netscape.com
a00e8c81df Space reductions for nsTableRowFrame. Changed mInitializedChildren to be a
frame state bit, and changed mMinRowSpan and mRowIndex to be packed into
one 32-bit field. Total savings of 8 bytes per row frame
1999-10-23 23:08:30 +00:00
kipp@netscape.com
0d0c583aac Updated SizeOf methods to not waste space when doing a non-debug build 1999-09-01 01:02:16 +00:00
kipp@netscape.com
3dbd670c62 Reimplemented SizeOf methods in some of the frame classes; partial rework of first-line handling snapshot 1999-08-31 03:09:40 +00:00
troy@netscape.com
32301a03cc Changing tables to return max element size during an incremental reflow 1999-08-30 22:30:32 +00:00
hyatt@netscape.com
f333714ebf Changes to the cell map to support incremental insertion and removal of rows. Currently
only used by the tree widget.
1999-08-30 00:01:09 +00:00
hyatt@netscape.com
612c30212d Tweaks to be able to see the RowReflowState over in trees 1999-08-28 00:43:53 +00:00
karnaze@netscape.com
ab94a62954 bug 1271 - percentage height cells, added GetNumCellsOriginatingInRow, fixed GetNumCellsOriginatingInCol 1999-08-25 21:49:18 +00:00
troy@netscape.com
84db47705a Optimized incremental reflow and split some code out into member functions
so there's less dusplication of code
1999-08-21 20:16:32 +00:00
troy@netscape.com
ec7791f73c Changed to new command reflow handling 1999-08-03 02:41:27 +00:00
karnaze@netscape.com
0f38815cdf new nsCellMap, BasicTableLayoutStrategy, plus various fixes to table
frames while testing the new cell map and strategy
1999-07-28 08:09:02 +00:00
kipp@netscape.com
68aa9f7c60 Reworked frame factory methods; fixed bug 4519 1999-05-11 22:03:29 +00:00
karnaze@netscape.com
aedc76fcb9 support for right-to-left direction 1999-04-22 03:51:58 +00:00
troy@netscape.com
de63f08d83 Removed SetInitialChildList() and now we inherit the base class version
which does the same thing
1999-04-13 01:11:46 +00:00
troy@netscape.com
ca28eafb7d Removed nsIFrame::CreateContinuingFrame() 1999-02-25 05:31:15 +00:00
troy@netscape.com
5a1fc226a0 Added frame type atoms for several table frame classes 1999-02-24 05:54:31 +00:00
troy@netscape.com
fbba9776a7 More work-in-progress for table pagination 1999-02-22 03:28:00 +00:00
kipp@netscape.com
b1fe154193 Spanked away SizeOf methods and nsIListFilter 1999-01-16 00:00:50 +00:00
kipp@netscape.com
1e10a83138 Revised frame Paint API 1998-12-18 15:54:23 +00:00
troy@netscape.com
53708d0de2 Changed SetRowIndex() to be inline and non-virtual 1998-12-16 04:31:38 +00:00
troy@netscape.com
ad2efcf686 Removed InitRowData() member function which is now obsolete 1998-12-16 04:08:36 +00:00
troy@netscape.com
e602e25924 Added Init() member function to nsIFrame 1998-12-03 06:31:43 +00:00
buster@netscape.com
ef31504e16 implemented table height algorithms. also made a slight modification to
the way a table finds its container's width.
1998-11-20 01:01:25 +00:00
kipp@netscape.com
f6502df0e2 Added DumpRegressionData; revised ListTag; added GetFrameName 1998-11-19 17:22:29 +00:00
joki@netscape.com
249a270b84 Reworking internal event code to use nsIFrame::GetFrameForPoint
Adding new functionality through nsEventStateManager (cursor change, enter/exit events, tab navig)
1998-11-18 05:25:26 +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
buster@netscape.com
0429c47f06 fixed the bug where events were not getting passed down to content inside
of cells with rowspans.  Basically, I just override HandleEvent() in nsTableRowGroupFrame
to ask nsTableRowFrame::Contains(), rather than the default action which is to
just use the child's rect.
1998-11-07 00:36:37 +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
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
075e4cc60b incremental reflow now includes insert/append/delete cell 1998-10-20 15:59:56 +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
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
bb0f52ad8b 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.
1998-09-24 16:37:22 +00:00
buster@netscape.com
8c95ff651d all frame initialization and related logic has moved into the various table frames' Init() methods
from their respective InitalReflow() methods.
table-layout=fixed now completely skips pass1 reflow and doesn't require maxElementSize
information, saving a tremendous amount of time during initial reflow.
1998-09-23 21:48:26 +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
buster@netscape.com
e046f04ce8 any table with a nonsense rowspan lays out better 1998-07-24 00:43:09 +00:00
troy
c7fd76b9b5 Some more changes of nsIPresContext* to nsIPresContext& 1998-07-15 17:05:21 +00:00
troy
9344ffe968 Some improvements to the incremental reflow logic to handle all the
cases handled by resize reflow
1998-07-15 04:45:58 +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
bd5ceb1a0b Incremental reflow changes 1998-07-14 15:29:50 +00:00
troy
c0a983c4c4 More code re-shuffling. I need to hurry and check-in before Cujo
whacks the tree
1998-07-10 22:56:13 +00:00
troy
064faadefa Changed it so we assume that rows are always complete 1998-07-10 05:23:05 +00:00
troy
2c4c3c7420 Some incremental improvements 1998-07-10 04:00:38 +00:00
troy
f5e6a2afc1 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
1998-07-02 20:35:23 +00:00