[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: extragear/plasma/applets/frame
From: Anne-Marie Mahfouf <annma () kde ! org>
Date: 2008-02-10 20:49:15
Message-ID: 1202676555.749973.20063.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 773349 by annma:
allow previews of static pictures in config dialog
M +21 -10 configdialog.cpp
M +7 -1 configdialog.h
M +2 -2 frame.cpp
--- trunk/extragear/plasma/applets/frame/configdialog.cpp #773348:773349
@@ -21,8 +21,8 @@
#include <KStandardDirs>
#include "configdialog.h"
+#include "picture.h"
-
ConfigDialog::ConfigDialog( QWidget *parent )
: KDialog( parent )
{
@@ -43,18 +43,16 @@
QString monitorPath = KStandardDirs::locate("data", \
"kcontrol/pics/monitor.png"); // Size of monitor image: 200x186
// Geometry of "display" part of monitor image: (23,14)-[151x115]
- qreal previewRatio = 128.0 / (101.0 * m_ratio);
- QSize monitorSize(200, int(186 * previewRatio));
- QRect previewRect(23, int(14 * previewRatio), 151, int(115 * previewRatio));
- //m_preview_renderer.setSize(previewRect.size());
-
- ui.monitorLabel->setPixmap(QPixmap(monitorPath));//.scaled(monitorSize));
+ ui.monitorLabel->setPixmap(QPixmap(monitorPath));
ui.monitorLabel->setWhatsThis(i18n(
"This picture of a monitor contains a preview of "
- "what the current settings will look like on your desktop."));
+ "the picture you currently have in your frame."));
m_preview = new QLabel(ui.monitorLabel);
m_preview->setScaledContents(true);
- m_preview->setGeometry(previewRect);
+ m_preview->setGeometry(23,14,151,115);
+ m_preview->show();
+
+ connect(ui.picRequester, SIGNAL(urlSelected(const KUrl & )), this, \
SLOT(changePreview(const KUrl &))); }
ConfigDialog::~ConfigDialog()
@@ -109,4 +107,17 @@
KUrl ConfigDialog::currentUrl() const
{
return ui.picRequester->url();
-}
\ No newline at end of file
+}
+
+void ConfigDialog::previewPicture(const QImage &image)
+{
+ QImage scaledImage = image.scaled(QRect(23,14,151,115).size(), \
Qt::KeepAspectRatioByExpanding, Qt::SmoothTransformation); + \
m_preview->setPixmap(QPixmap::fromImage(scaledImage)); +}
+
+void ConfigDialog::changePreview(const KUrl &path)
+{
+ Picture myPicture;
+ previewPicture(myPicture.setPicture(path));
+}
+
--- trunk/extragear/plasma/applets/frame/configdialog.h #773348:773349
@@ -26,6 +26,7 @@
class ConfigDialog : public KDialog
{
+ Q_OBJECT
public:
ConfigDialog( QWidget *parent );
~ConfigDialog();
@@ -49,7 +50,12 @@
Ui::config ui;
/// Image Preview
QLabel *m_preview;
- float m_ratio;
+ /// Allow to preview each new chosen picture
+ void previewPicture(const QImage &pix);
+
+private slots:
+ void changePreview(const KUrl &);
+
};
#endif
--- trunk/extragear/plasma/applets/frame/frame.cpp #773348:773349
@@ -140,7 +140,7 @@
}
connect(m_configDialog->ui.removeDirButton, SIGNAL(clicked()), this, \
SLOT(removeDir()));
connect(m_configDialog->ui.addDirButton, SIGNAL(clicked()), this, \
SLOT(addDir()));
-
+
m_configDialog->setRoundCorners( m_roundCorners );
m_configDialog->setShadow(m_shadow);
m_configDialog->setShowFrame(m_frame);
@@ -152,7 +152,7 @@
m_configDialog->ui.slideShowDirList->addItems(m_slideShowPaths);
m_configDialog->ui.removeDirButton->setEnabled(!m_slideShowPaths.isEmpty());
m_configDialog->ui.slideShowDelay->setTime(QTime(m_slideshowTime / 3600, \
(m_slideshowTime / 60) % 60, m_slideshowTime % 60));
-
+ m_configDialog->previewPicture(m_picture);
m_configDialog->show();
m_configDialog->raise();
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic