Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifdef HAVE_CONFIG_H
00011 # include <config.h>
00012 #endif
00013
00014 #define DISABLE_DEBUGLOG
00015
00016
00017 #include "htmlfont_p.h"
00018
00019
00020
00021 GWEN_INHERIT_FUNCTIONS(HTML_FONT)
00022 GWEN_LIST_FUNCTIONS(HTML_FONT, HtmlFont)
00023
00024
00025 HTML_FONT *HtmlFont_new(void) {
00026 HTML_FONT *fnt;
00027
00028 GWEN_NEW_OBJECT(HTML_FONT, fnt);
00029 fnt->refCount=1;
00030 GWEN_INHERIT_INIT(HTML_FONT, fnt);
00031 GWEN_LIST_INIT(HTML_FONT, fnt);
00032
00033 return fnt;
00034 }
00035
00036
00037
00038 void HtmlFont_free(HTML_FONT *fnt) {
00039 if (fnt) {
00040 assert(fnt->refCount);
00041 if (fnt->refCount>1)
00042 fnt->refCount--;
00043 else {
00044 GWEN_LIST_FINI(HTML_FONT, fnt);
00045 GWEN_INHERIT_FINI(HTML_FONT, fnt);
00046 free(fnt->fontName);
00047
00048 fnt->refCount=0;
00049 GWEN_FREE_OBJECT(fnt);
00050 }
00051 }
00052 }
00053
00054
00055
00056 void HtmlFont_Attach(HTML_FONT *fnt) {
00057 assert(fnt);
00058 assert(fnt->refCount);
00059 fnt->refCount++;
00060 }
00061
00062
00063
00064 const char *HtmlFont_GetFontName(const HTML_FONT *fnt) {
00065 assert(fnt);
00066 assert(fnt->refCount);
00067 return fnt->fontName;
00068 }
00069
00070
00071
00072 void HtmlFont_SetFontName(HTML_FONT *fnt, const char *s) {
00073 assert(fnt);
00074 assert(fnt->refCount);
00075 free(fnt->fontName);
00076 if (s) fnt->fontName=strdup(s);
00077 else fnt->fontName=NULL;
00078 }
00079
00080
00081
00082 int HtmlFont_GetFontSize(const HTML_FONT *fnt) {
00083 assert(fnt);
00084 assert(fnt->refCount);
00085 return fnt->fontSize;
00086 }
00087
00088
00089
00090 void HtmlFont_SetFontSize(HTML_FONT *fnt, int i) {
00091 assert(fnt);
00092 assert(fnt->refCount);
00093 fnt->fontSize=i;
00094 }
00095
00096
00097
00098 uint32_t HtmlFont_GetFontFlags(const HTML_FONT *fnt) {
00099 assert(fnt);
00100 assert(fnt->refCount);
00101 return fnt->fontFlags;
00102 }
00103
00104
00105
00106 void HtmlFont_SetFontFlags(HTML_FONT *fnt, uint32_t i) {
00107 assert(fnt);
00108 assert(fnt->refCount);
00109 fnt->fontFlags=i;
00110 }
00111
00112
00113
00114 void HtmlFont_AddFontFlags(HTML_FONT *fnt, uint32_t i) {
00115 assert(fnt);
00116 assert(fnt->refCount);
00117 fnt->fontFlags|=i;
00118 }
00119
00120
00121
00122 void HtmlFont_SubFontFlags(HTML_FONT *fnt, uint32_t i) {
00123 assert(fnt);
00124 assert(fnt->refCount);
00125 fnt->fontFlags&=~i;
00126 }
00127
00128
00129
00130