Dillo v3.1.1-111-gd4f56d0d
|
Base class (rather a tag interface) for those widgets regarding borders defined by floats, and so allocated on the full width. More...
#include <regardingborder.hh>
Public Member Functions | |
RegardingBorder () | |
~RegardingBorder () | |
Public Member Functions inherited from dw::oof::OOFAwareWidget | |
OOFAwareWidget () | |
~OOFAwareWidget () | |
core::Requisition * | getRequisitionWithoutOOF () |
bool | doesWidgetOOFInterruptDrawing (Widget *widget) |
void | draw (core::View *view, core::Rectangle *area, core::DrawingContext *context) |
Area is given in widget coordinates. | |
virtual void | updateReference (int ref) |
Update content in flow, down from ref . | |
virtual void | widgetRefSizeChanged (int externalIndex) |
Called by an implementation of dw::oof::OutOfFlowMgr (actually only OOFPosRelMgr) for the generator of a widget out of flow, when the reference size has changed. | |
virtual void | oofSizeChanged (bool extremesChanged) |
Called by an implementation of dw::oof::OutOfFlowMgr when the size of the container has changed, typically in sizeAllocateEnd. | |
virtual int | getGeneratorX (int oofmIndex) |
Return position relative to container, not regarding margin/border/padding, Called by OOFFloatsMgr to position floats. | |
virtual int | getGeneratorY (int oofmIndex) |
Return position relative to container, not regarding margin/border/padding, Called by OOFFloatsMgr to position floats. | |
virtual int | getGeneratorWidth () |
Return width including margin/border/padding Called by OOFFloatsMgr to position floats. | |
virtual int | getMaxGeneratorWidth () |
virtual bool | usesMaxGeneratorWidth () |
virtual bool | isPossibleOOFContainer (int oofmIndex) |
virtual bool | isPossibleOOFContainerParent (int oofmIndex) |
Public Member Functions inherited from dw::core::Widget | |
void | setDeleteCallback (DW_Callback_t func, void *data) |
Widget () | |
~Widget () | |
bool | resizeQueued () |
bool | extremesQueued () |
bool | needsResize () |
bool | needsAllocate () |
bool | allocateQueued () |
bool | extremesChanged () |
bool | wasAllocated () |
void | setParent (Widget *parent) |
void | setQuasiParent (Widget *quasiParent) |
void | setGenerator (Widget *generator) |
style::Style * | getStyle () |
Allocation * | getAllocation () |
bool | inAllocation (int x, int y) |
int | boxOffsetX () |
int | boxRestWidth () |
int | boxDiffWidth () |
int | boxOffsetY () |
int | boxRestHeight () |
int | boxDiffHeight () |
virtual int | numSizeRequestReferences () |
See Sizes of Dillo Widgets (or Size requisitions depending on positions). | |
virtual Widget * | sizeRequestReference (int index) |
See Sizes of Dillo Widgets (or Size requisitions depending on positions). | |
virtual int | numGetExtremesReferences () |
See Sizes of Dillo Widgets (or Size requisitions depending on positions). | |
virtual Widget * | getExtremesReference (int index) |
See Sizes of Dillo Widgets (or Size requisitions depending on positions). | |
void | sizeRequest (Requisition *requisition, int numPos=0, Widget **references=NULL, int *x=NULL, int *y=NULL) |
This method is a wrapper for Widget::sizeRequestImpl(); it calls the latter only when needed. | |
void | getExtremes (Extremes *extremes, int numPos=0, Widget **references=NULL, int *x=NULL, int *y=NULL) |
Wrapper for Widget::getExtremesImpl(). | |
void | sizeAllocate (Allocation *allocation) |
Wrapper for Widget::sizeAllocateImpl, calls the latter only when needed. | |
void | calcExtraSpace (int numPos, Widget **references, int *x, int *y) |
Calculates dw::core::Widget::extraSpace. | |
int | getAvailWidth (bool forceValue) |
Return available width including margin/border/padding (extraSpace?), not only the content width. | |
int | getAvailHeight (bool forceValue) |
Return available height including margin/border/padding (extraSpace?), not only the content height. | |
virtual bool | getAdjustMinWidth () |
void | correctRequisition (Requisition *requisition, void(*splitHeightFun)(int, int *, int *), bool allowDecreaseWidth, bool allowDecreaseHeight) |
void | correctExtremes (Extremes *extremes, bool useAdjustmentWidth) |
int | calcWidth (style::Length cssValue, int refWidth, Widget *refWidget, int limitMinWidth, bool forceValue) |
Computes a width value in pixels from cssValue. | |
void | calcFinalWidth (style::Style *style, int refWidth, Widget *refWidget, int limitMinWidth, bool forceValue, int *finalWidth) |
Computes the final width if posible and constraints it by min-width and max-width. | |
int | calcHeight (style::Length cssValue, bool usePercentage, int refHeight, Widget *refWidget, bool forceValue) |
virtual int | applyPerWidth (int containerWidth, style::Length perWidth) |
virtual int | applyPerHeight (int containerHeight, style::Length perHeight) |
int | getMinWidth (Extremes *extremes, bool forceValue) |
Used to evaluate Widget::adjustMinWidth. | |
virtual bool | isBlockLevel () |
virtual bool | isPossibleContainer () |
void | containerSizeChanged () |
bool | intersects (Widget *refWidget, Rectangle *area, Rectangle *intersection) |
Calculates the intersection of the visible allocation (i. | |
void | drawInterruption (View *view, Rectangle *area, DrawingContext *context) |
See Interrupted drawing for details. | |
Widget * | getWidgetAtPointInterrupted (int x, int y, GettingWidgetAtPointContext *context) |
bool | buttonPress (EventButton *event) |
bool | buttonRelease (EventButton *event) |
bool | motionNotify (EventMotion *event) |
void | enterNotify (EventCrossing *event) |
void | leaveNotify (EventCrossing *event) |
virtual void | setStyle (style::Style *style) |
Change the style of a widget. | |
void | setBgColor (style::Color *bgColor) |
Set the background "behind" the widget, if it is not the background of the parent widget, e.g. | |
style::Color * | getBgColor () |
Get the actual background of a widget. | |
style::Color * | getFgColor () |
Get the actual foreground color of a widget. | |
void | drawBox (View *view, style::Style *style, Rectangle *area, int x, int y, int width, int height, bool inverse) |
Draw borders and background of a widget part, which allocation is given by (x, y, width, height) (widget coordinates). | |
void | drawWidgetBox (View *view, Rectangle *area, bool inverse) |
Draw borders and background of a widget. | |
void | drawSelected (View *view, Rectangle *area) |
void | setButtonSensitive (bool buttonSensitive) |
bool | isButtonSensitive () |
Widget * | getParent () |
Widget * | getContainer () |
Widget * | getTopLevel () |
Get the widget at the root of the tree, this widget is part from. | |
int | getLevel () |
Get the level of the widget within the tree. | |
int | getGeneratorLevel () |
Get the level of the widget within the tree, regarting the generators, not the parents. | |
Widget * | getNearestCommonAncestor (Widget *otherWidget) |
Get the widget with the highest level, which is a direct ancestor of widget1 and widget2. | |
WidgetReference * | getWidgetReference () |
void | setWidgetReference (WidgetReference *widgetReference) |
Widget * | getGenerator () |
Layout * | getLayout () |
void | scrollTo (HPosition hpos, VPosition vpos, int x, int y, int width, int height) |
void | getMarginArea (int *xMar, int *yMar, int *widthMar, int *heightMar) |
void | getBorderArea (int *xBor, int *yBor, int *widthBor, int *heightBor) |
void | getPaddingArea (int *xPad, int *yPad, int *widthPad, int *heightPad) |
Return the padding area (content plus padding). | |
virtual Iterator * | iterator (Content::Type mask, bool atEnd)=0 |
Return an iterator for this widget. | |
virtual void | removeChild (Widget *child) |
Public Member Functions inherited from lout::identity::IdentifiableObject | |
IdentifiableObject () | |
void | intoStringBuffer (misc::StringBuffer *sb) |
Store a textual representation of the object in a misc::StringBuffer. | |
int | getClassId () |
Returns the class identifier. | |
const char * | getClassName () |
Return the name, under which the class of this object was registered. | |
bool | instanceOf (int otherClassId) |
Returns, whether this class is an instance of the class, given by otherClassId, or of a sub class of this class. | |
Public Member Functions inherited from lout::object::Object | |
virtual | ~Object () |
The destructor is defined as virtual (but not abstract), so that destruction of Object's works properly. | |
virtual bool | equals (Object *other) |
Returns, whether two objects are equal. | |
virtual int | hashValue () |
Return a hash value for the object. | |
virtual Object * | clone () |
Return an exact copy of the object. | |
const char * | toString () |
Use object::Object::intoStringBuffer to return a textual representation of the object. | |
virtual size_t | sizeOf () |
Return the number of bytes, this object totally uses. | |
Static Public Attributes | |
static int | CLASS_ID = -1 |
Static Public Attributes inherited from dw::oof::OOFAwareWidget | |
static int | CLASS_ID = -1 |
Static Public Attributes inherited from dw::core::Widget | |
static int | CLASS_ID = -1 |
Additional Inherited Members | |
Public Types inherited from dw::oof::OOFAwareWidget | |
enum | { SL_START , SL_BACKGROUND , SL_SC_BOTTOM , SL_IN_FLOW , SL_OOF_REF , SL_OOF_CONT , SL_SC_TOP , SL_END } |
Static Public Member Functions inherited from dw::oof::OOFAwareWidget | |
static const char * | stackingLevelText (int level) |
static bool | testStyleFloat (core::style::Style *style) |
static bool | testStyleAbsolutelyPositioned (core::style::Style *style) |
static bool | testStyleFixedlyPositioned (core::style::Style *style) |
static bool | testStyleRelativelyPositioned (core::style::Style *style) |
static bool | testStylePositioned (core::style::Style *style) |
static bool | testStyleOutOfFlow (core::style::Style *style) |
static bool | testWidgetFloat (Widget *widget) |
static bool | testWidgetAbsolutelyPositioned (Widget *widget) |
static bool | testWidgetFixedlyPositioned (Widget *widget) |
static bool | testWidgetRelativelyPositioned (Widget *widget) |
static bool | testWidgetPositioned (Widget *widget) |
static bool | testWidgetOutOfFlow (Widget *widget) |
Static Public Member Functions inherited from dw::core::Widget | |
static void | setAdjustMinWidth (bool adjustMinWidth) |
static void | adjustHeight (int *height, bool allowDecreaseHeight, int ascent, int descent) |
Public Attributes inherited from dw::core::Widget | |
int | parentRef |
This value is defined by the parent widget, and used for incremential resizing. | |
Protected Types inherited from dw::oof::OOFAwareWidget | |
enum | { OOFM_FLOATS , OOFM_ABSOLUTE , OOFM_RELATIVE , OOFM_FIXED , NUM_OOFM } |
enum | { PARENT_REF_OOFM_BITS = 3 , PARENT_REF_OOFM_MASK = (1 << PARENT_REF_OOFM_BITS) - 1 } |
Protected Types inherited from dw::core::Widget | |
enum | Flags { RESIZE_QUEUED = 1 << 0 , EXTREMES_QUEUED = 1 << 1 , NEEDS_RESIZE = 1 << 2 , NEEDS_ALLOCATE = 1 << 3 , ALLOCATE_QUEUED = 1 << 4 , EXTREMES_CHANGED = 1 << 5 , WAS_ALLOCATED = 1 << 6 } |
Protected Member Functions inherited from dw::oof::OOFAwareWidget | |
bool | isParentRefOOF (int parentRef) |
int | makeParentRefInFlow (int inFlowSubRef) |
int | getParentRefInFlowSubRef (int parentRef) |
int | makeParentRefOOF (int oofmIndex, int oofmSubRef) |
int | getParentRefOOFSubRef (int parentRef) |
int | getParentRefOOFIndex (int parentRef) |
oof::OutOfFlowMgr * | getParentRefOutOfFlowMgr (int parentRef) |
bool | isWidgetOOF (Widget *widget) |
int | getWidgetInFlowSubRef (Widget *widget) |
int | getWidgetOOFSubRef (Widget *widget) |
int | getWidgetOOFIndex (Widget *widget) |
oof::OutOfFlowMgr * | getWidgetOutOfFlowMgr (Widget *widget) |
OutOfFlowMgr * | searchOutOfFlowMgr (int oofmIndex) |
void | initOutOfFlowMgrs () |
void | correctRequisitionByOOF (core::Requisition *requisition, void(*splitHeightFun)(int, int *, int *)) |
void | correctExtremesByOOF (core::Extremes *extremes) |
void | sizeAllocateStart (core::Allocation *allocation) |
void | sizeAllocateEnd () |
void | containerSizeChangedForChildrenOOF () |
virtual void | drawLevel (core::View *view, core::Rectangle *area, int level, core::DrawingContext *context) |
void | drawOOF (core::View *view, core::Rectangle *area, core::DrawingContext *context) |
Widget * | getWidgetAtPoint (int x, int y, core::GettingWidgetAtPointContext *context) |
virtual Widget * | getWidgetAtPointLevel (int x, int y, int level, core::GettingWidgetAtPointContext *context) |
Widget * | getWidgetOOFAtPoint (int x, int y, core::GettingWidgetAtPointContext *context) |
void | notifySetAsTopLevel () |
This method is called after a widget has been set as the top of a widget tree. | |
void | notifySetParent () |
This method is called after a widget has been added to a parent. | |
void | removeChild (Widget *child) |
virtual bool | adjustExtraSpaceWhenCorrectingRequisitionByOOF () |
Protected Member Functions inherited from dw::core::Widget | |
int | getHeight () |
int | getContentWidth () |
int | getContentHeight () |
StackingContextMgr * | getNextStackingContextMgr () |
void | printFlag (Flags f) |
void | setFlags (Flags f) |
void | unsetFlags (Flags f) |
void | queueDraw () |
void | queueDrawArea (int x, int y, int width, int height) |
void | queueResize (int ref, bool extremesChanged) |
virtual void | sizeRequestImpl (Requisition *requisition, int numPos, Widget **references, int *x, int *y) |
See Sizes of Dillo Widgets. | |
virtual void | sizeRequestSimpl (Requisition *requisition) |
Simple variant, to be implemented by widgets with sizes not depending on positions. | |
virtual void | getExtremesImpl (Extremes *extremes, int numPos, Widget **references, int *x, int *y) |
See Sizes of Dillo Widgets. | |
virtual void | getExtremesSimpl (Extremes *extremes) |
Simple variant, to be implemented by widgets with extremes not depending on positions. | |
virtual void | calcExtraSpaceImpl (int numPos, Widget **references, int *x, int *y) |
The actual implementation for calculating dw::core::Widget::extraSpace. | |
virtual void | sizeAllocateImpl (Allocation *allocation) |
See Sizes of Dillo Widgets. | |
virtual void | resizeDrawImpl () |
Called after sizeAllocateImpl() to redraw necessary areas. | |
virtual void | markSizeChange (int ref) |
See Sizes of Dillo Widgets. | |
virtual void | markExtremesChange (int ref) |
See Sizes of Dillo Widgets. | |
virtual int | getAvailWidthOfChild (Widget *child, bool forceValue) |
Computes the content width available of a child widget. | |
virtual int | getAvailHeightOfChild (Widget *child, bool forceValue) |
virtual void | correctRequisitionOfChild (Widget *child, Requisition *requisition, void(*splitHeightFun)(int, int *, int *), bool allowDecreaseWidth, bool allowDecreaseHeight) |
void | correctRequisitionViewport (Requisition *requisition, void(*splitHeightFun)(int, int *, int *), bool allowDecreaseWidth, bool allowDecreaseHeight) |
Corrects a requisition to fit in the viewport. | |
void | correctReqWidthOfChild (Widget *child, Requisition *requisition, bool allowDecreaseWidth) |
Correct a child requisition to fit the parent. | |
void | correctReqHeightOfChild (Widget *child, Requisition *requisition, void(*splitHeightFun)(int, int *, int *), bool allowDecreaseHeight) |
bool | correctReqAspectRatio (int pass, Widget *child, Requisition *requisition, bool allowDecreaseWidth, bool allowDecreaseHeight, void(*splitHeightFun)(int, int *, int *)) |
Correct a child requisition aspect ratio if needed. | |
virtual void | correctExtremesOfChild (Widget *child, Extremes *extremes, bool useAdjustmentWidth) |
virtual void | containerSizeChangedForChildren () |
virtual bool | affectedByContainerSizeChange () |
virtual bool | affectsSizeChangeContainerChild (Widget *child) |
virtual bool | usesAvailWidth () |
Must be implemengted by a method returning true, when getAvailWidth() is called. | |
virtual bool | usesAvailHeight () |
Must be implemengted by a method returning true, when getAvailHeight() is called. | |
virtual bool | buttonPressImpl (EventButton *event) |
virtual bool | buttonReleaseImpl (EventButton *event) |
virtual bool | motionNotifyImpl (EventMotion *event) |
virtual void | enterNotifyImpl (EventCrossing *event) |
virtual void | leaveNotifyImpl (EventCrossing *event) |
char * | addAnchor (const char *name) |
char * | addAnchor (const char *name, int y) |
void | changeAnchor (char *name, int y) |
void | removeAnchor (char *name) |
void | setCursor (style::Cursor cursor) |
bool | selectionHandleEvent (SelectionState::EventType eventType, Iterator *it, int charPos, int linkNo, MousePositionEvent *event) |
Protected Member Functions inherited from lout::identity::IdentifiableObject | |
void | registerName (const char *className, int *classId) |
This method must be called in the constructor for the sub class. | |
Static Protected Member Functions inherited from dw::oof::OOFAwareWidget | |
static int | getOOFMIndex (Widget *widget) |
static bool | isOOFContainer (Widget *widget, int oofmIndex) |
Protected Attributes inherited from dw::oof::OOFAwareWidget | |
OOFAwareWidget * | oofContainer [NUM_OOFM] |
OutOfFlowMgr * | outOfFlowMgr [NUM_OOFM] |
core::Requisition | requisitionWithoutOOF |
Protected Attributes inherited from dw::core::Widget | |
WidgetImgRenderer * | widgetImgRenderer |
Allocation | allocation |
The current allocation: size and position, always relative to the canvas. | |
float | ratio |
Preferred aspect ratio of the widget. | |
Layout * | layout |
style::Box | extraSpace |
Space around the margin box. | |
StackingContextMgr * | stackingContextMgr |
Set iff this widget constitutes a stacking context, as defined by CSS. | |
Widget * | stackingContextWidget |
The bottom-most ancestor (or this) for which stackingContextMgr is set. | |
Static Protected Attributes inherited from dw::oof::OOFAwareWidget | |
static const char * | OOFM_NAME [NUM_OOFM] |
Base class (rather a tag interface) for those widgets regarding borders defined by floats, and so allocated on the full width.
Definition at line 13 of file regardingborder.hh.
dw::RegardingBorder::RegardingBorder | ( | ) |
Definition at line 28 of file regardingborder.cc.
References CLASS_ID, DBG_OBJ_CREATE, and lout::identity::IdentifiableObject::registerName().
dw::RegardingBorder::~RegardingBorder | ( | ) |
Definition at line 34 of file regardingborder.cc.
References DBG_OBJ_DELETE.
|
static |
Definition at line 16 of file regardingborder.hh.
Referenced by dw::Textblock::getWidgetRegardingBorderForLine(), and RegardingBorder().