X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fdrv%2Flcd_gfx_qt.h;h=c74b7883d9ae42543e9b5d728d779e094a6fb0da;hb=780f975602d282f0d2599e6601d7fee29d493762;hp=9101db52793ea5317231e6ea86393cac9dbb8f45;hpb=4cc44c9888a0336b9d01121ec0b7ad95f4a76195;p=bertos.git diff --git a/bertos/drv/lcd_gfx_qt.h b/bertos/drv/lcd_gfx_qt.h index 9101db52..c74b7883 100644 --- a/bertos/drv/lcd_gfx_qt.h +++ b/bertos/drv/lcd_gfx_qt.h @@ -26,36 +26,16 @@ * invalidate any other reasons why the executable file might be covered by * the GNU General Public License. * - * Copyright 2006 Develer S.r.l. (http://www.develer.com/) + * Copyright 2006, 2008 Develer S.r.l. (http://www.develer.com/) * All Rights Reserved. * --> * * \version $Id$ - * * \author Bernie Innocenti * * \brief Custom control for graphics LCD emulation (interface) */ -/*#* - *#* $Log$ - *#* Revision 1.5 2006/05/28 12:17:57 bernie - *#* Drop almost all the Qt3 cruft. - *#* - *#* Revision 1.4 2006/02/20 02:00:40 bernie - *#* Port to Qt 4.1. - *#* - *#* Revision 1.3 2006/02/15 09:13:16 bernie - *#* Switch to BITMAP_FMT_PLANAR_V_LSB. - *#* - *#* Revision 1.2 2006/02/10 12:33:51 bernie - *#* Make emulator display a bit larger. - *#* - *#* Revision 1.1 2006/01/16 03:51:35 bernie - *#* Add LCD Qt emulator. - *#* - *#*/ - #ifndef DRV_LCD_GFX_QT_H #define DRV_LCD_GFX_QT_H @@ -67,6 +47,7 @@ class QSizePolicy; class QPaintEvent; class QResizeEvent; +#define CONFIG_EMULLCD_SCALE 1 class EmulLCD : public QFrame { @@ -77,15 +58,17 @@ public: enum { WIDTH = 128, HEIGHT = 64 }; // Construction - EmulLCD(QWidget *parent = 0, const char *name = 0); + EmulLCD(QWidget *parent = 0); virtual ~EmulLCD(); // Base class overrides protected: - virtual QSizePolicy sizePolicy() const; - virtual QSize sizeHint() const; virtual void paintEvent(QPaintEvent *event); + #if CONFIG_EMULLCD_SCALE + virtual int heightForWidth(int w) const; + #endif + // Operations public: void writeRaster(uint8_t *raster); @@ -95,11 +78,12 @@ protected: /// Frame thickness int frame_width; - /// LCD colors - QColor fg_color, bg_color; + /// Brushes for painting the LCD + QColor fg_color; + QBrush bg_brush; /// Pixel storage - unsigned char raster[(WIDTH * HEIGHT) / 8]; + unsigned char raster[(WIDTH + 7 / 8) * HEIGHT]; }; #endif // DRV_LCD_GFX_QT_H