1 /***************************************************************************
2 begin : Fri Jul 16 2010
3 copyright : (C) 2010 by Martin Preuss
4 email : martin@libchipcard.de
5
6 ***************************************************************************
7 * Please see toplevel file COPYING for license details *
8 ***************************************************************************/
9
10 #ifdef HAVE_CONFIG_H
11 # include <config.h>
12 #endif
13
14 #define DISABLE_DEBUGLOG
15
16
17 #include "htmlimage_p.h"
18
19
20
21 GWEN_INHERIT_FUNCTIONS(HTML_IMAGE)
GWEN_LIST_FUNCTIONS(HTML_IMAGE,HtmlImage)22 GWEN_LIST_FUNCTIONS(HTML_IMAGE, HtmlImage)
23
24
25 HTML_IMAGE *HtmlImage_new(void)
26 {
27 HTML_IMAGE *img;
28
29 GWEN_NEW_OBJECT(HTML_IMAGE, img);
30 img->refCount=1;
31 GWEN_INHERIT_INIT(HTML_IMAGE, img);
32 GWEN_LIST_INIT(HTML_IMAGE, img);
33
34 return img;
35 }
36
37
38
HtmlImage_free(HTML_IMAGE * img)39 void HtmlImage_free(HTML_IMAGE *img)
40 {
41 if (img) {
42 assert(img->refCount);
43 if (img->refCount>1)
44 img->refCount--;
45 else {
46 GWEN_LIST_FINI(HTML_IMAGE, img);
47 GWEN_INHERIT_FINI(HTML_IMAGE, img);
48 free(img->imageName);
49
50 img->refCount=0;
51 GWEN_FREE_OBJECT(img);
52 }
53 }
54 }
55
56
57
HtmlImage_Attach(HTML_IMAGE * img)58 void HtmlImage_Attach(HTML_IMAGE *img)
59 {
60 assert(img);
61 assert(img->refCount);
62 img->refCount++;
63 }
64
65
66
HtmlImage_GetImageName(const HTML_IMAGE * img)67 const char *HtmlImage_GetImageName(const HTML_IMAGE *img)
68 {
69 assert(img);
70 assert(img->refCount);
71 return img->imageName;
72 }
73
74
75
HtmlImage_SetImageName(HTML_IMAGE * img,const char * s)76 void HtmlImage_SetImageName(HTML_IMAGE *img, const char *s)
77 {
78 assert(img);
79 assert(img->refCount);
80 free(img->imageName);
81 if (s)
82 img->imageName=strdup(s);
83 else
84 img->imageName=NULL;
85 }
86
87
88
HtmlImage_GetWidth(const HTML_IMAGE * img)89 int HtmlImage_GetWidth(const HTML_IMAGE *img)
90 {
91 assert(img);
92 assert(img->refCount);
93 return img->width;
94 }
95
96
97
HtmlImage_SetWidth(HTML_IMAGE * img,int i)98 void HtmlImage_SetWidth(HTML_IMAGE *img, int i)
99 {
100 assert(img);
101 assert(img->refCount);
102 img->width=i;
103 }
104
105
106
HtmlImage_GetHeight(const HTML_IMAGE * img)107 int HtmlImage_GetHeight(const HTML_IMAGE *img)
108 {
109 assert(img);
110 assert(img->refCount);
111 return img->height;
112 }
113
114
115
HtmlImage_SetHeight(HTML_IMAGE * img,int i)116 void HtmlImage_SetHeight(HTML_IMAGE *img, int i)
117 {
118 assert(img);
119 assert(img->refCount);
120 img->height=i;
121 }
122
123
124
125