mirror of
https://github.com/jscrane/r65emu.git
synced 2025-01-02 13:30:53 +00:00
centering display (#16)
This commit is contained in:
parent
28f23d2aad
commit
f4dbc8ae26
15
display.cpp
15
display.cpp
@ -55,9 +55,18 @@ static inline void setColor(colour_t c) {
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void Display::begin(unsigned bg, unsigned fg, orientation_t orient) {
|
void Display::begin(colour_t bg, colour_t fg, orientation_t orient, unsigned dispx, unsigned dispy) {
|
||||||
|
begin(bg, fg, orient);
|
||||||
|
_xoff = (_dx - dispx) / 2;
|
||||||
|
_yoff = (_dy - dispy) / 2;
|
||||||
|
_dx -= _xoff;
|
||||||
|
_dy -= _yoff;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Display::begin(colour_t bg, colour_t fg, orientation_t orient) {
|
||||||
_bg = bg;
|
_bg = bg;
|
||||||
_fg = fg;
|
_fg = fg;
|
||||||
|
_xoff = _yoff = 0;
|
||||||
|
|
||||||
#if defined(USE_UTFT)
|
#if defined(USE_UTFT)
|
||||||
utft.InitLCD(orient);
|
utft.InitLCD(orient);
|
||||||
@ -131,6 +140,8 @@ void Display::status(const char *s) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void Display::drawPixel(unsigned x, unsigned y, colour_t col) {
|
void Display::drawPixel(unsigned x, unsigned y, colour_t col) {
|
||||||
|
x += _xoff;
|
||||||
|
y += _yoff;
|
||||||
#if defined(USE_UTFT)
|
#if defined(USE_UTFT)
|
||||||
utft.setColor(col);
|
utft.setColor(col);
|
||||||
utft.drawPixel(x, y);
|
utft.drawPixel(x, y);
|
||||||
@ -142,6 +153,8 @@ void Display::drawPixel(unsigned x, unsigned y, colour_t col) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void Display::drawString(const char *s, unsigned x, unsigned y) {
|
void Display::drawString(const char *s, unsigned x, unsigned y) {
|
||||||
|
x += _xoff;
|
||||||
|
y += _yoff;
|
||||||
#if defined(USE_UTFT)
|
#if defined(USE_UTFT)
|
||||||
utft.print(s, x, y);
|
utft.print(s, x, y);
|
||||||
#elif defined(USE_ESPI)
|
#elif defined(USE_ESPI)
|
||||||
|
@ -29,7 +29,9 @@ const colour_t PINK = 0xFC9F;
|
|||||||
|
|
||||||
class Display {
|
class Display {
|
||||||
public:
|
public:
|
||||||
void begin(colour_t bg, colour_t fg, orientation_t o = landscape);
|
void begin(colour_t bg, colour_t fg, orientation_t o);
|
||||||
|
void begin(colour_t bg, colour_t fg, orientation_t o, unsigned dispx, unsigned dispy);
|
||||||
|
|
||||||
void clear();
|
void clear();
|
||||||
void status(const char *s);
|
void status(const char *s);
|
||||||
|
|
||||||
@ -37,7 +39,7 @@ public:
|
|||||||
void drawString(const char *s, unsigned x, unsigned y);
|
void drawString(const char *s, unsigned x, unsigned y);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
unsigned _bg, _fg, _cx, _cy, _dx, _dy, _oxs;
|
unsigned _bg, _fg, _cx, _cy, _dx, _dy, _oxs, _xoff, _yoff;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user