X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fgdi%2Fgfbdc.h;h=23051c4f7207fc351142214c937a86147d06f410;hp=0b0372d3222a0be697efeac068079ebe9a6880fa;hb=c4a55fbb1dbb22ccd43bfd92f1ec9df4f811310f;hpb=d6f6602d7cea3a7899990fe79216af7d98d05917 diff --git a/lib/gdi/gfbdc.h b/lib/gdi/gfbdc.h index 0b0372d..23051c4 100644 --- a/lib/gdi/gfbdc.h +++ b/lib/gdi/gfbdc.h @@ -5,8 +5,12 @@ #include "gpixmap.h" #include "grc.h" +class gFBDC; + +SWIG_IGNORE(gFBDC); class gFBDC: public gDC { +#ifndef SWIG fbClass *fb; static gFBDC *instance; void exec(gOpcode *opcode); @@ -14,24 +18,42 @@ class gFBDC: public gDC int brightness, gamma, alpha; void calcRamp(); void setPalette(); - gSurface surface; + gSurface surface, surface_back; + int m_enable_double_buffering; + int m_xres, m_yres; +#else + gFBDC(); + virtual ~gFBDC(); +#endif public: + void setResolution(int xres, int yres); +#ifndef SWIG void reloadSettings(); void setAlpha(int alpha); void setBrightness(int brightness); void setGamma(int gamma); - + int getAlpha() { return alpha; } int getBrightness() { return brightness; } int getGamma() { return gamma; } - + + int haveDoubleBuffering() { return m_enable_double_buffering; } + void saveSettings(); - + gFBDC(); - ~gFBDC(); - static gFBDC *getInstance(); + virtual ~gFBDC(); + static int getInstance(ePtr &ptr) { if (!instance) return -1; ptr = instance; return 0; } int islocked() { return fb->islocked(); } +#endif }; - +SWIG_TEMPLATE_TYPEDEF(ePtr, gFBDC); +SWIG_EXTEND(ePtr, + static ePtr getInstance() + { + extern ePtr NewgFBDCPtr(void); + return NewgFBDCPtr(); + } +); #endif