|
ObjectivelyMVC
Object oriented MVC framework for SDL3 and GNU C
|
Views are the fundamental building blocks of ObjectivelyMVC user interfaces. More...
#include <View.h>
Public Member Functions | |
| Class * | _View (void) |
| The View archetype. | |
| bool | acceptsKeyResponder (const View *self) |
| bool | acceptsTouchResponder (const View *self) |
| void | addClassName (View *self, const char *className) |
| Adds the given class name to this View. | |
| void | addSubview (View *self, View *subview) |
| Adds a subview to this view, to be drawn above its siblings. | |
| void | addSubviewRelativeTo (View *self, View *subview, View *other, ViewPosition position) |
Adds a subview to this view, positioned relatively to other. | |
| ancestorWithIdentifier (const View *self, const char *identifier) | |
| void | applyStyle (View *self, const Style *style) |
| Applies the given Style to this View. | |
| void | applyTheme (View *self, const Theme *theme) |
| Applies the given Theme to this View. | |
| void | applyThemeIfNeeded (View *self, const Theme *theme) |
| Recursively applies the Theme to this View and its subviews. | |
| void | attachStylesheet (View *self, SDL_Window *window) |
| Attaches this View's Stylesheet to the Theme associated with the given window. | |
| void | awakeWithCharacters (View *self, const char *chars) |
| Wakes this View with the given null-terminated JSON C string. | |
| void | awakeWithData (View *self, const Data *data) |
| Wakes this View with the specified JSON Data. | |
| void | awakeWithDictionary (View *, const Dictionary *) |
| Wakes this View with the specified Dictionary. | |
| void | awakeWithResource (View *self, const Resource *resource) |
| Wakes this View with the specified Resource. | |
| void | awakeWithResourceName (View *self, const char *name) |
| Wakes this View with the Resource by the specified name. | |
| void | becomeKeyResponder (View *self) |
| Become the key responder in the View hierarchy. | |
| void | becomeTouchResponder (View *self) |
| Become the touch responder in the View hierarchy. | |
| bool | bind (View *self, const Inlet *inlets, const Dictionary *dictionary) |
Performs data binding for the Inlets described in dictionary. | |
| SDL_Rect | bounds (const View *self) |
| void | bringSubviewToFront (View *self, View *subview) |
| Brings the specified subview to the front. | |
| void | clearWarnings (const View *self, WarningType type) |
| Clears this View's Warnings matching the given level. | |
| SDL_Rect | clippingFrame (const View *self) |
| bool | containsPoint (const View *self, const SDL_Point *point) |
| int | depth (const View *self) |
| descendantWithIdentifier (const View *self, const char *identifier) | |
| void | detachStylesheet (View *self, SDL_Window *window) |
| Detaches this View's Stylesheet from the Theme associated with the given window. | |
| void | didMoveToWindow (View *self, SDL_Window *window) |
| Informs this View that it has been added to the View hierachy of the given window. | |
| bool | didReceiveEvent (const View *self, const SDL_Event *event) |
| void | draw (View *self, Renderer *renderer) |
| Draws this View. | |
| void | emitViewEvent (View *self, ViewEvent code, ident data) |
| Emits a ViewEvent originating from this View. | |
| void | enumerate (const View *self, ViewEnumerator enumerator, ident data) |
| void | enumerate (View *self, ViewEnumerator enumerator, ident data) |
Enumerates this View and its descendants, applying enumerator to each. | |
| void | enumerateAdjacent (const View *self, ViewEnumerator enumerator, ident data) |
Enumerates adjacent siblings of this View, applying enumerator to each. | |
| void | enumerateAncestors (const View *self, ViewEnumerator enumerator, ident data) |
Enumerates all ancestors of this View, applying enumerator to each. | |
| void | enumerateDescendants (const View *self, ViewEnumerator enumerator, ident data) |
Enumerates all descendants of this View, applying enumerator to each. | |
| void | enumerateSelection (View *self, const char *rule, ViewEnumerator enumerator, ident data) |
Enumerates all Views in the selection matched by rule, applying enumerator to each. | |
| void | enumerateSiblings (const View *self, ViewEnumerator enumerator, ident data) |
Enumerates all siblings of this View, applying enumerator to each. | |
| void | enumerateSubviews (const View *self, ViewEnumerator enumerator, ident data) |
Enumerates all subviews of this View, applying enumerator to each. | |
| void | enumerateSuperview (const View *self, ViewEnumerator enumerator, ident data) |
Enumerates the superview of this View, if any, applying enumerator to it. | |
| void | enumerateVisible (const View *self, ViewEnumerator enumerator, ident data) |
| void | enumerateVisible (View *self, ViewEnumerator enumerator, ident data) |
Enumerates this View and its visible descendants, applying enumerator to each. | |
| bool | hasClassName (const View *self, cosnt char *className) |
| bool | hasOverflow (const View *self) |
| View * | hitTest (const View *self, const SDL_Point *point) |
| Performs a hit test against this View and its descendants for the given point. | |
| View * | init (View *self) |
| Initializes this View. | |
| View * | initWithFrame (View *self, const SDL_Rect *frame) |
| Initializes this View with the specified frame. | |
| void | invalidateStyle (View *self) |
| Invalidates the computed Style for this View and its descendants. | |
| bool | isContainer (const View *self) |
| bool | isDescendantOfView (const View *self, const View *view) |
| bool | isKeyResponder (const View *self) |
| bool | isTouchResponder (const View *self) |
| bool | isVisible (const View *self) |
| void | layoutIfNeeded (View *self) |
| Recursively updates the layout of this View and its subviews. | |
| layoutSubviews (View *self) | |
| Arranges this View's immediate subviews within its (already final) frame. | |
| void | layoutWithConstraint (View *self, ViewConstraint width, ViewConstraint height) |
| Resolves this View's size against the given ViewConstraints, then arranges it. | |
| void | layoutWithSize (View *self, const SDL_Size *size) |
| Resizes this View to the given size, then arranges it. | |
| bool | matchesSelector (const View *self, const SimpleSelector *simpleSelector) |
| void | moveToWindow (View *self, SDL_Window *window) |
| Moves this View to the View hierarchy of the given window. | |
| String * | path (const View *self) |
| void | removeAllClassNames (View *self) |
| Removes all class names from this View. | |
| void | removeAllSubviews (View *self) |
| Removes all subviews from this View. | |
| void | removeClassName (View *self, const char *className) |
| Removes the given class name to this View. | |
| void | removeFromSuperview (View *self) |
| Removes this View from its superview. | |
| void | removeSubview (View *self, View *subview) |
| Removes the given subview from this View. | |
| void | render (View *self, Renderer *renderer) |
| Renders this View using the given renderer. | |
| void | renderDeviceDidReset (View *self) |
| Informs this View that the render device has reset. | |
| void | renderDeviceWillReset (View *self) |
| Informs this View that the render device will reset. | |
| SDL_Rect | renderFrame (const View *self) |
| void | replaceSubview (View *self, View *subview, View *replacement) |
| Replaces the specified subview with the given replacement. | |
| void | resignKeyResponder (View *self) |
| Resigns key responder priority. | |
| void | resignTouchResponder (View *self) |
| Resigns touch responder priority. | |
| void | resize (View *self, const SDL_Size *size) |
| Resizes this View to the specified size. | |
| void | resolve (View *self, Outlet *outlets) |
| Resolves the given Outlets from this View's hierarchy. | |
| void | respondToEvent (View *self, const SDL_Event *event) |
| Responds to the specified event. | |
| Set * | select (View *self, const char *rule) |
| Resolves all descendants (including this View) that match the given Selector rule. | |
| View * | selectFirst (View *self, const char *rule) |
| Resolves the first descendant View that matches the given Selector rule. | |
| void | setNeedsApplyTheme (View *self) |
| Marks this View as needing Theme application before it is next drawn. | |
| void | setNeedsLayout (View *self) |
| Marks this View as needing layout before it is next drawn. | |
| void | setVisibility (View *self, ViewVisibility visibility) |
| Sets this View's visibility. | |
| SDL_Size | size (const View *self) |
| SDL_Size | sizeThastFills (const View *self) |
| SDL_Size | sizeThatContains (const View *self) |
| SDL_Size | sizeThatFills (const View *self) |
| void | sizeThatFits (const View *self) |
| SDL_Size | sizeThatSatisfies (View *self, ViewConstraint width, ViewConstraint height) |
| Resolves the size this View wants to be, within the offered ViewConstraints. | |
| void | sizeToContain (View *self) |
| Resizes this View to contain its subviews. | |
| void | sizeToFill (View *self) |
| Resizes this View to fill its superview. | |
| void | sizeToFit (View *self) |
| Resizes this View to fit its subviews. | |
| void | sizeToSatisfy (View *self, ViewConstraint width, ViewConstraint height) |
| Resizes this View to satisfy the given ViewConstraints. | |
| subviewWithIdentifier (const View *self, const char *identifier) | |
| void | updateBindings (View *self, ident data) |
| Updates data bindings, prompting the appropriate layout changes. | |
| SDL_Rect | viewport (const View *self) |
| View * | viewWithCharacters (const char *chars, Outlet *outlets) |
| Instantiates a View initialized with the given null-terminated JSON C string. | |
| View * | viewWithData (const Data *data, Outlet *outlets) |
Instantiates a View initialized with the contents of data. | |
| View * | viewWithDictionary (const Dictionary *dictionary, Outlet *outlets) |
Instantiates a View initialized with the attributes described in dictionary. | |
| View * | viewWithResource (const Resource *resource, Outlet *outlets) |
Instantiates a View initialized with the JSON data in resource. | |
| View * | viewWithResourceName (const char *name, Outlet *outlets) |
Instantiates a View initialized with the JSON Resource with the specified name. | |
| Array * | visibleSubviews (const View *self) |
| void | warn (View *self, ViewWarningType type, const char *fmt,...) |
| void | warn (View *self, WarningType level, const char *fmt,...) |
| Appends a warning for this View. | |
| void | willMoveToWindow (View *self, SDL_Window *window) |
| Informs this View that it will be added to the View hierarchy for the given window. | |
Data Fields | |
| ViewAlignment | alignment |
| The alignment. | |
| int | autoresizingMask |
| The ViewAutoresizing bitmask. | |
| SDL_Color | backgroundColor |
| The background color. | |
| int | backgroundGradientAngle |
The angle of the background gradient, in degrees, clockwise from south: 0 (the default) fills downwards, 90 to the right, 180 upwards. | |
| SDL_Color | backgroundGradientColor |
| The far color of the background gradient, which runs from View::backgroundColor. | |
| SDL_Color | borderColor |
| The border color. | |
| int | borderRadius |
| The corner radius applied to the background, border and bevel. | |
| int | borderWidth |
| The border width. | |
| Set * | classNames |
| The class names. | |
| bool | clipsSubviews |
| If true, subviews will be clipped to this View's frame. | |
| Style * | computedStyle |
| The computed Style of this View. | |
| ViewCornerCut | cornerCut |
| The horizontal inset of each corner of the background and border. | |
| char * | identifier |
| An optional identifier. | |
| SDL_Size | maxSize |
| The maximum size this View may be resized to during layout. | |
| SDL_Size | minSize |
| The minimum size this View may be resized to during layout. | |
| bool | needsApplyTheme |
| If true, this View will apply the Theme before it is drawn. | |
| bool | needsLayout |
| If true, this View will layout its subviews before it is drawn. | |
| View * | nextResponder |
| The next responder, or event handler, in the chain. | |
| Object | object |
| The superclass. | |
| ViewPadding | padding |
| The padding. | |
| ViewPointerEvents | pointerEvents |
| Whether this View is the result of a hit test; its subviews always are. | |
| bool | stretch |
| Whether this View takes a share of the space its StackView leaves along its axis. | |
| Style * | style |
| The element-level Style of this View. | |
| Stylesheet * | stylesheet |
| An optional Stylesheet. | |
| Array * | subviews |
| The immediate subviews. | |
| View * | superview |
| The super View. | |
| ViewController * | viewController |
| The ViewController. | |
| ViewVisibility | visibility |
| Whether this View is drawn, and contributes to its superview's size. | |
| Array * | warnings |
| The Warnings this View generated. | |
| SDL_Window * | window |
| The window. | |
Protected Attributes | |
| ViewInterface * | interface [0] |
| The interface type. | |
Views are the fundamental building blocks of ObjectivelyMVC user interfaces.
Views provide organization and coordination of layout, drawing and event handling. Views maintain hierarchical relationships among other Views, whereby each View's parent, or superview, dictates where it will be drawn on the screen, which events it will be eligible to receive, etc.
| Class * _View | ( | void | ) |
The View archetype.
Definition at line 2336 of file View.c.
| bool acceptsKeyResponder | ( | const View * | self | ) |
| bool acceptsTouchResponder | ( | const View * | self | ) |
| void addClassName | ( | View * | self, |
| const char * | className | ||
| ) |
Adds the given class name to this View.
| self | The View. |
| className | The class name. |
Definition at line 183 of file View.c.
Adds a subview to this view, to be drawn above its siblings.
| self | The View. |
| subview | The subview to add. |
$(view, addSubviewRelativeTo, subview, NULL, OrderSame). Definition at line 49 of file PageView.c.
| void addSubviewRelativeTo | ( | View * | self, |
| View * | subview, | ||
| View * | other, | ||
| ViewPosition | position | ||
| ) |
Adds a subview to this view, positioned relatively to other.
| self | The View. |
| subview | The subview to add. |
| other | An optional View to position subview relative to. |
| position | The relative position. |
Definition at line 209 of file View.c.
| ancestorWithIdentifier | ( | const View * | self, |
| const char * | identifier | ||
| ) |
Applies the given Style to this View.
Definition at line 59 of file CollectionView.c.
Applies the given Theme to this View.
Definition at line 335 of file View.c.
Recursively applies the Theme to this View and its subviews.
Definition at line 369 of file View.c.
| void attachStylesheet | ( | View * | self, |
| SDL_Window * | window | ||
| ) |
| void awakeWithCharacters | ( | View * | self, |
| const char * | chars | ||
| ) |
Wakes this View with the given null-terminated JSON C string.
Definition at line 413 of file View.c.
| void awakeWithData | ( | View * | self, |
| const Data * | data | ||
| ) |
Wakes this View with the specified JSON Data.
Definition at line 426 of file View.c.
| void awakeWithDictionary | ( | View * | self, |
| const Dictionary * | dictionary | ||
| ) |
Wakes this View with the specified Dictionary.
dictionary. | void awakeWithResource | ( | View * | self, |
| const Resource * | resource | ||
| ) |
| void awakeWithResourceName | ( | View * | self, |
| const char * | name | ||
| ) |
Wakes this View with the Resource by the specified name.
Definition at line 474 of file View.c.
| void becomeKeyResponder | ( | View * | self | ) |
Become the key responder in the View hierarchy.
| self | The View. |
Definition at line 132 of file Control.c.
| void becomeTouchResponder | ( | View * | self | ) |
Become the touch responder in the View hierarchy.
| self | The View. |
Definition at line 511 of file View.c.
Performs data binding for the Inlets described in dictionary.
| SDL_Rect bounds | ( | const View * | self | ) |
Brings the specified subview to the front.
| self | The View. |
| subview | The subview. |
Definition at line 570 of file View.c.
| void clearWarnings | ( | const View * | self, |
| WarningType | level | ||
| ) |
Clears this View's Warnings matching the given level.
| self | The View. |
| type | The bitmask of WarningTypes to clear. |
Definition at line 598 of file View.c.
| SDL_Rect clippingFrame | ( | const View * | self | ) |
| self | The View. |
renderFrame, expanded for border width, and clipped to all ancestors. Definition at line 606 of file View.c.
| bool containsPoint | ( | const View * | self, |
| const SDL_Point * | point | ||
| ) |
| int depth | ( | const View * | self | ) |
| descendantWithIdentifier | ( | const View * | self, |
| const char * | identifier | ||
| ) |
| self | The View. |
| identifier | The identifier. |
Definition at line 666 of file View.c.
| void detachStylesheet | ( | View * | self, |
| SDL_Window * | window | ||
| ) |
Detaches this View's Stylesheet from the Theme associated with the given window.
| self | The View. |
| window | The window. |
Definition at line 693 of file View.c.
| void didMoveToWindow | ( | View * | self, |
| SDL_Window * | window | ||
| ) |
Informs this View that it has been added to the View hierachy of the given window.
Definition at line 90 of file ImageView.c.
| bool didReceiveEvent | ( | const View * | self, |
| const SDL_Event * | event | ||
| ) |
| self | The View. |
| event | The event. |
Definition at line 726 of file View.c.
Draws this View.
Definition at line 778 of file View.c.
Emits a ViewEvent originating from this View.
| self | The View. |
| code | The ViewEvent code. |
| data | The ViewEvent data. |
Definition at line 794 of file View.c.
| void enumerate | ( | const View * | self, |
| ViewEnumerator | enumerator, | ||
| ident | data | ||
| ) |
| void enumerate | ( | View * | self, |
| ViewEnumerator | enumerator, | ||
| ident | data | ||
| ) |
Enumerates this View and its descendants, applying enumerator to each.
| self | The View. |
| enumerator | The ViewEnumerator. |
| data | User data. |
Definition at line 807 of file View.c.
| void enumerateAdjacent | ( | const View * | self, |
| ViewEnumerator | enumerator, | ||
| ident | data | ||
| ) |
Enumerates adjacent siblings of this View, applying enumerator to each.
| self | The View. |
| enumerator | The ViewEnumerator. |
| data | User data. |
Definition at line 820 of file View.c.
| void enumerateAncestors | ( | const View * | self, |
| ViewEnumerator | enumerator, | ||
| ident | data | ||
| ) |
| void enumerateDescendants | ( | const View * | self, |
| ViewEnumerator | enumerator, | ||
| ident | data | ||
| ) |
| void enumerateSelection | ( | View * | self, |
| const char * | rule, | ||
| ViewEnumerator | enumerator, | ||
| ident | data | ||
| ) |
Enumerates all Views in the selection matched by rule, applying enumerator to each.
Definition at line 853 of file View.c.
| void enumerateSiblings | ( | const View * | self, |
| ViewEnumerator | enumerator, | ||
| ident | data | ||
| ) |
Enumerates all siblings of this View, applying enumerator to each.
| self | The View. |
| enumerator | The ViewEnumerator. |
| data | User data. |
Definition at line 884 of file View.c.
| void enumerateSubviews | ( | const View * | self, |
| ViewEnumerator | enumerator, | ||
| ident | data | ||
| ) |
| void enumerateSuperview | ( | const View * | self, |
| ViewEnumerator | enumerator, | ||
| ident | data | ||
| ) |
| void enumerateVisible | ( | const View * | self, |
| ViewEnumerator | enumerator, | ||
| ident | data | ||
| ) |
| void enumerateVisible | ( | View * | self, |
| ViewEnumerator | enumerator, | ||
| ident | data | ||
| ) |
Enumerates this View and its visible descendants, applying enumerator to each.
This is an optimized path for enumerating only visible subtrees.
| self | The View. |
| enumerator | The ViewEnumerator. |
| data | User data. |
Definition at line 931 of file View.c.
| bool hasClassName | ( | const View * | self, |
| cosnt char * | className | ||
| ) |
| bool hasOverflow | ( | const View * | self | ) |
| self | The View |
Definition at line 997 of file View.c.
Performs a hit test against this View and its descendants for the given point.
| self | The View. |
| point | The point to test. |
NULL. pointerEvents disabled are never returned, though the subviews of the latter are still tested. Definition at line 1012 of file View.c.
Initializes this View.
| self | The View. |
NULL on error. Definition at line 67 of file Box.c.
Initializes this View with the specified frame.
| self | The View. |
| frame | The frame. |
NULL on error. Definition at line 1047 of file View.c.
| void invalidateStyle | ( | View * | self | ) |
Invalidates the computed Style for this View and its descendants.
| self | The View. |
Definition at line 1092 of file View.c.
| bool isContainer | ( | const View * | self | ) |
| bool isKeyResponder | ( | const View * | self | ) |
| bool isTouchResponder | ( | const View * | self | ) |
| bool isVisible | ( | const View * | self | ) |
| void layoutIfNeeded | ( | View * | self | ) |
Recursively updates the layout of this View and its subviews.
| self | The View. |
Definition at line 1174 of file View.c.
| layoutSubviews | ( | View * | self | ) |
Arranges this View's immediate subviews within its (already final) frame.
| self | The View. |
self->frame; it must not perform any sizing of its own, only positioning and committing of subview frames. Definition at line 74 of file Box.c.
| void layoutWithConstraint | ( | View * | self, |
| ViewConstraint | width, | ||
| ViewConstraint | height | ||
| ) |
Resolves this View's size against the given ViewConstraints, then arranges it.
| self | The View. |
| width | The ViewConstraint offered for this View's width. |
| height | The ViewConstraint offered for this View's height. |
needsLayout. Definition at line 1254 of file View.c.
| void layoutWithSize | ( | View * | self, |
| const SDL_Size * | size | ||
| ) |
Resizes this View to the given size, then arranges it.
Definition at line 1267 of file View.c.
| bool matchesSelector | ( | const View * | self, |
| const SimpleSelector * | simpleSelector | ||
| ) |
| self | The View. |
| simpleSelector | The SimpleSelector. |
Definition at line 51 of file CollectionItemView.c.
| void moveToWindow | ( | View * | self, |
| SDL_Window * | window | ||
| ) |
Moves this View to the View hierarchy of the given window.
Definition at line 1351 of file View.c.
| String * path | ( | const View * | self | ) |
| self | The View. |
Definition at line 1378 of file View.c.
| void removeAllClassNames | ( | View * | self | ) |
| void removeAllSubviews | ( | View * | self | ) |
Removes all subviews from this View.
| self | The View. |
Definition at line 1437 of file View.c.
| void removeClassName | ( | View * | self, |
| const char * | className | ||
| ) |
Removes the given class name to this View.
| self | The View. |
| className | The class name. |
Definition at line 1445 of file View.c.
| void removeFromSuperview | ( | View * | self | ) |
Removes this View from its superview.
| self | The View. |
Definition at line 1462 of file View.c.
Removes the given subview from this View.
| self | The View. |
| subview | The subview. |
Definition at line 72 of file PageView.c.
Renders this View using the given renderer.
draw as the View hierarchy is drawn. Definition at line 181 of file Control.c.
| void renderDeviceDidReset | ( | View * | self | ) |
Informs this View that the render device has reset.
| self | The View. |
Definition at line 776 of file Text.c.
| void renderDeviceWillReset | ( | View * | self | ) |
Informs this View that the render device will reset.
| self | The View. |
Definition at line 184 of file ImageView.c.
| SDL_Frame renderFrame | ( | const View * | self | ) |
| self | The View. |
Definition at line 1629 of file View.c.
Replaces the specified subview with the given replacement.
| self | The View. |
| subview | The subview to replace. |
| replacement | The replacement subview. |
Definition at line 1663 of file View.c.
| void resignKeyResponder | ( | View * | self | ) |
Resigns key responder priority.
| self | The View. |
Definition at line 265 of file Control.c.
| void resignTouchResponder | ( | View * | self | ) |
| void resize | ( | View * | self, |
| const SDL_Size * | size | ||
| ) |
Resizes this View to the specified size.
If the size changes, this marks this View for layout, and also its superview when that is a container or when this View has a non-None positioning alignment, since either derives from this size.
| self | The View. |
| size | The size to set. |
Definition at line 1708 of file View.c.
Resolves the given Outlets from this View's hierarchy.
| self | The View. |
| outlets | The Outlets to resolve. |
Definition at line 1732 of file View.c.
| void respondToEvent | ( | View * | self, |
| const SDL_Event * | event | ||
| ) |
Responds to the specified event.
| self | The View. |
| event | The event. |
Definition at line 283 of file Control.c.
| Set * select | ( | View * | self, |
| const char * | rule | ||
| ) |
Resolves the first descendant View that matches the given Selector rule.
Definition at line 1819 of file View.c.
| void setNeedsApplyTheme | ( | View * | self | ) |
Marks this View as needing Theme application before it is next drawn.
| self | The View. |
needsApplyTheme directly: it propagates needsApplyThemeSubviews to ancestors, which View::applyThemeIfNeeded requires in order to find this View. A View flagged by direct assignment MAY be skipped. | void setNeedsLayout | ( | View * | self | ) |
Marks this View as needing layout before it is next drawn.
| self | The View. |
needsLayout directly: it propagates needsLayoutSubviews to ancestors, which View::layoutIfNeeded requires in order to find this View. A View flagged by direct assignment MAY be skipped. | void setVisibility | ( | View * | self, |
| ViewVisibility | visibility | ||
| ) |
Sets this View's visibility.
| self | The View. |
| visibility | The visibility. |
needsLayout if it is a container, and writes View::style so that the choice outlives the next Style applied. Definition at line 1834 of file View.c.
| SDL_Size size | ( | const View * | self | ) |
| SDL_Size sizeThastFills | ( | const View * | self | ) |
| SDL_Size sizeThatContains | ( | const View * | self | ) |
| self | The View. |
Definition at line 1886 of file View.c.
| SDL_Size sizeThatFills | ( | const View * | self | ) |
| SDL_Size sizeThatFits | ( | const View * | self | ) |
| self | The View. |
ViewConstraintUnspecified for both axes. Subclasses with their own sizing logic (e.g. Text, TableView) should override this method. Definition at line 113 of file Select.c.
| SDL_Size sizeThatSatisfies | ( | View * | self, |
| ViewConstraint | width, | ||
| ViewConstraint | height | ||
| ) |
Resolves the size this View wants to be, within the offered ViewConstraints.
| self | The View. |
| width | The ViewConstraint offered for this View's width. |
| height | The ViewConstraint offered for this View's height. |
ViewAutoresizingWidth or ViewAutoresizingHeight set. Definition at line 1979 of file View.c.
| void sizeToContain | ( | View * | self | ) |
| void sizeToFill | ( | View * | self | ) |
| void sizeToFit | ( | View * | self | ) |
Resizes this View to fit its subviews.
| self | The View. |
Definition at line 2018 of file View.c.
| void sizeToSatisfy | ( | View * | self, |
| ViewConstraint | width, | ||
| ViewConstraint | height | ||
| ) |
Resizes this View to satisfy the given ViewConstraints.
| self | The View. |
| width | The ViewConstraint offered for this View's width. |
| height | The ViewConstraint offered for this View's height. |
Definition at line 2029 of file View.c.
| self | The View. |
| identifier | The identifier. |
Definition at line 2040 of file View.c.
| void updateBindings | ( | View * | self, |
| ident | data | ||
| ) |
Updates data bindings, prompting the appropriate layout changes.
The default implementation recurses over this View's subviews, passing data through unchanged. Subclasses SHOULD override this method to refresh any data sources they rely on, and MUST call super to continue the recursion.
| self | The View. |
| data | Application-defined data, or NULL. |
NULL: on ViewController::addChildViewController and on pixel density changes, meaning "refresh from configuration." An application MAY pass its own data to hand transient state – a simulation frame, say – to an entire View hierarchy at once, without holding a reference to every View that consumes it. Since a non-NULL payload MAY arrive as often as every frame, expensive work SHOULD stay behind the NULL case. Definition at line 117 of file HSVColorPicker.c.
| SDL_Rect viewport | ( | const View * | self | ) |
| self | The View. |
Definition at line 2078 of file View.c.
Instantiates a View initialized with the given null-terminated JSON C string.
| chars | A null-terminated JSON C string describing a View. |
| outlets | An optional array of Outlets to resolve. |
NULL on error. Definition at line 2091 of file View.c.
Instantiates a View initialized with the contents of data.
| data | A Data containing JSON describing a View. |
| outlets | An optional array of Outlets to resolve. |
NULL on error. Definition at line 2106 of file View.c.
Instantiates a View initialized with the attributes described in dictionary.
| dictionary | A Dictionary describing a View. |
| outlets | An optional array of Outlets to resolve. |
NULL on error. Definition at line 2127 of file View.c.
Instantiates a View initialized with the JSON data in resource.
| resource | A Resource containing JSON describing a View. |
| outlets | An optional array of Outlets to resolve. |
NULL on error. Definition at line 2142 of file View.c.
Instantiates a View initialized with the JSON Resource with the specified name.
| name | The name of a JSON Resource describing a View. |
| outlets | An optional array of Outlets to resolve. |
NULL on error. Definition at line 2153 of file View.c.
| Array * visibleSubviews | ( | const View * | self | ) |
| self | The View. |
Definition at line 92 of file PageView.c.
| void warn | ( | View * | self, |
| ViewWarningType | type, | ||
| const char * | fmt, | ||
| ... | |||
| ) |
| void warn | ( | View * | self, |
| WarningType | level, | ||
| const char * | fmt, | ||
| ... | |||
| ) |
Appends a warning for this View.
| self | The View. |
| level | The WarningType. |
| fmt | The format string. |
Definition at line 2186 of file View.c.
| void willMoveToWindow | ( | View * | self, |
| SDL_Window * | window | ||
| ) |
Informs this View that it will be added to the View hierarchy for the given window.
Definition at line 2208 of file View.c.
| ViewAlignment View::alignment |
The alignment.
| int View::autoresizingMask |
The ViewAutoresizing bitmask.
| SDL_Color View::backgroundColor |
The background color.
| int View::backgroundGradientAngle |
The angle of the background gradient, in degrees, clockwise from south: 0 (the default) fills downwards, 90 to the right, 180 upwards.
| SDL_Color View::backgroundGradientColor |
The far color of the background gradient, which runs from View::backgroundColor.
| SDL_Color View::borderColor |
The border color.
| int View::borderRadius |
The corner radius applied to the background, border and bevel.
| int View::borderWidth |
The border width.
| bool View::clipsSubviews |
If true, subviews will be clipped to this View's frame.
| ViewCornerCut View::cornerCut |
The horizontal inset of each corner of the background and border.
| char* View::identifier |
|
protected |
| SDL_Size View::maxSize |
The maximum size this View may be resized to during layout.
| SDL_Size View::minSize |
The minimum size this View may be resized to during layout.
| bool View::needsApplyTheme |
If true, this View will apply the Theme before it is drawn.
needsApplyThemeSubviews to ancestors; a direct write does not, and the View MAY be skipped by View::applyThemeIfNeeded. | bool View::needsLayout |
If true, this View will layout its subviews before it is drawn.
needsLayoutSubviews to ancestors; a direct write does not, and the View MAY be skipped by View::layoutIfNeeded. | View* View::nextResponder |
| ViewPadding View::padding |
The padding.
| ViewPointerEvents View::pointerEvents |
Whether this View is the result of a hit test; its subviews always are.
none so that clicks pass through it to whatever lies beneath. Styled as pointer-events. | bool View::stretch |
Whether this View takes a share of the space its StackView leaves along its axis.
stretch. | Style* View::style |
| Stylesheet* View::stylesheet |
An optional Stylesheet.
| View* View::superview |
| ViewController* View::viewController |
The ViewController.
NULL unless the View is the immediate view of a ViewController. | ViewVisibility View::visibility |
Whether this View is drawn, and contributes to its superview's size.
unspecified is visible. | Array* View::warnings |
The Warnings this View generated.
| SDL_Window* View::window |
The window.
NULL until the View has been added to a WindowController.