diff --git a/mythtv/libs/libmythui/mythuiimage.cpp b/mythtv/libs/libmythui/mythuiimage.cpp
index 5674bf1..9647bad 100644
a
|
b
|
void ImageProperties::Copy(const ImageProperties &other) |
85 | 85 | preserveAspect = other.preserveAspect; |
86 | 86 | isGreyscale = other.isGreyscale; |
87 | 87 | isReflected = other.isReflected; |
88 | | isMasked = other.isMasked; |
89 | 88 | |
90 | 89 | reflectAxis = other.reflectAxis; |
91 | 90 | reflectScale = other.reflectScale; |
… |
… |
void ImageProperties::Copy(const ImageProperties &other) |
94 | 93 | reflectSpacing = other.reflectSpacing; |
95 | 94 | |
96 | 95 | SetMaskImage(other.maskImage); |
| 96 | isMasked = other.isMasked; |
| 97 | maskImageFilename = other.maskImageFilename; |
| 98 | maskImageFilename.detach(); |
97 | 99 | } |
98 | 100 | |
99 | 101 | void ImageProperties::SetMaskImage(MythImage *image) |
… |
… |
class ImageLoader |
306 | 308 | |
307 | 309 | if (imProps.isMasked) |
308 | 310 | { |
| 311 | MythImage *newMaskImage = painter->GetFormatImage(); |
| 312 | if (newMaskImage->Load(imProps.GetMaskImageFilename())) |
| 313 | imProps.SetMaskImage(newMaskImage); |
| 314 | else |
| 315 | imProps.SetMaskImage(NULL); |
| 316 | newMaskImage->DecrRef(); |
| 317 | |
| 318 | if (imProps.isMasked) |
| 319 | { |
309 | 320 | QRect imageArea = image->rect(); |
310 | 321 | QRect maskArea = imProps.GetMaskImageRect(); |
311 | 322 | |
… |
… |
class ImageLoader |
325 | 336 | QImage mask = imProps.GetMaskImageSubset(imageArea); |
326 | 337 | image->setAlphaChannel(mask.alphaChannel()); |
327 | 338 | } |
| 339 | } |
328 | 340 | |
329 | 341 | if (imProps.isReflected) |
330 | 342 | image->Reflect(imProps.reflectAxis, imProps.reflectShear, |
… |
… |
bool MythUIImage::ParseElement( |
1363 | 1375 | } |
1364 | 1376 | else if (element.tagName() == "mask") |
1365 | 1377 | { |
1366 | | QString maskfile = getFirstText(element); |
1367 | | |
1368 | | MythImage *newMaskImage = GetPainter()->GetFormatImage(); |
1369 | | if (newMaskImage->Load(maskfile)) |
1370 | | m_imageProperties.SetMaskImage(newMaskImage); |
1371 | | else |
1372 | | m_imageProperties.SetMaskImage(NULL); |
1373 | | newMaskImage->DecrRef(); |
| 1378 | m_imageProperties.SetMaskImageFilename(getFirstText(element)); |
| 1379 | m_imageProperties.isMasked = true; |
1374 | 1380 | } |
1375 | 1381 | else if (element.tagName() == "grayscale" || |
1376 | 1382 | element.tagName() == "greyscale") |
diff --git a/mythtv/libs/libmythui/mythuiimage.h b/mythtv/libs/libmythui/mythuiimage.h
index a90ee3f..85abb65 100644
a
|
b
|
class ImageProperties |
30 | 30 | ImageProperties &operator=(const ImageProperties &other); |
31 | 31 | |
32 | 32 | void SetMaskImage(MythImage *image); |
| 33 | void SetMaskImageFilename(const QString &filename) |
| 34 | { |
| 35 | maskImageFilename=filename; |
| 36 | } |
| 37 | QString GetMaskImageFilename() |
| 38 | { |
| 39 | return maskImageFilename; |
| 40 | } |
33 | 41 | QRect GetMaskImageRect(void) |
34 | 42 | { |
35 | 43 | QRect rect; |
… |
… |
class ImageProperties |
68 | 76 | void Copy(const ImageProperties &other); |
69 | 77 | |
70 | 78 | MythImage *maskImage; |
| 79 | QString maskImageFilename; |
71 | 80 | }; |
72 | 81 | |
73 | 82 | typedef QPair<MythImage *, int> AnimationFrame; |
diff --git a/mythtv/libs/libmythui/mythuitext.cpp b/mythtv/libs/libmythui/mythuitext.cpp
index 60fa71f..76fbce4 100644
a
|
b
|
void MythUIText::Pulse(void) |
1176 | 1176 | } |
1177 | 1177 | } |
1178 | 1178 | |
| 1179 | // if (m_scrolling && !GetMythUI()->GetScreenIsAsleep()) |
1179 | 1180 | if (m_scrolling) |
1180 | 1181 | { |
1181 | 1182 | int whole; |