Logo Search packages:      
Sourcecode: xulrunner-1.9 version File versions

nsDisplayGeneric Class Reference

#include <nsDisplayList.h>

Inheritance diagram for nsDisplayGeneric:

nsDisplayItem nsDisplayItemLink

List of all members.

Detailed Description

Use this class to implement not-very-frequently-used display items that are not opaque, do not receive events, and are bounded by a frame's border-rect.

This should not be used for display items which are created frequently, because each item is one or two pointers bigger than an item from a custom display item class could be, and fractionally slower. However it does save code size. We use this for infrequently-used item types.

Definition at line 841 of file nsDisplayList.h.

Public Types

typedef void(* PaintCallback )(nsIFrame *aFrame, nsIRenderingContext *aCtx, const nsRect &aDirtyRect, nsPoint aFramePt)
enum  Type {

Public Member Functions

nsDisplayItemGetAbove ()
virtual nsRect GetBounds (nsDisplayListBuilder *aBuilder)
virtual nsDisplayListGetList ()
virtual Type GetType ()
nsIFrameGetUnderlyingFrame ()
virtual nsIFrameHitTest (nsDisplayListBuilder *aBuilder, nsPoint aPt, HitTestState *aState)
virtual PRBool IsOpaque (nsDisplayListBuilder *aBuilder)
virtual PRBool IsUniform (nsDisplayListBuilder *aBuilder)
virtual PRBool IsVaryingRelativeToMovingFrame (nsDisplayListBuilder *aBuilder)
 nsDisplayGeneric (nsIFrame *aFrame, PaintCallback aPaint, const char *aName)
void * operator new (size_t aSize, nsDisplayListBuilder *aBuilder) CPP_THROW_NEW
virtual PRBool OptimizeVisibility (nsDisplayListBuilder *aBuilder, nsRegion *aVisibleRegion)
virtual void Paint (nsDisplayListBuilder *aBuilder, nsIRenderingContext *aCtx, const nsRect &aDirtyRect)
virtual PRBool TryMerge (nsDisplayListBuilder *aBuilder, nsDisplayItem *aItem)

Static Protected Member Functions

static PRBool ComputeVisibilityFromBounds (nsIFrame *aFrame, const nsRect &aRect, nsRegion &aCovered, PRBool aIsOpaque)

Protected Attributes

PaintCallback mPaint


class nsDisplayList

The documentation for this class was generated from the following file:

Generated by  Doxygen 1.6.0   Back to index