|
ObjectivelyMVC
Object oriented MVC framework for SDL3 and GNU C
|
SlideShowView cycles through a collection of Images with crossfade transitions. More...
#include <SlideShowView.h>
Public Member Functions | |
| Class * | _SlideShowView (void) |
| void | addImage (SlideShowView *self, Image *image) |
| Appends an Image to the slideshow. | |
| SlideShowView * | initWithFrame (SlideShowView *self, const SDL_Rect *frame) |
| Initializes this SlideShowView with the specified frame. | |
Public Member Functions inherited from View | |
| 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) | |
| Performs layout for this View's immediate subviews. | |
| 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. | |
| 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) |
| 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. | |
| subviewWithIdentifier (const View *self, const char *identifier) | |
| void | updateBindings (View *self) |
| 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 | |
| Uint32 | fadeDuration |
| The duration of the fade transition in milliseconds. | |
| Uint32 | slideDuration |
| The duration of each slide in milliseconds, excluding the fade transition. | |
| View | view |
| The superclass. | |
Data Fields inherited from View | |
| ViewAlignment | alignment |
| The alignment. | |
| int | autoresizingMask |
| The ViewAutoresizing bitmask. | |
| SDL_Color | backgroundColor |
| The background color. | |
| SDL_Color | borderColor |
| The border color. | |
| 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. | |
| SDL_Rect | frame |
| The frame, relative to the superview. | |
| bool | hidden |
If true, this View is not drawn. | |
| 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. | |
| 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. | |
| Array * | warnings |
| The Warnings this View generated. | |
| SDL_Window * | window |
| The window. | |
Protected Attributes | |
| ImageView * | current |
| The bottom ImageView, showing the current slide. | |
| Uint64 | fadeEndedAt |
| The ticks at which the next advance should begin (0 = not scheduled). | |
| Uint64 | fadeStartedAt |
| The ticks at which the current fade began (0 = not fading). | |
| Array * | images |
| The images to display. | |
| size_t | index |
| The index of the currently displayed image. | |
| SlideShowViewInterface * | interface |
| The interface. | |
| ImageView * | next |
| The top ImageView, fading in the next slide. | |
Protected Attributes inherited from View | |
| ViewInterface * | interface |
| The interface. | |
SlideShowView cycles through a collection of Images with crossfade transitions.
Add Image instances via addImage. The view starts displaying the first image immediately upon arrival and advances to the next every cycleInterval milliseconds, blending between images over fadeDuration milliseconds.
Definition at line 44 of file SlideShowView.h.
Definition at line 162 of file SlideShowView.c.
| void addImage | ( | SlideShowView * | self, |
| Image * | image | ||
| ) |
Appends an Image to the slideshow.
| self | The SlideShowView. |
| image | The Image to add. |
Definition at line 106 of file SlideShowView.c.
| SlideShowView * initWithFrame | ( | SlideShowView * | self, |
| const SDL_Rect * | frame | ||
| ) |
Initializes this SlideShowView with the specified frame.
| self | The SlideShowView. |
| frame | The frame, or NULL for the default frame. |
NULL on error. Definition at line 117 of file SlideShowView.c.
|
protected |
The bottom ImageView, showing the current slide.
Definition at line 83 of file SlideShowView.h.
| Uint32 SlideShowView::fadeDuration |
The duration of the fade transition in milliseconds.
Definition at line 77 of file SlideShowView.h.
|
protected |
The ticks at which the next advance should begin (0 = not scheduled).
Definition at line 101 of file SlideShowView.h.
|
protected |
The ticks at which the current fade began (0 = not fading).
Definition at line 95 of file SlideShowView.h.
|
protected |
The images to display.
Definition at line 61 of file SlideShowView.h.
|
protected |
The index of the currently displayed image.
Definition at line 67 of file SlideShowView.h.
|
protected |
The interface.
Definition at line 55 of file SlideShowView.h.
|
protected |
The top ImageView, fading in the next slide.
Definition at line 89 of file SlideShowView.h.
| Uint32 SlideShowView::slideDuration |
The duration of each slide in milliseconds, excluding the fade transition.
Definition at line 72 of file SlideShowView.h.
| View SlideShowView::view |
The superclass.
Definition at line 49 of file SlideShowView.h.