Changeset View
Changeset View
Standalone View
Standalone View
wallpapers/image/image.cpp
Show First 20 Lines • Show All 55 Lines • ▼ Show 20 Line(s) | |||||
56 | Image::Image(QObject *parent) | 56 | Image::Image(QObject *parent) | ||
57 | : QObject(parent), | 57 | : QObject(parent), | ||
58 | m_ready(false), | 58 | m_ready(false), | ||
59 | m_delay(10), | 59 | m_delay(10), | ||
60 | m_dirWatch(new KDirWatch(this)), | 60 | m_dirWatch(new KDirWatch(this)), | ||
61 | m_mode(SingleImage), | 61 | m_mode(SingleImage), | ||
62 | m_currentSlide(-1), | 62 | m_currentSlide(-1), | ||
63 | m_model(0), | 63 | m_model(0), | ||
64 | m_dialog(0), | 64 | m_dialog(0) | ||
65 | m_width(0), | | |||
66 | m_height(0) | | |||
67 | { | 65 | { | ||
68 | m_wallpaperPackage = KPackage::PackageLoader::self()->loadPackage(QStringLiteral("Wallpaper/Images")); | 66 | m_wallpaperPackage = KPackage::PackageLoader::self()->loadPackage(QStringLiteral("Wallpaper/Images")); | ||
69 | 67 | | |||
70 | connect(&m_timer, &QTimer::timeout, this, &Image::nextSlide); | 68 | connect(&m_timer, &QTimer::timeout, this, &Image::nextSlide); | ||
71 | 69 | | |||
72 | connect(m_dirWatch, &KDirWatch::created, this, &Image::pathCreated); | 70 | connect(m_dirWatch, &KDirWatch::created, this, &Image::pathCreated); | ||
73 | connect(m_dirWatch, &KDirWatch::dirty, this, &Image::pathDirty); | 71 | connect(m_dirWatch, &KDirWatch::dirty, this, &Image::pathDirty); | ||
74 | connect(m_dirWatch, &KDirWatch::deleted, this, &Image::pathDeleted); | 72 | connect(m_dirWatch, &KDirWatch::deleted, this, &Image::pathDeleted); | ||
75 | m_dirWatch->startScan(); | 73 | m_dirWatch->startScan(); | ||
76 | 74 | | |||
77 | connect(this, &Image::sizeChanged, this, &Image::setTargetSize); | | |||
78 | | ||||
79 | useSingleImageDefaults(); | 75 | useSingleImageDefaults(); | ||
80 | setSingleImage(); | 76 | setSingleImage(); | ||
81 | } | 77 | } | ||
82 | 78 | | |||
83 | Image::~Image() | 79 | Image::~Image() | ||
84 | { | 80 | { | ||
85 | delete m_dialog; | 81 | delete m_dialog; | ||
86 | } | 82 | } | ||
▲ Show 20 Lines • Show All 144 Lines • ▼ Show 20 Line(s) | 226 | { | |||
231 | bool sizeChanged = m_targetSize != size; | 227 | bool sizeChanged = m_targetSize != size; | ||
232 | m_targetSize = size; | 228 | m_targetSize = size; | ||
233 | 229 | | |||
234 | if (m_mode == SingleImage) { | 230 | if (m_mode == SingleImage) { | ||
235 | if (sizeChanged) { | 231 | if (sizeChanged) { | ||
236 | // If screen size was changed, we may want to select a new preferred image | 232 | // If screen size was changed, we may want to select a new preferred image | ||
237 | // which has correct aspect ratio for the new screen size. | 233 | // which has correct aspect ratio for the new screen size. | ||
238 | m_wallpaperPackage.removeDefinition("preferred"); | 234 | m_wallpaperPackage.removeDefinition("preferred"); | ||
239 | } | 235 | } | ||
davidedmundson: I think this needs moving out of this block that says
if (m_mode == SingleImage)
Slideshow… | |||||
240 | setSingleImage(); | 236 | setSingleImage(); | ||
241 | } | 237 | } | ||
242 | } | | |||
243 | | ||||
244 | int Image::height() const | | |||
245 | { | | |||
246 | return m_height; | | |||
247 | } | | |||
248 | | ||||
249 | void Image::setHeight(int h) | | |||
250 | { | | |||
251 | if (m_height != h) { | | |||
252 | m_height = h; | | |||
253 | emit sizeChanged(QSize(m_width, m_height)); | | |||
254 | } | | |||
255 | } | | |||
256 | 238 | | |||
257 | int Image::width() const | 239 | if (sizeChanged) { | ||
258 | { | 240 | emit targetSizeChanged(); | ||
259 | return m_width; | | |||
260 | } | | |||
261 | | ||||
262 | void Image::setWidth(int w) | | |||
263 | { | | |||
264 | if (m_width != w) { | | |||
265 | m_width = w; | | |||
266 | emit sizeChanged(QSize(m_width, m_height)); | | |||
267 | } | 241 | } | ||
268 | } | 242 | } | ||
269 | 243 | | |||
270 | KPackage::Package *Image::package() | 244 | KPackage::Package *Image::package() | ||
271 | { | 245 | { | ||
272 | return &m_wallpaperPackage; | 246 | return &m_wallpaperPackage; | ||
273 | } | 247 | } | ||
274 | 248 | | |||
▲ Show 20 Lines • Show All 592 Lines • Show Last 20 Lines |
I think this needs moving out of this block that says
if (m_mode == SingleImage)
Slideshow will still uses this binding.