Merge branch 'bug_236_recordpath'
[enigma2.git] / lib / gui / ewindowstyleskinned.h
index 79557386ee2e1f5839bfb11b7bbb4a7e44acf731..b74f4623ea2393088aba430caca13ad7064d40d0 100644 (file)
@@ -8,12 +8,14 @@ class eWindowStyleSkinned: public eWindowStyle
        DECLARE_REF(eWindowStyleSkinned);
 public:
        eWindowStyleSkinned();
+#ifndef SWIG
        void handleNewSize(eWindow *wnd, eSize &size, eSize &offset);
        void paintWindowDecoration(eWindow *wnd, gPainter &painter, const std::string &title);
        void paintBackground(gPainter &painter, const ePoint &offset, const eSize &size);
-       void setStyle(gPainter &painter, int what);
        void drawFrame(gPainter &painter, const eRect &frame, int what);
        RESULT getFont(int what, ePtr<gFont> &font);
+#endif
+       void setStyle(gPainter &painter, int what);
        
        enum {
                bsWindow,
@@ -50,20 +52,45 @@ public:
                bpiBottomRight =  8,
        };
        
+       void setPixmap(int bs, int bp, ePtr<gPixmap> &pixmap);
        void setPixmap(int bs, int bp, gPixmap &pixmap);
        
-       void setDefaultBackgroundColor(const gRGB &back);
+       enum {
+               colBackground,
+               colLabelForeground,
+               colListboxBackground,
+               colListboxForeground,
+               colListboxSelectedBackground,
+               colListboxSelectedForeground,
+               colListboxMarkedBackground,
+               colListboxMarkedForeground,
+               colListboxMarkedAndSelectedBackground,
+               colListboxMarkedAndSelectedForeground,
+               
+               colWindowTitleForeground,
+               colWindowTitleBackground,
+               colMax
+       };
+       
+       void setColor(int what, const gRGB &back);
+       
+       void setTitleOffset(const eSize &offset);
+       void setTitleFont(gFont *fnt);
        
 private:
        struct borderSet
        {
                ePtr<gPixmap> m_pixmap[9];
                int m_border_top, m_border_left, m_border_right, m_border_bottom;
+               borderSet() { m_border_top = m_border_left = m_border_right = m_border_bottom = 0; }
        };
        
        borderSet m_border[bsMax];
        
-       gRGB m_background_color;
+       gRGB m_color[colMax];
+       
+       eSize m_title_offset;
+       ePtr<gFont> m_fnt;
        
        void drawBorder(gPainter &painter, const eRect &size, struct borderSet &border, int where);
 };