/layout/base/public/nsIFrame.h File Reference

#include <stdio.h>
#include "nsISupports.h"
#include "nsEvent.h"
#include "nsStyleStruct.h"
#include "nsStyleContext.h"
#include "nsIContent.h"
#include "nsStyleStructList.h"

Include dependency graph for nsIFrame.h:

Include dependency graph

This graph shows which files directly or indirectly include this file:

Included by dependency graph

Go to the source code of this file.

Compounds

Defines

Typedefs

Enumerations


Define Documentation

#define NS_IFRAME_IID   { 0xa6cf9050, 0x15b3, 0x11d2,{0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32}}
 

Definition at line 101 of file nsIFrame.h.

#define NS_FRAME_NOT_SPLITTABLE   0
 

Definition at line 119 of file nsIFrame.h.

#define NS_FRAME_SPLITTABLE   0x1
 

Definition at line 120 of file nsIFrame.h.

#define NS_FRAME_SPLITTABLE_NON_RECTANGULAR   0x3
 

Definition at line 121 of file nsIFrame.h.

#define NS_FRAME_IS_SPLITTABLE type   )     (0 != ((type) & NS_FRAME_SPLITTABLE))
 

Definition at line 123 of file nsIFrame.h.

#define NS_FRAME_IS_NOT_SPLITTABLE type   )     (0 == ((type) & NS_FRAME_SPLITTABLE))
 

Definition at line 126 of file nsIFrame.h.

#define NS_FRAME_IN_REFLOW   0x00000001
 

Definition at line 137 of file nsIFrame.h.

#define NS_FRAME_FIRST_REFLOW   0x00000002
 

Definition at line 142 of file nsIFrame.h.

#define NS_FRAME_SYNC_FRAME_AND_VIEW   0x00000004
 

Definition at line 148 of file nsIFrame.h.

#define NS_FRAME_OUTSIDE_CHILDREN   0x00000008
 

Definition at line 155 of file nsIFrame.h.

#define NS_FRAME_EXTERNAL_REFERENCE   0x00000010
 

Definition at line 160 of file nsIFrame.h.

#define NS_FRAME_REPLACED_ELEMENT   0x00000020
 

Definition at line 164 of file nsIFrame.h.

#define NS_FRAME_GENERATED_CONTENT   0x00000040
 

Definition at line 167 of file nsIFrame.h.

Referenced by nsIFrame::IsGeneratedContentFrame().

#define NS_FRAME_HAS_LOADED_IMAGES   0x00000080
 

Definition at line 172 of file nsIFrame.h.

#define NS_FRAME_OUT_OF_FLOW   0x00000100
 

Definition at line 176 of file nsIFrame.h.

#define NS_FRAME_SELECTED_CONTENT   0x00000200
 

Definition at line 179 of file nsIFrame.h.

Referenced by nsSVGGlyphFrame::GetHasHighlight().

#define NS_FRAME_IS_DIRTY   0x00000400
 

Definition at line 183 of file nsIFrame.h.

#define NS_FRAME_IS_UNFLOWABLE   0x00000800
 

Definition at line 186 of file nsIFrame.h.

#define NS_FRAME_HAS_DIRTY_CHILDREN   0x00001000
 

Definition at line 189 of file nsIFrame.h.

#define NS_FRAME_HAS_VIEW   0x00002000
 

Definition at line 192 of file nsIFrame.h.

Referenced by nsIFrame::HasView().

#define NS_FRAME_INDEPENDENT_SELECTION   0x00004000
 

Definition at line 195 of file nsIFrame.h.

#define NS_FRAME_IS_SPECIAL   0x00008000
 

Definition at line 200 of file nsIFrame.h.

#define NS_FRAME_EXCLUDE_IGNORABLE_WHITESPACE   0x00010000
 

Definition at line 207 of file nsIFrame.h.

#define NS_FRAME_HAS_CHILD_WITH_VIEW   0x00040000
 

Definition at line 216 of file nsIFrame.h.

#define NS_FRAME_REFLOW_ROOT   0x00080000
 

Definition at line 220 of file nsIFrame.h.

#define NS_FRAME_RESERVED   0x000FFFFF
 

Definition at line 223 of file nsIFrame.h.

#define NS_FRAME_IMPL_RESERVED   0xFFF00000
 

Definition at line 227 of file nsIFrame.h.

#define NS_CARRIED_TOP_MARGIN_IS_AUTO   0x1
 

Definition at line 260 of file nsIFrame.h.

#define NS_CARRIED_BOTTOM_MARGIN_IS_AUTO   0x2
 

Definition at line 261 of file nsIFrame.h.

#define NS_FRAME_PAINT_LAYER_BACKGROUND   eFramePaintLayer_Underlay
 

Definition at line 267 of file nsIFrame.h.

#define NS_FRAME_PAINT_LAYER_FLOATERS   eFramePaintLayer_Content
 

Definition at line 268 of file nsIFrame.h.

#define NS_FRAME_PAINT_LAYER_FOREGROUND   eFramePaintLayer_Overlay
 

Definition at line 269 of file nsIFrame.h.

#define NS_FRAME_PAINT_LAYER_DEBUG   eFramePaintLayer_Overlay
 

Definition at line 270 of file nsIFrame.h.

#define NS_FRAME_COMPLETE   0
 

Definition at line 293 of file nsIFrame.h.

#define NS_FRAME_NOT_COMPLETE   0x1
 

Definition at line 294 of file nsIFrame.h.

#define NS_FRAME_REFLOW_NEXTINFLOW   0x2
 

Definition at line 295 of file nsIFrame.h.

#define NS_FRAME_IS_COMPLETE status   )     (0 == ((status) & NS_FRAME_NOT_COMPLETE))
 

Definition at line 297 of file nsIFrame.h.

#define NS_FRAME_IS_NOT_COMPLETE status   )     (0 != ((status) & NS_FRAME_NOT_COMPLETE))
 

Definition at line 300 of file nsIFrame.h.

#define NS_IS_REFLOW_ERROR _status   )     (PRInt32(_status) < 0)
 

Definition at line 305 of file nsIFrame.h.

#define NS_INLINE_BREAK   0x0100
 

Extensions to the reflow status bits defined by nsIFrameReflow

Definition at line 313 of file nsIFrame.h.

#define NS_INLINE_BREAK_BEFORE   0x0000
 

Definition at line 318 of file nsIFrame.h.

#define NS_INLINE_BREAK_AFTER   0x0200
 

Definition at line 319 of file nsIFrame.h.

#define NS_INLINE_BREAK_TYPE_MASK   0xF000
 

Definition at line 322 of file nsIFrame.h.

#define NS_INLINE_IS_BREAK _status   )     (0 != ((_status) & NS_INLINE_BREAK))
 

Definition at line 327 of file nsIFrame.h.

#define NS_INLINE_IS_BREAK_AFTER _status   )     (0 != ((_status) & NS_INLINE_BREAK_AFTER))
 

Definition at line 330 of file nsIFrame.h.

#define NS_INLINE_IS_BREAK_BEFORE _status   )     (NS_INLINE_BREAK == ((_status) & (NS_INLINE_BREAK|NS_INLINE_BREAK_AFTER)))
 

Definition at line 333 of file nsIFrame.h.

#define NS_INLINE_GET_BREAK_TYPE _status   )     (((_status) >> 12) & 0xF)
 

Definition at line 336 of file nsIFrame.h.

#define NS_INLINE_MAKE_BREAK_TYPE _type   )     ((_type) << 12)
 

Definition at line 338 of file nsIFrame.h.

 
#define NS_INLINE_LINE_BREAK_BEFORE  ) 
 

Value:

Definition at line 344 of file nsIFrame.h.

#define NS_INLINE_LINE_BREAK_AFTER _completionStatus   ) 
 

Value:

((_completionStatus) | NS_INLINE_BREAK | NS_INLINE_BREAK_AFTER |      \
   NS_INLINE_MAKE_BREAK_TYPE(NS_STYLE_CLEAR_LINE))

Definition at line 352 of file nsIFrame.h.

#define NS_FRAME_TRUNCATED   0x0010
 

Definition at line 359 of file nsIFrame.h.

#define NS_FRAME_IS_TRUNCATED status   )     (0 != ((status) & NS_FRAME_TRUNCATED))
 

Definition at line 360 of file nsIFrame.h.

#define NS_FRAME_SET_TRUNCATION status,
aReflowState,
aMetrics   ) 
 

Value:

if (!aReflowState.mFlags.mIsTopOfPage &&                      \
      aReflowState.availableHeight < aMetrics.height)           \
    status |= NS_FRAME_TRUNCATED;                               \
  else                                                          \
    status &= ~NS_FRAME_TRUNCATED;

Definition at line 362 of file nsIFrame.h.

#define NS_FRAME_REFLOW_NOT_FINISHED   PR_FALSE
 

Definition at line 376 of file nsIFrame.h.

#define NS_FRAME_REFLOW_FINISHED   PR_TRUE
 

Definition at line 377 of file nsIFrame.h.

#define STYLE_STRUCT name_,
checkdata_cb_,
ctor_args_   ) 
 

Value:

const nsStyle##name_ * GetStyle##name_() const {                          \
      return NS_STATIC_CAST(const nsStyle##name_*,                            \
                            GetStyleData(eStyleStruct_##name_));              \
    }
Define typesafe getter functions for each style struct by preprocessing the list of style structs. These functions are the preferred way to get style data. The macro creates functions like: const nsStyleBorder* GetStyleBorder(); const nsStyleColor* GetStyleColor();

Definition at line 617 of file nsIFrame.h.


Typedef Documentation

typedef void(* NSFramePropertyDtorFunc)(nsIPresContext* aPresContext, nsIFrame* aFrame, nsIAtom* aPropertyName, void* aPropertyValue)
 

Definition at line 94 of file nsIFrame.h.

typedef PRUint32 nsSplittableType
 

Indication of how the frame can be split. This is used when doing runaround of floaters, and when pulling up child frames from a next-in-flow.

The choices are splittable, not splittable at all, and splittable in a non-rectangular fashion. This last type only applies to block-level elements, and indicates whether splitting can be used when doing runaround. If you can split across page boundaries, but you expect each continuing frame to be the same width then return frSplittable and not frSplittableNonRectangular.

See also:
#IsSplittable()

Definition at line 117 of file nsIFrame.h.

typedef PRUint32 nsFrameState
 

Frame state bits. Any bits not listed here are reserved for future extensions, but must be stored by the frames.

Definition at line 135 of file nsIFrame.h.

Referenced by nsSVGGlyphFrame::GetHasHighlight(), and nsIFrame::GetStateBits().

typedef PRUint32 nsReflowStatus
 

Reflow status returned by the reflow methods.

NS_FRAME_NOT_COMPLETE bit flag means the frame does not map all its content, and that the parent frame should create a continuing frame. If this bit isn't set it means the frame does map all its content.

NS_FRAME_REFLOW_NEXTINFLOW bit flag means that the next-in-flow is dirty, and also needs to be reflowed. This status only makes sense for a frame that is not complete, i.e. you wouldn't set both NS_FRAME_COMPLETE and NS_FRAME_REFLOW_NEXTINFLOW

The low 8 bits of the nsReflowStatus are reserved for future extensions; the remaining 24 bits are zero (and available for extensions; however API's that accept/return nsReflowStatus must not receive/return any extension bits).

See also:
#Reflow()

Definition at line 291 of file nsIFrame.h.

typedef PRBool nsDidReflowStatus
 

DidReflow status values.

Definition at line 374 of file nsIFrame.h.


Enumeration Type Documentation

enum nsFramePaintLayer
 

Enumeration values:
eFramePaintLayer_Underlay 
eFramePaintLayer_Content 
eFramePaintLayer_Overlay 

Definition at line 231 of file nsIFrame.h.

enum nsSelectionAmount
 

Enumeration values:
eSelectCharacter 
eSelectWord 
eSelectLine 
eSelectBeginLine 
eSelectEndLine 
eSelectNoAmount 
eSelectDir 
eSelectParagraph 

Definition at line 237 of file nsIFrame.h.

enum nsDirection
 

Enumeration values:
eDirNext 
eDirPrevious 

Definition at line 248 of file nsIFrame.h.

enum nsSpread
 

Enumeration values:
eSpreadNone 
eSpreadAcross 
eSpreadDown 

Definition at line 253 of file nsIFrame.h.


Generated on Wed Sep 10 22:25:25 2003 for Mozilla SVG Project Rendering Backend by doxygen1.3