|
| DsSwitch (DsView *parent, const DsPoint &pos, const DsSize &size, bool inverted=false) |
| Creates a DsSwitch object.
|
|
void | setText (const char *text_on, DsColor color_on, const char *text_off, DsColor color_off, const ds_bitmap_font_t *font) |
| Sets the text for both ON/OFF states.
|
|
void | setTrackBorderThickness (uint8_t thickness) |
| Sets the track border thickness.
|
|
void | setTrackProportion (float proportion) |
| Sets proportion of the track width versus the knob diameter.
|
|
void | setKnobBorderThickness (uint8_t thickness) |
| Sets the knob border thickness.
|
|
void | setSwitchTrackColors (DsColor track_border_on_color, DsColor track_on_color, DsColor track_border_off_color, DsColor track_off_color) |
| Sets the switch track colors.
|
|
void | setSwitchKnobColors (DsColor knob_border_on_color, DsColor knob_on_color, DsColor knob_border_off_color, DsColor knob_off_color) |
| Sets the switch knob colors.
|
|
| DsView (DsView *parent, const DsPoint &pos=DsPoint(), const DsSize &size=DsSize()) |
| Creates a DsView with an optional position and size.
|
|
| DsView (DsView *parent, DsOrientation layout_orientation) |
| Creates a DsView with the auto-layout mode active. This view can align it's children automatically.
|
|
void | addChild (DsView *view) |
| Adds a child to the current DsView.
|
|
void | removeChild (DsView *view) |
| Removes a child to the current DsView.
|
|
void | removeAllChildren (void) |
| Removes all children of the current DsView.
|
|
void | bringFront (void) |
| Brings the current view to the top of the drawing order.
|
|
void | sendBack (void) |
| Sends the current view to the bottom of the drawing order.
|
|
DsView * | getParent (void) const |
| Returns the parent of the current view.
|
|
void | setParent (DsView *parent) |
| Sets a new parent to the view.
|
|
const DsPoint & | getPosition (void) const |
| Returns the position of the view in parent coordinates.
|
|
DsFPoint | getCenterPoint (void) const |
| Returns the center point of the view in current coordinates.
|
|
DsPoint | translatePositionInParentCoordinates (const DsView *parent, DsPoint pos) const |
| Translates position (x, y) in parent coordinate system.
|
|
DsPoint | translatePositionInParentCoordinates (uint32_t parent_level, DsPoint pos) const |
| Translates position (x, y) in parent coordinate system.
|
|
DsPoint | getPositionInParentCoordinates (const DsView *parent) const |
| Returns the position in the parent's coordinate system.
|
|
void | setPosition (const DsPoint &pos) |
| Sets the position of the view in parent coordinates.
|
|
void | setCenterPosition (const DsPoint &pos) |
| Sets the position of the center of the view in parent coordinates.
|
|
void | centerVertically (DsView *view) |
| Aligns vertically the center of the current view with the center of another view.
|
|
void | centerHorizontally (DsView *view) |
| Aligns horizontally the center of the current view with the center of another view.
|
|
const DsSize & | getParentSize (void) const |
| Returns the size of the parent view.
|
|
const DsSize & | getSize (void) const |
| Returns the size of the view.
|
|
void | setMinimumSize (const DsSize &size) |
| Returns the minimum size of the view.
|
|
void | setSize (const DsSize &size) |
| Sets the size of the view.
|
|
void | setWidth (int32_t width) |
| Sets the width of the view.
|
|
void | setHeight (int32_t height) |
| Sets the height of the view.
|
|
DsRect | getRegion (void) const |
| Returns a rectangle describing the space occupied by the current view in it's own coordinate system (X and Y coordinates are 0).
|
|
DsRect | getRegionInParentCoordinates (const DsView *parent) const |
| Returns a rectangle describing the space occupied by the current view in the parent's coordinate system.
|
|
void | alignInParent (void) |
| Aligns the view relative to it's parent.
|
|
void | alignInParent (const DsAlignment &alignment, int32_t padding_top, int32_t padding_left, int32_t padding_bottom, int32_t padding_right) |
| Aligns the view relative to it's parent.
|
|
DsView * | setPaddingTop (int16_t padding, uint16_t proportion=0) |
| Sets the top padding used by the auto-layout.
|
|
DsView * | setPaddingBottom (int16_t padding, uint16_t proportion=0) |
| Sets the bottom padding used by the auto-layout.
|
|
DsView * | setPaddingLeft (int32_t padding, uint16_t proportion=0) |
| Sets the left padding used by the auto-layout.
|
|
DsView * | setPaddingRight (int16_t padding, uint16_t proportion=0) |
| Sets the right padding used by the auto-layout.
|
|
DsView * | setPadding (int16_t padding, uint16_t proportion=0) |
| Sets the padding used by the auto-layout.
|
|
DsView * | setPaddingHorizontal (int16_t padding, uint16_t proportion=0) |
| Sets the horizontal padding used by the auto-layout.
|
|
DsView * | setPaddingVertical (int16_t padding, uint16_t proportion=0) |
| Sets the vertical padding used by the auto-layout.
|
|
DsView * | setProportion (uint32_t proportion) |
| Sets the view proportion used by the auto-layout.
|
|
DsAlignment | getParentAlignment (void) const |
| Returns parent alignment mode of the view.
|
|
DsView * | setParentAlignment (const DsAlignment &alignment) |
| Sets parent alignment mode of the view.
|
|
void | reserveSpace (bool state) |
| Configures if during auto-layout the view will reserve space even if it's hidden.
|
|
void | setAutoLayout (DsOrientation orientation, bool enable) |
| Enables or disables the auto-layout mode and sets the primary orientation.
|
|
virtual DsSize | fitContent (void) |
| Calculates the minimum size required by the view.
|
|
void | doLayout (void) |
| Runs the auto-layout algorithm.
|
|
void | setBackgroundColor (DsColor color) |
| Sets the background color of the view.
|
|
void | setBackgroundImage (const DsSurface *surface) |
| Sets the background image.
|
|
void | setPanelColor (DsColor color) |
| Sets the color of the panel.
|
|
void | setPanelBorderColor (DsColor color) |
| Sets the color of the panel border.
|
|
void | setPanelCornerRadius (uint16_t radius) |
| Sets the radius of the panel corners.
|
|
void | setPanelBorderThickness (uint8_t thickness) |
| Sets the thickness of the panel border.
|
|
DsScreen & | getScreen (void) |
| Returns a reference to the screen to which this view belongs.
|
|
bool | isFocused (void) |
| Is the view focused?
|
|
bool | getIsVisible (void) const |
| Is the view visibility enabled?
|
|
bool | isVisible (void) const |
| Is the view actually visible on the screen?
|
|
bool | isParentVisible (void) const |
| Is the parent view actually visible on the screen?
|
|
bool | show (void) |
| Shortcut to setVisible(true).
|
|
bool | hide (void) |
| Shortcut to setVisible(false).
|
|
bool | setVisible (bool is_visible) |
| Changes the visibility of the view.
|
|
virtual void | onShow (void) |
| This virtual method is called when the view becomes visible on the screen.
|
|
virtual void | onHide (void) |
| This virtual method is called when the view becomes invisible (hidden) on the screen.
|
|
void | enable (bool state) |
| Enables or disables the view.
|
|
bool | isEnabled (void) const |
| Is the view enabled?
|
|
void | enableTouch (bool state) |
| Enables or disables processing of touch events.
|
|
bool | isTouchEnabled (void) const |
| Is the view enabled to process touch events?
|
|
void | sendTap (DsPoint pos) |
| Sends a tap event to the view.
|
|
void | setOnTapCallback (const lambda< void(const DsPoint &p)> &cb) |
| Sets the lambda to be executed when the user taps on the view.
|
|
void | setOnLongTapCallback (const lambda< void(const DsPoint &p)> &cb) |
| Sets the lambda to be executed when the user taps the view and holds for a specific time (set with setLongTapDetection()).
|
|
void | setOnTouchActiveCallback (const lambda< void(const DsPoint &p)> &cb) |
| Sets the lambda to be executed when the user touches the view.
|
|
void | setOnTouchReleaseCallback (const lambda< void(void)> &cb) |
| Sets the lambda to be executed when the user touch is released.
|
|
void | setLongTapDetection (uint32_t delay_ms) |
| Configures the long tap detection.
|
|
bool | isInputInside (void) const |
| Returns if there is user input (touch) inside the view.
|
|
const DsPoint & | getTouchPosition (void) const |
| Returns the location of the user touch input inside the view.
|
|
void | enableHorizontalScroll (bool state) |
| Enables or disables the horizontal scroll of the view contents.
|
|
void | enableVerticalScroll (bool state) |
| Enables or disables the vertical scroll of the view contents.
|
|
void | setScrollbarColor (DsColor color) |
| Configure the color of the scroll bars.
|
|
virtual void | invalidate (void) |
| Invalidates the view.
|
|
virtual void | invalidateRegion (DsRect region) |
| Invalidates only a region of the view.
|
|
void | addStateObserver (StateObserver *observer) |
| Adds a state observer object.
|
|
void | removeStateObserver (StateObserver *observer) |
| Removes a state observer object.
|
|
void | setSelection (int32_t selection) |
| Sets the selection value.
|
|
int32_t | getSelection (void) const |
| Returns the selection value.
|
|
void | setOnChangeCallback (const lambda< void(int32_t selection, bool in_motion, bool user_input)> &cb) |
|
DsSwitch is a class that represents an ON/OFF switch view.
The switch can be in either vertical or horizontal orientation. It consists of a knob with diameter equal to the smallest of the width/height and a track that spans the length of the switch (the size in the orientation dimension). The track is specified as a proportion of the knob diameter. Both the knob and the track can have a border of a different color. Touching the switch will cycle its state ON/OFF.