git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix possible segfault (on refcount wrap)
[enigma2.git]
/
lib
/
gdi
/
gpixmap.h
diff --git
a/lib/gdi/gpixmap.h
b/lib/gdi/gpixmap.h
index bd53716441d2f6d49b60510a6b61ed6d5458ad0b..7158e26989b6e72c1eba4cb7911f7de4468d9695 100644
(file)
--- a/
lib/gdi/gpixmap.h
+++ b/
lib/gdi/gpixmap.h
@@
-8,6
+8,7
@@
#include <lib/base/elock.h>
#include <lib/gdi/erect.h>
#include <lib/gdi/fb.h>
#include <lib/base/elock.h>
#include <lib/gdi/erect.h>
#include <lib/gdi/fb.h>
+#include <lib/gdi/region.h>
struct gColor
{
struct gColor
{
@@
-34,6
+35,12
@@
struct gRGB
gRGB(): b(0), g(0), r(0), a(0)
{
}
gRGB(): b(0), g(0), r(0), a(0)
{
}
+
+ unsigned long argb() const
+ {
+ return (a<<24)|(r<<16)|(g<<8)|b;
+ }
+
void operator=(unsigned long val)
{
b = val&0xFF;
void operator=(unsigned long val)
{
b = val&0xFF;
@@
-122,11
+129,12
@@
public:
virtual ~gPixmap();
eSize size() const { return eSize(surface->x, surface->y); }
virtual ~gPixmap();
eSize size() const { return eSize(surface->x, surface->y); }
-
+ inline bool needClut() const { return surface && surface->bpp <= 8; }
private:
#ifndef SWIG
friend class gDC;
void fill(const gRegion &clip, const gColor &color);
private:
#ifndef SWIG
friend class gDC;
void fill(const gRegion &clip, const gColor &color);
+ void fill(const gRegion &clip, const gRGB &color);
void blit(const gPixmap &src, ePoint pos, const gRegion &clip, int flags=0);
void blit(const gPixmap &src, ePoint pos, const gRegion &clip, int flags=0);