gwenhywfar  4.3.1
htmlfont.c
Go to the documentation of this file.
00001 /***************************************************************************
00002  begin       : Sat Feb 20 2010
00003  copyright   : (C) 2010 by Martin Preuss
00004  email       : martin@libchipcard.de
00005 
00006  ***************************************************************************
00007  *          Please see toplevel file COPYING for license details           *
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