summaryrefslogtreecommitdiff
path: root/noncore/apps/opie-reader/StyleConsts.cpp
blob: 9fb56b790a784a832dc4677b24f4db564c448f4a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94

#include <qimage.h>
#include "StyleConsts.h"

GraphicLink::~GraphicLink() { delete graphic; }

pmstore::~pmstore()
{ 
////    qDebug("Deleting image");
    delete graphic;
}

CStyle::~CStyle()
{
    if (graphic != NULL)
    {
	if (--(graphic->count) == 0)
	{
	    delete graphic;
	}
    }
}

CStyle::CStyle(const CStyle& rhs) : graphic(NULL)
{
    *this = rhs;
}

CStyle& CStyle::operator=(const CStyle& rhs)
{
    if (rhs.graphic != NULL)
    {
	(rhs.graphic->count)++;
	if (graphic != NULL)
	{
	    if (--(graphic->count) == 0)
	    {
		delete graphic;
	    }
	}
	graphic = rhs.graphic;
    }
    else
    {
	if (graphic != NULL)
	{
	    if (--(graphic->count) == 0)
	    {
		delete graphic;
	    }
	    graphic = NULL;
	}
    }
    sty = rhs.sty;
    return *this;
}

void CStyle::clearPicture()
{
    if (graphic != NULL)
    {
	if (--(graphic->count) == 0)
	{
	    delete graphic;
	}
	graphic = NULL;
    }
}

void CStyle::unset()
{
    sty.unset();
    if (graphic != NULL)
    {
	if (--(graphic->count) == 0)
	{
	    delete graphic;
	}
	graphic = NULL;
    }
}

void CStyle::setPicture(bool canScale, QImage* _g, bool il, unsigned long tgt)
{
    if (graphic != NULL)
    {
	if (--(graphic->count) == 0)
	{
	    delete graphic;
	}
	graphic = NULL;
    }
    if (_g != NULL) graphic = new pmstore(canScale, _g, il, tgt);
}