summaryrefslogtreecommitdiff
path: root/noncore/apps/opie-reader/StyleConsts.cpp
blob: 77c9d3b5be33affe2155c297b46498b7be1b7e14 (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
95
96
97
98
99
100
101
102
103
104
105
106
107
108

#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);
}

void CStyle::invert()
{
  qDebug("Before:<%02x%02x%02x>", sty.bred, sty.bgreen, sty.bblue);
  qDebug("Before:<%02x%02x%02x>", sty.red, sty.green, sty.blue);
  sty.bred = 255-sty.bred;
  sty.bgreen = 255-sty.bgreen;
  sty.bblue = 255-sty.bblue;
  sty.red = 255-sty.red;
  sty.green = 255-sty.green;
  sty.blue = 255-sty.blue;
  qDebug("After:<%02x%02x%02x>", sty.bred, sty.bgreen, sty.bblue);
  qDebug("After:<%02x%02x%02x>", sty.red, sty.green, sty.blue);
}