- new GUI lib
[enigma2.git] / lib / gdi / gfbdc.h
1 #ifndef __gfbdc_h
2 #define __gfbdc_h
3
4 #include "fb.h"
5 #include "gpixmap.h"
6 #include "grc.h"
7
8 class gFBDC: public gDC
9 {
10         fbClass *fb;
11         static gFBDC *instance;
12         void exec(gOpcode *opcode);
13         unsigned char ramp[256], rampalpha[256]; // RGB ramp 0..255
14         int brightness, gamma, alpha;
15         void calcRamp();
16         void setPalette();
17         gSurface surface;
18 public:
19         void reloadSettings();
20         void setAlpha(int alpha);
21         void setBrightness(int brightness);
22         void setGamma(int gamma);
23         
24         int getAlpha() { return alpha; }
25         int getBrightness() { return brightness; }
26         int getGamma() { return gamma; }
27         
28         void saveSettings();
29         
30         gFBDC();
31         virtual ~gFBDC();
32         static int getInstance(ePtr<gFBDC> &ptr) { if (!instance) return -1; ptr = instance; return 0; }
33         int islocked() { return fb->islocked(); }
34 };
35
36
37 #endif