GUI parts for DISCO-F746NG. GuiBase, Button, ButtonGroup, Label, BlinkLabel, NumericLabel, SeekBar, SeekbarGroup

Dependents:   F746_SD_GraphicEqualizer_ren0620

Fork of F746_GUI by 不韋 呂

Committer:
edamame22
Date:
Wed Jun 22 03:49:51 2016 +0000
Revision:
14:95544440b46c
Parent:
7:3813be1ca81d
push area extended.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MikamiUitOpen 0:a2686ef737c2 1 //-----------------------------------------------------------
MikamiUitOpen 0:a2686ef737c2 2 // NumericLabel class -- derived class of Label class
MikamiUitOpen 0:a2686ef737c2 3 //
MikamiUitOpen 7:3813be1ca81d 4 // 2016/04/12, Copyright (c) 2016 MIKAMI, Naoki
MikamiUitOpen 0:a2686ef737c2 5 //-----------------------------------------------------------
MikamiUitOpen 0:a2686ef737c2 6
MikamiUitOpen 0:a2686ef737c2 7 #ifndef F746_NUMERIC_LABEL_HPP
MikamiUitOpen 0:a2686ef737c2 8 #define F746_NUMERIC_LABEL_HPP
MikamiUitOpen 0:a2686ef737c2 9
MikamiUitOpen 0:a2686ef737c2 10 #include "Label.hpp"
MikamiUitOpen 0:a2686ef737c2 11
MikamiUitOpen 0:a2686ef737c2 12 namespace Mikami
MikamiUitOpen 0:a2686ef737c2 13 {
MikamiUitOpen 0:a2686ef737c2 14 template <typename T> class NumericLabel : public Label
MikamiUitOpen 0:a2686ef737c2 15 {
MikamiUitOpen 0:a2686ef737c2 16 public:
MikamiUitOpen 0:a2686ef737c2 17 // Constructor without drawing value
MikamiUitOpen 0:a2686ef737c2 18 NumericLabel(uint16_t x, uint16_t y,
MikamiUitOpen 4:cbf7ed9092a3 19 TextAlignMode mode = LEFT,
MikamiUitOpen 0:a2686ef737c2 20 sFONT &fonts = Font12,
MikamiUitOpen 0:a2686ef737c2 21 uint32_t textColor = GuiBase::ENUM_TEXT,
MikamiUitOpen 0:a2686ef737c2 22 uint32_t backColor = GuiBase::ENUM_BACK)
MikamiUitOpen 0:a2686ef737c2 23 : Label(x, y, "", mode, fonts, textColor, backColor) {}
MikamiUitOpen 0:a2686ef737c2 24
MikamiUitOpen 0:a2686ef737c2 25 // Constructor with drawing value
MikamiUitOpen 0:a2686ef737c2 26 NumericLabel(uint16_t x, uint16_t y,
MikamiUitOpen 0:a2686ef737c2 27 const char fmt[], T val,
MikamiUitOpen 4:cbf7ed9092a3 28 TextAlignMode mode = LEFT,
MikamiUitOpen 0:a2686ef737c2 29 sFONT &fonts = Font12,
MikamiUitOpen 0:a2686ef737c2 30 uint32_t textColor = GuiBase::ENUM_TEXT,
MikamiUitOpen 0:a2686ef737c2 31 uint32_t backColor = GuiBase::ENUM_BACK)
MikamiUitOpen 0:a2686ef737c2 32 : Label(x, y, "", mode, fonts, textColor, backColor)
MikamiUitOpen 0:a2686ef737c2 33 { Draw(fmt, val); }
MikamiUitOpen 0:a2686ef737c2 34
MikamiUitOpen 0:a2686ef737c2 35 // Draw value
MikamiUitOpen 0:a2686ef737c2 36 void Draw(const char fmt[], T val)
MikamiUitOpen 0:a2686ef737c2 37 {
MikamiUitOpen 7:3813be1ca81d 38 sprintf(str_, fmt, val);
MikamiUitOpen 7:3813be1ca81d 39 Label::Draw(str_);
MikamiUitOpen 0:a2686ef737c2 40 }
MikamiUitOpen 0:a2686ef737c2 41
MikamiUitOpen 7:3813be1ca81d 42 // Draw previous value with specified color
MikamiUitOpen 7:3813be1ca81d 43 void Draw(uint32_t color)
MikamiUitOpen 7:3813be1ca81d 44 { Label::Draw(str_, color); }
MikamiUitOpen 7:3813be1ca81d 45
MikamiUitOpen 0:a2686ef737c2 46 private:
MikamiUitOpen 7:3813be1ca81d 47 char str_[81];
MikamiUitOpen 7:3813be1ca81d 48
MikamiUitOpen 0:a2686ef737c2 49 // disallow copy constructor and assignment operator
MikamiUitOpen 0:a2686ef737c2 50 NumericLabel(const NumericLabel&);
MikamiUitOpen 0:a2686ef737c2 51 NumericLabel& operator=(const NumericLabel&);
MikamiUitOpen 0:a2686ef737c2 52 };
MikamiUitOpen 0:a2686ef737c2 53 }
MikamiUitOpen 0:a2686ef737c2 54 #endif // F746_NUMERIC_LABEL_HPP