]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/panels/places/placesitemeditdialog.cpp
Allow compiling Dolphin with KF5
[dolphin.git] / src / panels / places / placesitemeditdialog.cpp
index dd7ac85a56cb04d91142fc94152f2d2ae2e788a9..2dd47d7939382c17c1a7cec27a8fae290bf1c7a0 100644 (file)
 #include "placesitemeditdialog.h"
 
 #include <KAboutData>
 #include "placesitemeditdialog.h"
 
 #include <KAboutData>
+#include <k4aboutdata.h>
 #include <KComponentData>
 #include <KComponentData>
+#include <KDebug>
 #include <KFile>
 #include <KFile>
+#include <KGlobal>
 #include <KIconButton>
 #include <KLineEdit>
 #include <KLocale>
 #include <KIconButton>
 #include <KLineEdit>
 #include <KLocale>
@@ -59,7 +62,7 @@ void PlacesItemEditDialog::setIcon(const QString& icon)
 
 QString PlacesItemEditDialog::icon() const
 {
 
 QString PlacesItemEditDialog::icon() const
 {
-    return m_icon;
+    return m_iconButton->icon();
 }
 
 void PlacesItemEditDialog::setText(const QString& text)
 }
 
 void PlacesItemEditDialog::setText(const QString& text)
@@ -69,7 +72,12 @@ void PlacesItemEditDialog::setText(const QString& text)
 
 QString PlacesItemEditDialog::text() const
 {
 
 QString PlacesItemEditDialog::text() const
 {
-    return m_text;
+    QString text = m_textEdit->text();
+    if (text.isEmpty()) {
+        const KUrl url = m_urlEdit->url();
+        text = url.fileName().isEmpty() ? url.prettyUrl() : url.fileName();
+    }
+    return text;
 }
 
 void PlacesItemEditDialog::setUrl(const KUrl& url)
 }
 
 void PlacesItemEditDialog::setUrl(const KUrl& url)
@@ -79,7 +87,7 @@ void PlacesItemEditDialog::setUrl(const KUrl& url)
 
 KUrl PlacesItemEditDialog::url() const
 {
 
 KUrl PlacesItemEditDialog::url() const
 {
-    return m_url;
+    return m_urlEdit->url();
 }
 
 void PlacesItemEditDialog::setAllowGlobal(bool allow)
 }
 
 void PlacesItemEditDialog::setAllowGlobal(bool allow)
@@ -100,6 +108,11 @@ bool PlacesItemEditDialog::event(QEvent* event)
     return QWidget::event(event);
 }
 
     return QWidget::event(event);
 }
 
+void PlacesItemEditDialog::slotUrlChanged(const QString& text)
+{
+    enableButtonOk(!text.isEmpty());
+}
+
 PlacesItemEditDialog::~PlacesItemEditDialog()
 {
 }
 PlacesItemEditDialog::~PlacesItemEditDialog()
 {
 }
@@ -122,10 +135,11 @@ void PlacesItemEditDialog::initialize()
     formLayout->addRow(i18nc("@label", "Location:"), m_urlEdit);
     // Provide room for at least 40 chars (average char width is half of height)
     m_urlEdit->setMinimumWidth(m_urlEdit->fontMetrics().height() * (40 / 2));
     formLayout->addRow(i18nc("@label", "Location:"), m_urlEdit);
     // Provide room for at least 40 chars (average char width is half of height)
     m_urlEdit->setMinimumWidth(m_urlEdit->fontMetrics().height() * (40 / 2));
+    connect(m_urlEdit->lineEdit(), SIGNAL(textChanged(QString)), this, SLOT(slotUrlChanged(QString)));
 
     m_iconButton = new KIconButton(mainWidget);
     formLayout->addRow(i18nc("@label", "Choose an icon:"), m_iconButton);
 
     m_iconButton = new KIconButton(mainWidget);
     formLayout->addRow(i18nc("@label", "Choose an icon:"), m_iconButton);
-    m_iconButton->setIconSize(KIconLoader::SizeLarge);
+    m_iconButton->setIconSize(IconSize(KIconLoader::Desktop));
     m_iconButton->setIconType(KIconLoader::NoGroup, KIconLoader::Place);
     if (m_icon.isEmpty()) {
         m_iconButton->setIcon(KMimeType::iconNameForUrl(m_url));
     m_iconButton->setIconType(KIconLoader::NoGroup, KIconLoader::Place);
     if (m_icon.isEmpty()) {
         m_iconButton->setIcon(KMimeType::iconNameForUrl(m_url));
@@ -152,7 +166,7 @@ void PlacesItemEditDialog::initialize()
         m_textEdit->setFocus();
     }
 
         m_textEdit->setFocus();
     }
 
-    setMainWidget( mainWidget );
+    setMainWidget(mainWidget);
 }
 
 #include "placesitemeditdialog.moc"
 }
 
 #include "placesitemeditdialog.moc"