X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/d6f6602d7cea3a7899990fe79216af7d98d05917..3bad22d5566624804a73b3791980bab2d84c8266:/lib/gui/eskin.h diff --git a/lib/gui/eskin.h b/lib/gui/eskin.h index 7d701adc..e69de29b 100644 --- a/lib/gui/eskin.h +++ b/lib/gui/eskin.h @@ -1,87 +0,0 @@ -#ifndef __eskin_h -#define __eskin_h - -#include -#include -#include - -#include -#include -#include - -class eWidget; -class gPixmap; -typedef eWidget *(*tWidgetCreator)(eWidget *parent); - -struct eNamedColor -{ - eString name; - gRGB value, end; - int index; - int size; -}; - -class eSkin -{ - typedef ePtrList parserList; - parserList parsers; - void clear(); - - int parseColor(const eString& name, const char *color, gRGB &col); - int parseColors(XMLTreeNode *colors); - int parseScheme(XMLTreeNode *scheme); - int parseImages(XMLTreeNode *images); - int parseImageAlias(XMLTreeNode *images); - int parseValues(XMLTreeNode *values); - int parseFonts(XMLTreeNode *fonts); - int parseFontAlias(XMLTreeNode *fonts); - - gDC *getDCbyName(const char *name); - - gRGB *palette; - int maxcolors; - ePtr paldummy; - int *colorused; - - static std::map< eString, tWidgetCreator > widget_creator; - int build(eWidget *widget, XMLTreeNode *rootwidget); - - std::list colors; - std::map scheme; - std::map > images; - std::map values; - std::map fonts; - std::map fontAlias; - std::map imageAlias; - - eNamedColor *searchColor(const eString &name); - - static eSkin *active; -public: - eSkin(); - ~eSkin(); - - static void addWidgetCreator(const eString &name, tWidgetCreator creator); - static void removeWidgetCreator(const eString &name, tWidgetCreator creator); - - int load(const char *filename); - void parseSkins(); - - int build(eWidget *widget, const char *name); - void setPalette(gPixmap *pal); - - gColor queryColor(const eString &name); - gColor queryScheme(const eString &name) const; - RESULT queryImage(ePtr &pixmap, const eString &name) const; - int queryValue(const eString &name, int d) const; - gFont queryFont(const eString &name); - - void makeActive(); - - static eSkin *getActive(); -}; - -#define ASSIGN(v, t, n) \ - v =(t*)search(n); if (! v ) { eWarning("skin has undefined element: %s", n); v=new t(this); } - -#endif