/** ****************************************************************************** * 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. * ****************************************************************************** *//* ... */#ifndefCUSTOM_CONTROLS_VIEW_HPP#defineCUSTOM_CONTROLS_VIEW_HPP#include<gui/common/DemoView.hpp>#include<gui/custom_controls_screen/CustomControlsPresenter.hpp>#include<touchgfx/widgets/Image.hpp>#include<touchgfx/widgets/Button.hpp>#include<touchgfx/widgets/TextArea.hpp>#include<touchgfx/mixins/FadeAnimator.hpp>#include<gui/custom_controls_screen/ThreeWayProgressBar.hpp>#include<gui/custom_controls_screen/CircularProgress.hpp>#include<gui/custom_controls_screen/DatePicker.hpp>#include<gui/custom_controls_screen/Gauge.hpp>#include<gui/custom_controls_screen/VerticalSlideMenu.hpp>11 includesclassCustomControlsView:publicDemoView<CustomControlsPresenter>{public:CustomControlsView();virtual~CustomControlsView();virtualvoidsetupScreen();virtualvoidtearDownScreen();virtualvoidhandleTickEvent();virtualvoidscreenSaverMinorTick();public:private:ImagemenuBackground;Imagebackground;ButtonmenuUp;ButtonmenuDown;Callback<CustomControlsView,constAbstractButton&>onButtonPressed;voidbuttonPressedHandler(constAbstractButton&button);VerticalSlideMenuslideMenu;Callback<CustomControlsView,constVerticalSlideMenu&>slideMenuElementSelectedCallback;voidslideMenuElementSelectedHandler(constVerticalSlideMenu&menu);FadeAnimator<TextArea>statusMessage;ThreeWayProgressBarthreeWayProgressBar;Callback<CustomControlsView,constThreeWayProgressBar&>threeWayButtonPressedCallback;voidthreeWayButtonPressedHandler(constThreeWayProgressBar&button);CircularProgresspercentageBar;DatePickerdatePicker;Gaugegauge;// Animation membersenumAnimationState{ANIMATION_THREE_WAY_RUNNING,ANIMATION_GAUGE,NO_ANIMATION...};AnimationStatecurrentAnimationState;intanimationCounter;inttickCounter;// ThreeWayProgressBar animationstaticconstintNUMBER_OF_BARS=3;AnimationStatebarAnimationState[NUMBER_OF_BARS];intanimationDuration[NUMBER_OF_BARS];EasingEquationanimationEquation[NUMBER_OF_BARS];AnimationStategetAnimationState();EasingEquationgetRandomEasingEquation();voidstartThreeWayProgressBarAnimation();voidstopThreeWayProgressBarAnimation();private:...};/* ... */#endif// CUSTOM_CONTROLS_VIEW_HPP