Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef FOX16_HTMLCTX_HPP
00011 #define FOX16_HTMLCTX_HPP
00012
00013
00014 #include <gwen-gui-fox16/cppgui.hpp>
00015 #include <gwenhywfar/htmlobject_be.h>
00016 #include <gwenhywfar/htmlfont_be.h>
00017 #include <gwenhywfar/htmlctx_be.h>
00018
00019 #include <fx.h>
00020
00021
00022 class FOX16GUI_API FOX16_HtmlCtx {
00023 friend class FOX16_HtmlCtxLinker;
00024
00025 public:
00026 FOX16_HtmlCtx(uint32_t flags);
00027 ~FOX16_HtmlCtx();
00028
00029 void setText(const char *s);
00030
00031 int getWidth();
00032 int getHeight();
00033
00034 HTML_FONT *getFont(const char *fontName,
00035 int fontSize,
00036 uint32_t fontFlags);
00037
00038 HTML_IMAGE *getImage(const char *imageName);
00039
00040 void addMediaPath(const char *s);
00041
00042 int layout(int width, int height);
00043 void dump();
00044
00045 void paint(FXDC *dc, int xOffset, int yOffset);
00046 void paintAt(FXDC *dc,
00047 int xOffset, int yOffset,
00048 int xText, int yText,
00049 int w, int h);
00050
00051 void setBackgroundColor(FXColor c);
00052 void setForegroundColor(FXColor c);
00053
00054 protected:
00055 GWEN_XML_CONTEXT *_context;
00056 FXFont *_font;
00057 FXColor _fgColor;
00058 FXColor _bgColor;
00059 FXIconSource *m_iconSource;
00060
00061 FXFont *_getFoxFont(HTML_FONT *fnt);
00062 void _paint(FXDC *dc, HTML_OBJECT *o, int xOffset, int yOffset);
00063 void _paintAt(FXDC *dc, HTML_OBJECT *o,
00064 int xOffset, int yOffset,
00065 int xText, int yText,
00066 int w, int h);
00067
00068 int getTextWidth(HTML_FONT *fnt,
00069 const char *s);
00070
00071 int getTextHeight(HTML_FONT *fnt,
00072 const char *s);
00073
00074 uint32_t getColorFromName(const char *name);
00075
00076 };
00077
00078
00079
00080
00081 #endif
00082
00083