Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: F746_SD_GraphicEqualizer_ren0620
Fork of F746_GUI by
SeekBarGroup.hpp@10:5a2068884fd9, 2016-04-27 (annotated)
- Committer:
- MikamiUitOpen
- Date:
- Wed Apr 27 00:24:18 2016 +0000
- Revision:
- 10:5a2068884fd9
- Parent:
- 9:c379410bda15
11
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| MikamiUitOpen | 9:c379410bda15 | 1 | //----------------------------------------------------------- |
| MikamiUitOpen | 9:c379410bda15 | 2 | // SeekBarGroup class -- Header |
| MikamiUitOpen | 9:c379410bda15 | 3 | // |
| MikamiUitOpen | 10:5a2068884fd9 | 4 | // 2016/04/26, Copyright (c) 2016 MIKAMI, Naoki |
| MikamiUitOpen | 9:c379410bda15 | 5 | //----------------------------------------------------------- |
| MikamiUitOpen | 9:c379410bda15 | 6 | |
| MikamiUitOpen | 9:c379410bda15 | 7 | #ifndef F746_SEEKBAR_GROUP_HPP |
| MikamiUitOpen | 9:c379410bda15 | 8 | #define F746_SEEKBAR_GROUP_HPP |
| MikamiUitOpen | 9:c379410bda15 | 9 | |
| MikamiUitOpen | 9:c379410bda15 | 10 | #include "SeekBar.hpp" |
| MikamiUitOpen | 9:c379410bda15 | 11 | |
| MikamiUitOpen | 9:c379410bda15 | 12 | namespace Mikami |
| MikamiUitOpen | 9:c379410bda15 | 13 | { |
| MikamiUitOpen | 9:c379410bda15 | 14 | class SeekbarGroup : public GuiBase |
| MikamiUitOpen | 9:c379410bda15 | 15 | { |
| MikamiUitOpen | 9:c379410bda15 | 16 | public: |
| MikamiUitOpen | 9:c379410bda15 | 17 | SeekbarGroup(uint16_t x0, uint16_t y0, uint16_t length, |
| MikamiUitOpen | 9:c379410bda15 | 18 | uint16_t number, uint16_t space, |
| MikamiUitOpen | 9:c379410bda15 | 19 | float min, float max, float initialValue, |
| MikamiUitOpen | 9:c379410bda15 | 20 | SeekBar::Orientation hv = SeekBar::Holizontal, |
| MikamiUitOpen | 9:c379410bda15 | 21 | uint32_t thumbColor = LCD_COLOR_WHITE, |
| MikamiUitOpen | 9:c379410bda15 | 22 | uint16_t thumbSize = 30, uint16_t width = 4, |
| MikamiUitOpen | 9:c379410bda15 | 23 | uint32_t colorL = LCD_COLOR_LIGHTGRAY, |
| MikamiUitOpen | 9:c379410bda15 | 24 | uint32_t colorH = 0xFFB0B0B0, |
| MikamiUitOpen | 9:c379410bda15 | 25 | uint32_t backColor = GuiBase::ENUM_BACK); |
| MikamiUitOpen | 9:c379410bda15 | 26 | |
| MikamiUitOpen | 9:c379410bda15 | 27 | ~SeekbarGroup(); |
| MikamiUitOpen | 9:c379410bda15 | 28 | |
| MikamiUitOpen | 9:c379410bda15 | 29 | bool Slide(int num) { return seekBars_[num]->Slide(); } |
| MikamiUitOpen | 9:c379410bda15 | 30 | float GetValue(int num) { return seekBars_[num]->GetValue(); } |
| MikamiUitOpen | 9:c379410bda15 | 31 | int GetIntValue(int num) { return seekBars_[num]->Round(seekBars_[num]->GetIntValue()); } |
| MikamiUitOpen | 9:c379410bda15 | 32 | |
| MikamiUitOpen | 9:c379410bda15 | 33 | // Get slided number |
| MikamiUitOpen | 9:c379410bda15 | 34 | bool GetSlidedNumber(int &num); |
| MikamiUitOpen | 9:c379410bda15 | 35 | |
| MikamiUitOpen | 9:c379410bda15 | 36 | void Draw(int num, float value, bool fill = false) |
| MikamiUitOpen | 9:c379410bda15 | 37 | { seekBars_[num]->Draw(value, fill); } |
| MikamiUitOpen | 9:c379410bda15 | 38 | |
| MikamiUitOpen | 10:5a2068884fd9 | 39 | void Redraw(int num, bool fill = false) |
| MikamiUitOpen | 10:5a2068884fd9 | 40 | { seekBars_[num]->Draw(seekBars_[num]->GetValue(), fill); } |
| MikamiUitOpen | 10:5a2068884fd9 | 41 | |
| MikamiUitOpen | 10:5a2068884fd9 | 42 | void RedrawAll(bool fill = false) |
| MikamiUitOpen | 10:5a2068884fd9 | 43 | { for (int n=0; n<numberOfSeekBar_; n++) Redraw(n, fill); } |
| MikamiUitOpen | 9:c379410bda15 | 44 | |
| MikamiUitOpen | 9:c379410bda15 | 45 | // Activate and inactivate |
| MikamiUitOpen | 9:c379410bda15 | 46 | void Activate(int num) { seekBars_[num]->Activate(); } |
| MikamiUitOpen | 9:c379410bda15 | 47 | void Inactivate(int num) { seekBars_[num]->Inactivate(); } |
| MikamiUitOpen | 9:c379410bda15 | 48 | void ActivateAll() |
| MikamiUitOpen | 9:c379410bda15 | 49 | { |
| MikamiUitOpen | 9:c379410bda15 | 50 | for (int n=0; n<numberOfSeekBar_; n++) |
| MikamiUitOpen | 9:c379410bda15 | 51 | seekBars_[n]->Activate(); |
| MikamiUitOpen | 9:c379410bda15 | 52 | } |
| MikamiUitOpen | 9:c379410bda15 | 53 | void InactivateAll() |
| MikamiUitOpen | 9:c379410bda15 | 54 | { |
| MikamiUitOpen | 9:c379410bda15 | 55 | for (int n=0; n<numberOfSeekBar_; n++) |
| MikamiUitOpen | 9:c379410bda15 | 56 | seekBars_[n]->Inactivate(); |
| MikamiUitOpen | 9:c379410bda15 | 57 | } |
| MikamiUitOpen | 9:c379410bda15 | 58 | |
| MikamiUitOpen | 9:c379410bda15 | 59 | private: |
| MikamiUitOpen | 9:c379410bda15 | 60 | SeekBar **seekBars_; |
| MikamiUitOpen | 9:c379410bda15 | 61 | int numberOfSeekBar_; |
| MikamiUitOpen | 9:c379410bda15 | 62 | |
| MikamiUitOpen | 9:c379410bda15 | 63 | // Check range of argument |
| MikamiUitOpen | 9:c379410bda15 | 64 | bool Range(int n) |
| MikamiUitOpen | 9:c379410bda15 | 65 | { return ((n >= 0) && (n < numberOfSeekBar_)); } |
| MikamiUitOpen | 9:c379410bda15 | 66 | |
| MikamiUitOpen | 9:c379410bda15 | 67 | // disallow copy constructor and assignment operator |
| MikamiUitOpen | 9:c379410bda15 | 68 | SeekbarGroup(const SeekbarGroup&); |
| MikamiUitOpen | 9:c379410bda15 | 69 | SeekbarGroup& operator=(const SeekbarGroup&); |
| MikamiUitOpen | 9:c379410bda15 | 70 | }; |
| MikamiUitOpen | 9:c379410bda15 | 71 | } |
| MikamiUitOpen | 9:c379410bda15 | 72 | #endif // F746_SEEKBAR_GROUP_HPP |
