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

Dependents:   F746_SD_GraphicEqualizer_ren0620

Fork of F746_GUI by 不韋 呂

Committer:
MikamiUitOpen
Date:
Sun Apr 03 10:36:27 2016 +0000
Revision:
1:d1655f3c8717
Parent:
0:a2686ef737c2
Child:
2:d2f882d98f0a
2

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MikamiUitOpen 0:a2686ef737c2 1 //-----------------------------------------------------------
MikamiUitOpen 0:a2686ef737c2 2 // Label class -- Header
MikamiUitOpen 0:a2686ef737c2 3 //
MikamiUitOpen 1:d1655f3c8717 4 // 2016/04/03, Copyright (c) 2016 MIKAMI, Naoki
MikamiUitOpen 0:a2686ef737c2 5 //-----------------------------------------------------------
MikamiUitOpen 0:a2686ef737c2 6
MikamiUitOpen 0:a2686ef737c2 7 #ifndef F746_LABEL_HPP
MikamiUitOpen 0:a2686ef737c2 8 #define F746_LABEL_HPP
MikamiUitOpen 0:a2686ef737c2 9
MikamiUitOpen 0:a2686ef737c2 10 #include "GuiBase.hpp"
MikamiUitOpen 0:a2686ef737c2 11
MikamiUitOpen 0:a2686ef737c2 12 namespace Mikami
MikamiUitOpen 0:a2686ef737c2 13 {
MikamiUitOpen 0:a2686ef737c2 14 class Label : public GuiBase
MikamiUitOpen 0:a2686ef737c2 15 {
MikamiUitOpen 0:a2686ef737c2 16 public:
MikamiUitOpen 0:a2686ef737c2 17 enum TextAlignMode { LEFT, CENTER };
MikamiUitOpen 0:a2686ef737c2 18 // Constructor
MikamiUitOpen 0:a2686ef737c2 19 Label(uint16_t x, uint16_t y, const string str,
MikamiUitOpen 0:a2686ef737c2 20 TextAlignMode mode = LEFT,
MikamiUitOpen 0:a2686ef737c2 21 sFONT &fonts = Font12,
MikamiUitOpen 0:a2686ef737c2 22 uint32_t textColor = GuiBase::ENUM_TEXT,
MikamiUitOpen 0:a2686ef737c2 23 uint32_t backColor = GuiBase::ENUM_BACK);
MikamiUitOpen 0:a2686ef737c2 24
MikamiUitOpen 1:d1655f3c8717 25 void Draw()
MikamiUitOpen 1:d1655f3c8717 26 { Draw(STR_, GuiBase::ENUM_TEXT); }
MikamiUitOpen 1:d1655f3c8717 27
MikamiUitOpen 1:d1655f3c8717 28 void Draw(uint32_t textColor)
MikamiUitOpen 1:d1655f3c8717 29 { Draw(STR_, textColor); }
MikamiUitOpen 1:d1655f3c8717 30
MikamiUitOpen 1:d1655f3c8717 31 void Draw(const string str,
MikamiUitOpen 1:d1655f3c8717 32 uint32_t textColor = GuiBase::ENUM_TEXT);
MikamiUitOpen 0:a2686ef737c2 33
MikamiUitOpen 0:a2686ef737c2 34 private:
MikamiUitOpen 0:a2686ef737c2 35 const TextAlignMode MODE_;
MikamiUitOpen 1:d1655f3c8717 36 const string STR_;
MikamiUitOpen 1:d1655f3c8717 37
MikamiUitOpen 0:a2686ef737c2 38 uint8_t length_;
MikamiUitOpen 0:a2686ef737c2 39
MikamiUitOpen 0:a2686ef737c2 40 uint16_t PosX(uint16_t x)
MikamiUitOpen 0:a2686ef737c2 41 { return (MODE_ == LEFT) ?
MikamiUitOpen 0:a2686ef737c2 42 x : x - length_*FONTS_->Width/2; }
MikamiUitOpen 0:a2686ef737c2 43
MikamiUitOpen 0:a2686ef737c2 44 // disallow copy constructor and assignment operator
MikamiUitOpen 0:a2686ef737c2 45 Label(const Label&);
MikamiUitOpen 0:a2686ef737c2 46 Label& operator=(const Label&);
MikamiUitOpen 0:a2686ef737c2 47 };
MikamiUitOpen 0:a2686ef737c2 48 }
MikamiUitOpen 0:a2686ef737c2 49 #endif // F746_LABEL_HPP