Select one of the symbols to view example projects that use it.
 
Outline
#include <gui/easing_equation_screen/EasingEquationInOrOutOrInOut.hpp>
#include <gui/easing_equation_screen/EasingEquationSelector.hpp>
#include <BitmapDatabase.hpp>
#include <texts/TextKeysAndLanguages.hpp>
#include <touchgfx/Color.hpp>
EasingEquationInOrOutOrInOut::EasingEquationInOrOutOrInOut()
EasingEquationInOrOutOrInOut::setInOrOutSelectedCallback(int &)
EasingEquationInOrOutOrInOut::selected(const AbstractButton &)
EasingEquationInOrOutOrInOut::selectFirst()
EasingEquationInOrOutOrInOut::setButtonColors()
Files
loading...
CodeScopeSTM32 Libraries and SamplesTouchGFXGui/gui/src/easing_equation_screen/EasingEquationInOrOutOrInOut.cpp
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
/** ****************************************************************************** * This file is part of the TouchGFX 4.10.0 distribution. * * @attention * * Copyright (c) 2018 STMicroelectronics. * All rights reserved. * * This software is licensed under terms that can be found in the LICENSE file * in the root directory of this software component. * If no LICENSE file comes with this software, it is provided AS-IS. * ****************************************************************************** *//* ... */ #include <gui/easing_equation_screen/EasingEquationInOrOutOrInOut.hpp> #include <gui/easing_equation_screen/EasingEquationSelector.hpp> #include <BitmapDatabase.hpp> #include <texts/TextKeysAndLanguages.hpp> #include <touchgfx/Color.hpp> 5 includes EasingEquationInOrOutOrInOut::EasingEquationInOrOutOrInOut() : onSelected(this, &EasingEquationInOrOutOrInOut::selected), inOrOutSelectedCallback(0) { // Only the text id is used in this group. EasingEquationSelection selections[] = { { EasingEquations::linearEaseNone, EasingEquations::linearEaseNone, EasingEquations::linearEaseNone, T_EASING_EQUATION_EASE_IN, T_EASING_EQUATION_EASE_IN }, { EasingEquations::linearEaseNone, EasingEquations::linearEaseNone, EasingEquations::linearEaseNone, T_EASING_EQUATION_EASE_OUT, T_EASING_EQUATION_EASE_OUT }, { EasingEquations::linearEaseNone, EasingEquations::linearEaseNone, EasingEquations::linearEaseNone, T_EASING_EQUATION_EASE_INOUT, T_EASING_EQUATION_EASE_INOUT } ...}; in.setup(selections[0], Bitmap(BITMAP_EASING_BOTTOM_MENU_ID), Bitmap(BITMAP_EASING_BOTTOM_MENU_ACTIVE_ID), Bitmap(BITMAP_EASING_BOTTOM_MENU_SELECTED_ID), Bitmap(BITMAP_EASING_BOTTOM_MENU_ACTIVE_ID)); in.setXY(0, 0); in.setTextShadowVisible(false); out.setup(selections[1], Bitmap(BITMAP_EASING_BOTTOM_MENU_ID), Bitmap(BITMAP_EASING_BOTTOM_MENU_ACTIVE_ID), Bitmap(BITMAP_EASING_BOTTOM_MENU_SELECTED_ID), Bitmap(BITMAP_EASING_BOTTOM_MENU_ACTIVE_ID)); out.setXY(in.getRect().right(), 0); out.setTextShadowVisible(false); inOut.setup(selections[2], Bitmap(BITMAP_EASING_BOTTOM_MENU_ID), Bitmap(BITMAP_EASING_BOTTOM_MENU_ACTIVE_ID), Bitmap(BITMAP_EASING_BOTTOM_MENU_SELECTED_ID), Bitmap(BITMAP_EASING_BOTTOM_MENU_ACTIVE_ID)); inOut.setXY(out.getRect().right(), 0); inOut.setTextShadowVisible(false); buttons.setRadioButtonSelectedHandler(onSelected); buttons.add(in.getRadioButton()); buttons.add(out.getRadioButton()); buttons.add(inOut.getRadioButton()); add(in); add(out); add(inOut); setWidth(inOut.getRect().right()); setHeight(in.getHeight()); setButtonColors(); }{ ... } void EasingEquationInOrOutOrInOut::setInOrOutSelectedCallback(GenericCallback<EasingEquationsInOrOut>& callback) { inOrOutSelectedCallback = &callback; }{ ... } void EasingEquationInOrOutOrInOut::selected(const AbstractButton& btn) { EasingEquationsInOrOut inOrOut = (&btn == &(in.getRadioButton())) ? EASING_EQUATION_IN : (&btn == &(out.getRadioButton())) ? EASING_EQUATION_OUT : EASING_EQUATION_IN_OUT; setButtonColors(); if (inOrOutSelectedCallback && inOrOutSelectedCallback->isValid()) { inOrOutSelectedCallback->execute(inOrOut); }if (inOrOutSelectedCallback && inOrOutSelectedCallback->isValid()) { ... } }{ ... } void EasingEquationInOrOutOrInOut::selectFirst() { buttons.setSelected(in.getRadioButton()); }{ ... } void EasingEquationInOrOutOrInOut::setButtonColors() { int selected = buttons.getSelectedRadioButtonIndex(); in.setTextColor(Color::getColorFrom24BitRGB(0x9D, 0xC9, 0xD1), 0); out.setTextColor(Color::getColorFrom24BitRGB(0x9D, 0xC9, 0xD1), 0); inOut.setTextColor(Color::getColorFrom24BitRGB(0x9D, 0xC9, 0xD1), 0); switch (selected) { case 0: in.setTextColor(Color::getColorFrom24BitRGB(0xFF, 0x61, 0x14), 0); break;case 0: case 1: out.setTextColor(Color::getColorFrom24BitRGB(0xFF, 0x61, 0x14), 0); break;case 1: case 2: inOut.setTextColor(Color::getColorFrom24BitRGB(0xFF, 0x61, 0x14), 0); break;case 2: default: break;default }switch (selected) { ... } }{ ... }