JM9 XRCU Board 0.1.3a
Libraries API Reference
Loading...
Searching...
No Matches
PortSelector.h
1#ifndef DSGC_PORTSELECTOR_H
2#define DSGC_PORTSELECTOR_H
3
4#include <Arduino.h>
5#include "Component.h"
6#include "Label.h"
7
8namespace dsgc {
9 #define PORT_COUNT 16
10 class PortSelector : public Component {
11 private:
12 Label portLabels[PORT_COUNT];
13 int selectedIndex;
14
15 void paintAllAsUnselected();
16 void paintSelectedAsUnselected();
17 void paintSelectedOnly();
18 void repaintSelectedOnly();
19
20 public:
21 PortSelector(Adafruit_GFX &graphics);
22
23 virtual void paint() override;
24
25 void setEnabled(int port, bool enabled);
26 bool isEnabled(int port);
27
28 void selectPrevEnabledPort();
29 void selectNextEnabledPort();
30 int getSelectedPort();
31
32 virtual void setBackgroundColor(Color color) override;
33 virtual void setForegroundColor(Color color) override;
34 virtual void setBorderColor(Color color) override;
35 virtual void setDisabledBackgroundColor(Color color) override;
36 virtual void setDisabledForegroundColor(Color color) override;
37 virtual void setDisabledBorderColor(Color color) override;
38 virtual void setFocusedBackgroundColor(Color color) override;
39 virtual void setFocusedForegroundColor(Color color) override;
40 virtual void setFocusedBorderColor(Color color) override;
41
42 };
43}
44
45#endif // #ifndef DSGC_PORTSELECTOR_H
Definition Adafruit_GFX.h:18
The common interface for colors used by DSGC.
Definition Color.h:21
virtual bool isEnabled()
Checks whether this component is enabled.
Definition Component.cpp:69
Definition Label.h:16
virtual void paint() override
Paints this component.
Definition PortSelector.cpp:134