|
Aurore
A Switch-like interface for your app, on every screen
|
#include <aurore/cadran/ui/cadran_kit.hpp>
Public Member Functions | |
| Bar () | |
| void | set (float fraction) |
| 0..1 | |
| void | draw (NVGcontext *vg, float x, float y, float width, float height, aurore::Style style, aurore::FrameContext *ctx) override |
Public Member Functions inherited from aurore::View | |
| void | setScale (float scale) |
| void | setScaleX (float scale) |
| void | setScaleY (float scale) |
| float | getScaleX () const |
| float | getScaleY () const |
| View () | |
| virtual | ~View () |
| void | setBackground (ViewBackground background) |
| How the view's background is drawn: none, the sidebar's, the backdrop, a plain colour or a gradient. | |
| void | setBackgroundLinearGradient (NVGcolor start, NVGcolor end, ViewBackground direction=ViewBackground::VERTICAL_LINEAR) |
| void | shakeHighlight (FocusDirection direction) |
Shakes the focus highlight towards direction: there is nothing to go to there. | |
| Rect | getFrame () |
| The view's position and size on the screen, after layout (getX(), getY(), getWidth(), getHeight()). | |
| float | getX () |
| The position on the screen, in layout units: the parents' positions and translations added. | |
| float | getY () |
| Rect | getLocalFrame () |
| The position and size in the parent, as laid out by Yoga. | |
| float | getLocalX () |
| float | getLocalY () |
| float | getWidth () |
The size as laid out by Yoga; the height without the collapse when includeCollapse is false. | |
| float | getHeight (bool includeCollapse=true) |
| virtual void | invalidate () |
| virtual void | onLayout () |
| virtual View * | getView (std::string id) |
| void | setWidth (float width) |
| void | setHeight (float height) |
| void | setSize (Size size) |
| void | setDimensions (float width, float height) |
| void | setWidthPercentage (float percentage) |
| void | setHeightPercentage (float percentage) |
| void | setMinWidth (float minWidth) |
| void | setMinHeight (float minHeight) |
| void | setMinWidthPercentage (float percentage) |
| void | setMinHeightPercentage (float percentage) |
| void | setMaxWidth (float maxWidth) |
| void | setMaxHeight (float maxHeight) |
| void | setMaxWidthPercentage (float percentage) |
| void | setMaxHeightPercentage (float percentage) |
| void | setGrow (float grow) |
| void | setShrink (float shrink) |
| void | setMargins (float top, float right, float bottom, float left) |
| void | setMarginTop (float top) |
| void | setMarginRight (float right) |
| float | getMarginRight () |
| float | getMarginLeft () |
| void | setMarginBottom (float right) |
| void | setMarginLeft (float left) |
| void | setVisibility (Visibility visibility) |
| Visibility | getVisibility () |
| void | setPositionTop (float pos) |
| void | setPositionRight (float pos) |
| void | setPositionBottom (float pos) |
| void | setPositionLeft (float pos) |
| void | setPositionTopPercentage (float percentage) |
| void | setPositionRightPercentage (float percentage) |
| void | setPositionBottomPercentage (float percentage) |
| void | setPositionLeftPercentage (float percentage) |
| void | setPositionType (PositionType type) |
| void | setId (std::string id) |
| const std::string & | getId () const |
| void | setAlignSelf (AlignSelf align) |
| void | setBoxSizing (BoxSizing sizing) |
| void | setLineColor (NVGcolor color) |
| void | setLineTop (float thickness) |
| void | setLineRight (float thickness) |
| void | setLineBottom (float thickness) |
| void | setLineLeft (float thickness) |
| void | setBackgroundColor (NVGcolor color) |
| void | setBorderColor (NVGcolor color) |
| ViewBackground | getBackground () const |
| NVGcolor | getBackgroundColor () const |
| NVGcolor | getBorderColor () const |
| void | setBorderThickness (float thickness) |
| float | getBorderThickness () |
| void | setCornerRadius (float radius) |
| void | setCornerRadius (float topLeft, float topRight, float bottomRight, float bottomLeft) |
| float | getCornerRadius () |
| void | setThemeArea (ThemeArea area) |
| ThemeArea | getThemeArea () const |
| void | setShadowType (ShadowType type) |
| void | setShadowVisibility (bool visible) |
| void | setHideHighlightBackground (bool hide) |
| void | setHideHighlightBorder (bool hide) |
| void | setHideHighlight (bool hide) |
| void | setHideClickAnimation (bool hide) |
| No click animation when the view is clicked. | |
| void | setHighlightPadding (float padding) |
| void | setHighlightCornerRadius (float radius) |
| virtual View * | getNearestView (std::string id) |
| virtual void | handleXMLElement (tinyxml2::XMLElement *element) |
| virtual void | applyXMLAttributes (tinyxml2::XMLElement *element) |
| virtual bool | applyXMLAttribute (std::string name, std::string value) |
| void | registerAutoXMLAttribute (std::string name, AutoAttributeHandler handler) |
| void | registerPercentageXMLAttribute (std::string name, FloatAttributeHandler handler) |
| void | registerFloatXMLAttribute (std::string name, FloatAttributeHandler handler) |
| void | registerStringXMLAttribute (std::string name, StringAttributeHandler handler) |
| void | registerColorXMLAttribute (std::string name, ColorAttributeHandler handler) |
| void | registerBoolXMLAttribute (std::string name, BoolAttributeHandler handler) |
| void | registerFilePathXMLAttribute (std::string name, FilePathAttributeHandler handler) |
| bool | isXMLAttributeValid (std::string attributeName) |
| void | setMaximumAllowedXMLElements (unsigned max) |
| unsigned | getMaximumAllowedXMLElements () |
| void | setInFadeAnimation (bool translucent) |
| void | setFocusable (bool focusable) |
| bool | isFocusable () |
| Whether the view takes the focus: focusable, and visible. | |
| void | removeFromSuperView (bool free=true) |
| void | setFocusSound (enum Sound sound) |
| virtual enum Sound | getFocusSound () |
| void | detach () |
| bool | isDetached () |
| See detach(). | |
| void | setDetachedPosition (float x, float y) |
| void | setDetachedPositionX (float x) |
| void | setDetachedPositionY (float y) |
| Point | getDetachedPosition () const |
| void | setParent (Box *parent, void *parentUserdata=nullptr) |
The box this view is in (Box::addView sets it; parentUserdata is the box's own). | |
| Box * | getParent () |
| bool | hasParent () |
| void * | getParentUserData () |
| template<class ButtonType > | |
| ActionIterator | getAction (ButtonType button) |
| ActionIterator | getAction (ActionIdentifier identifier) |
The action registered under identifier, or getActions().end(). | |
| template<class ButtonType , class ActionType > | |
| ActionIdentifier | registerAction (const std::string &hintText, ButtonType button, const ActionListener &actionListener, bool hidden=false, bool allowRepeating=false, enum Sound sound=SOUND_NONE) |
| ActionIdentifier | registerAction (const std::string &hintText, ControllerButton button, const ActionListener &actionListener, bool hidden=false, bool allowRepeating=false, enum Sound sound=SOUND_NONE) |
| The same, on a controller button. | |
| ActionIdentifier | registerAction (AuroreKeyCombination key, const ActionListener &actionListener, bool allowRepeating=false) |
| An action on a keyboard key (a combination with modifiers): no hint, no sound. | |
| void | func (AuroreKeyCombination key) |
| void | unregisterAction (ActionIdentifier identifier) |
| void | registerClickAction (const ActionListener &actionListener) |
| void | updateActionHint (enum ControllerButton button, const std::string &hintText) |
Changes the hint of the action on button. | |
| void | setActionAvailable (enum ControllerButton button, bool available) |
Turns the action on button on or off (an action off runs nothing and shows no hint). | |
| void | setActionsAvailable (bool available) const |
| The same for every action of the view. | |
| void | setActionHidden (enum ControllerButton button, bool hidden) |
| void | resetClickAnimation () |
| void | playClickAnimation (bool reverse=false, bool animateBack=true, bool force=false) |
| Plays the click animation (the flash over the view). | |
| std::string | getClassString () const |
| The view's class name ("Label", "Box"…). | |
| std::string | describe () const |
The class name and the id, for logs: Label (id="title"). | |
| YGNode * | getYGNode () |
| The view's Yoga node. | |
| const std::vector< std::shared_ptr< Action > > & | getActions () |
| The actions registered on the view. | |
| const std::vector< GestureRecognizer * > & | getGestureRecognizers () |
| void | interruptGestures (bool onlyIfUnsureState) |
| void | addGestureRecognizer (GestureRecognizer *recognizer) |
| bool | removeGestureRecognizer (GestureRecognizer *recognizer) |
| Sound | gestureRecognizerRequest (TouchState touch, MouseState mouse, View *firstResponder) |
| virtual void | frame (FrameContext *ctx) |
| void | frameHighlight (FrameContext *ctx) |
| virtual void | willAppear (bool resetState=false) |
| virtual void | willDisappear (bool resetState=false) |
| virtual void | onShowAnimationEnd () |
| virtual void | show (std::function< void(void)> cb) |
| virtual void | show (std::function< void(void)> cb, bool animate, float animationDuration) |
| virtual float | getShowAnimationDuration (TransitionAnimation animation) |
| void | collapse (bool animated=true) |
| bool | isCollapsed () |
| Whether collapse() hid the view. | |
| void | setAlpha (float alpha) |
| The view's opacity, 0 to 1 (a transition when its style has one). | |
| void | expand (bool animated=true) |
| virtual void | hide (std::function< void(void)> cb) |
| virtual void | hide (std::function< void(void)> cb, bool animate, float animationDuration) |
| bool | isHidden () |
| Whether hide() hid the view. | |
| virtual bool | isTranslucent () |
| bool | isFocused () |
| Whether the view has the focus. | |
| virtual View * | getDefaultFocus () |
| virtual View * | hitTest (Point point) |
| virtual View * | getNextFocus (FocusDirection direction, View *currentView) |
| void | setCustomNavigationRoute (FocusDirection direction, View *target) |
| void | setCustomNavigationRoute (FocusDirection direction, std::string targetId) |
| bool | hasCustomNavigationRouteByPtr (FocusDirection direction) |
| bool | hasCustomNavigationRouteById (FocusDirection direction) |
| View * | getCustomNavigationRoutePtr (FocusDirection direction) |
| std::string | getCustomNavigationRouteId (FocusDirection direction) |
| virtual void | onFocusGained () |
| virtual void | onFocusLost () |
| virtual void | onParentFocusGained (View *focusedView) |
| virtual void | onParentFocusLost (View *focusedView) |
| virtual void | onWindowSizeChanged () |
| GenericEvent * | getFocusEvent () |
| Fired with the view when it gains the focus. | |
| GenericEvent * | getFocusLostEvent () |
| Fired with the view when it loses the focus. | |
| virtual float | getAlpha (bool child=false) |
| The opacity drawn: the view's alpha times its parents'. | |
| float | getClickAlpha () |
| void | overrideTheme (Theme *newTheme) |
| void | setCulled (bool culled) |
| bool | isCulled () |
| void | setAspectRatio (float value) |
| The width over the height, kept by the layout (values <= 0 are ignored). | |
| float | getAspectRatio () |
| void | setBackgroundCornerRadii (float topLeft, float topRight, float bottomRight, float bottomLeft) |
| void | setTranslationY (float translateY) |
| void | setTranslationX (float translateX) |
| void | setWireframeEnabled (bool wireframe) |
| bool | isWireframeEnabled () |
| AppletFrameItem * | getAppletFrameItem () |
| void | updateAppletFrameItem () |
| bool | getClipsToBounds () const |
| Whether the children are clipped to the view's frame when drawn. | |
| void | setClipsToBounds (bool value) |
| virtual AppletFrame * | getAppletFrame () |
| The AppletFrame the view is in, or nullptr. | |
| void | present (View *view) |
Pushes view as the content of the view's AppletFrame (a page inside the frame). | |
| virtual void | dismiss (std::function< void(void)> cb=[] {}) |
Pops the AppletFrame's content back to the one before, then runs cb. | |
| std::weak_ptr< void > | aliveToken () |
| void | ptrLock () |
| void | ptrUnlock () |
| bool | isPtrLocked () |
| Whether a ptrLock() holds the view. | |
| void | freeView () |
| Deletes the view at the end of the frame (Application::addToFreeQueue). | |
| Activity * | getParentActivity () |
| The activity the view is in, through its parents; nullptr when none. | |
| void | setParentActivity (Activity *activity) |
| bool | setStateStyle (StyleState state, const std::string &property, const std::string &value) |
| void | setStyleState (StyleState state, bool on) |
| bool | hasStyleState (StyleState state) |
| bool | setTransition (const std::string &spec) |
| virtual bool | getStyleProperty (const std::string &name, StyleValue *value) |
| virtual bool | setStyleProperty (const std::string &name, const StyleValue &value) |
| void | keepSubscription (Subscription &&subscription) |
| bool | bind (const std::string &spec) |
| virtual bool | setBoundText (const std::string &text) |
| void | setAccessibilityRole (AccessibilityRole role) |
| AccessibilityRole | getAccessibilityRole () |
| See setAccessibilityRole(). | |
| void | setAccessibilityLabel (const std::string &label) |
| std::string | getAccessibilityLabel () |
| void | setAccessibilityValue (const std::string &value) |
| std::string | getAccessibilityValue () |
| void | setAccessibilitySelected (bool selected) |
| bool | isAccessibilitySelected () |
| virtual bool | getAccessibilityPosition (int *index, int *count) |
| virtual std::string | getAccessibilityDescription () |
| std::string | getAccessibilityText () |
| void | announceAccessibilityValue () |
| void | resolveBindings (Activity *activity=nullptr) |
| virtual void | onTextScaleChanged () |
| bool | setThemeColor (const std::string &property, const std::string &key) |
| std::string | getThemeColor (const std::string &property) |
| virtual void | onThemeChanged () |
Additional Inherited Members | |
Public Types inherited from aurore::View | |
| typedef std::vector< std::shared_ptr< Action > >::iterator | ActionIterator |
Static Public Member Functions inherited from aurore::View | |
| static void | setHighlightGlide (bool glide) |
| static View * | createFromXMLString (std::string_view xml) |
| static View * | createFromXMLElement (tinyxml2::XMLElement *element) |
| static View * | createFromXMLFile (std::string path) |
| static View * | createFromXMLResource (std::string name) |
| static std::shared_ptr< tinyxml2::XMLDocument > | getXMLCache (std::string_view path) |
| static void | forgetXMLCache (const std::string &path) |
| static std::string | describeXMLError (tinyxml2::XMLDocument *document, const std::string &source="") |
| static std::string | describeXMLLocation (const tinyxml2::XMLElement *element) |
| static void | fatalXML (const std::string &message) |
| static std::string | closestXMLName (const std::string &name, const std::vector< std::string > &known) |
| template<typename T > | |
| static std::string | listXMLValues (const std::unordered_map< std::string, T > &values) |
| An enumeration's values, sorted, for an error message. | |
| static std::string | getStringXMLAttributeValue (std::string value) |
| static std::string | getFilePathXMLAttributeValue (std::string value) |
Public Attributes inherited from aurore::View | |
| Animatable | alpha = 1.0f |
Static Public Attributes inherited from aurore::View | |
| static constexpr float | AUTO = NAN |
A size or position left to the layout (auto in XML). | |
| static std::string | CUSTOM_RESOURCES_PATH |
| static std::string | currentXMLResource |
Protected Member Functions inherited from aurore::View | |
| NVGcolor | a (NVGcolor color) |
| Helper functions to apply this view's alpha to a color. | |
| NVGpaint | a (NVGpaint paint) |
| NVGcolor | RGB (unsigned r, unsigned g, unsigned b) |
| NVGcolor | RGBA (unsigned r, unsigned g, unsigned b, unsigned a) |
| NVGcolor | RGBf (float r, float g, float b) |
| NVGcolor | RGBAf (float r, float g, float b, float a) |
| NVGcolor | shadowColor (NVGcolor color, float opacity) |
| virtual bool | animateHint () |
| virtual AccessibilityRole | getDefaultAccessibilityRole () |
| virtual std::string | getDefaultAccessibilityLabel () |
| virtual std::string | getDefaultAccessibilityValue () |
| virtual bool | getDefaultAccessibilitySelected () |
| bool | transitionStyle (const char *name, const StyleValue &to) |
Protected Attributes inherited from aurore::View | |
| Animatable | collapseState = 1.0f |
| bool | focused = false |
| Activity * | parentActivity = nullptr |
| Box * | parent = nullptr |
| GenericEvent | focusEvent |
| GenericEvent | focusLostEvent |
| YGNode * | ygNode |
| std::string | id = "" |
A progress bar, 12 px high: the well, filled in teal up to set; the fill eases to each new value (at once with the motion off).
| cadran::kit::Bar::Bar | ( | ) |
|
overridevirtual |
Called by frame() to draw the view onscreen. Views should not draw outside of their bounds (they may be clipped if they do so).
Implements aurore::View.
| void cadran::kit::Bar::set | ( | float | fraction | ) |
0..1