Changeset View
Changeset View
Standalone View
Standalone View
treeview.cpp
Show All 27 Lines | |||||
28 | #include <QApplication> | 28 | #include <QApplication> | ||
29 | #include <QDBusConnection> | 29 | #include <QDBusConnection> | ||
30 | #include <QDBusMessage> | 30 | #include <QDBusMessage> | ||
31 | #include <QDir> | 31 | #include <QDir> | ||
32 | #include <QDrag> | 32 | #include <QDrag> | ||
33 | #include <QDropEvent> | 33 | #include <QDropEvent> | ||
34 | #include <QHeaderView> | 34 | #include <QHeaderView> | ||
35 | #include <QIcon> | 35 | #include <QIcon> | ||
36 | #include <QInputDialog> | ||||
36 | #include <QMenu> | 37 | #include <QMenu> | ||
37 | #include <QPainter> | 38 | #include <QPainter> | ||
38 | #include <QRegExp> | 39 | #include <QRegExp> | ||
39 | #include <QSignalMapper> | 40 | #include <QSignalMapper> | ||
41 | #include <QUrl> | ||||
40 | 42 | | |||
41 | #include <KActionCollection> | 43 | #include <KActionCollection> | ||
42 | #include <KBuildSycocaProgressDialog> | 44 | #include <KBuildSycocaProgressDialog> | ||
43 | #include "kmenuedit_debug.h" | 45 | #include "kmenuedit_debug.h" | ||
44 | #include <KDesktopFile> | 46 | #include <KDesktopFile> | ||
45 | #include <KIconLoader> | 47 | #include <KIconLoader> | ||
46 | #include <KInputDialog> | | |||
47 | #include <KLocalizedString> | 48 | #include <KLocalizedString> | ||
48 | #include <KMessageBox> | 49 | #include <KMessageBox> | ||
49 | #include <KService> | 50 | #include <KService> | ||
50 | #include <KServiceGroup> | 51 | #include <KServiceGroup> | ||
51 | #include <KConfig> | 52 | #include <KConfig> | ||
52 | #include <KConfigGroup> | 53 | #include <KConfigGroup> | ||
53 | #include <KUrlMimeData> | 54 | #include <KUrlMimeData> | ||
54 | #include <KUrl> | | |||
55 | #include <KStringHandler> | 55 | #include <KStringHandler> | ||
56 | #include <QStandardPaths> | 56 | #include <QStandardPaths> | ||
57 | 57 | | |||
58 | #include "menufile.h" | 58 | #include "menufile.h" | ||
59 | #include "menuinfo.h" | 59 | #include "menuinfo.h" | ||
60 | 60 | | |||
61 | #define MOVE_FOLDER 'M' | 61 | #define MOVE_FOLDER 'M' | ||
62 | #define COPY_FOLDER 'C' | 62 | #define COPY_FOLDER 'C' | ||
▲ Show 20 Lines • Show All 745 Lines • ▼ Show 20 Line(s) | 780 | { | |||
808 | } | 808 | } | ||
809 | 809 | | |||
810 | QString folder = parentItem ? parentItem->directory() : QStringLiteral("/"); | 810 | QString folder = parentItem ? parentItem->directory() : QStringLiteral("/"); | ||
811 | MenuFolderInfo *parentFolderInfo = parentItem ? parentItem->folderInfo() : m_rootFolder; | 811 | MenuFolderInfo *parentFolderInfo = parentItem ? parentItem->folderInfo() : m_rootFolder; | ||
812 | //qCDebug(KMENUEDIT_LOG) << "think we're dropping on" << (parentItem ? parentItem->text(0) : "Top Level") << index; | 812 | //qCDebug(KMENUEDIT_LOG) << "think we're dropping on" << (parentItem ? parentItem->text(0) : "Top Level") << index; | ||
813 | 813 | | |||
814 | if (!data->hasFormat(QLatin1String(s_internalMimeType))) { | 814 | if (!data->hasFormat(QLatin1String(s_internalMimeType))) { | ||
815 | // External drop | 815 | // External drop | ||
816 | if (!KUrl::List::canDecode(data)) { | 816 | if (!data->hasUrls()) { | ||
817 | return false; | 817 | return false; | ||
818 | } | 818 | } | ||
819 | 819 | | |||
820 | KUrl::List urls = KUrl::List::fromMimeData(data); | 820 | QList<QUrl> urls = KUrlMimeData::urlsFromMimeData(data); | ||
821 | if (urls.isEmpty() || !urls[0].isLocalFile()) { | 821 | if (urls.isEmpty() || !urls[0].isLocalFile()) { | ||
822 | return false; | 822 | return false; | ||
823 | } | 823 | } | ||
824 | 824 | | |||
825 | //FIXME: this should really support multiple DnD | 825 | //FIXME: this should really support multiple DnD | ||
826 | QString path = urls[0].path(); | 826 | QString path = urls[0].path(); | ||
827 | if (!path.endsWith(QLatin1String(".desktop"))) { | 827 | if (!path.endsWith(QLatin1String(".desktop"))) { | ||
828 | return false; | 828 | return false; | ||
▲ Show 20 Lines • Show All 189 Lines • ▼ Show 20 Line(s) | |||||
1018 | } | 1018 | } | ||
1019 | 1019 | | |||
1020 | void TreeView::newsubmenu() | 1020 | void TreeView::newsubmenu() | ||
1021 | { | 1021 | { | ||
1022 | TreeItem *parentItem = nullptr; | 1022 | TreeItem *parentItem = nullptr; | ||
1023 | TreeItem *item = (TreeItem *)selectedItem(); | 1023 | TreeItem *item = (TreeItem *)selectedItem(); | ||
1024 | 1024 | | |||
1025 | bool ok; | 1025 | bool ok; | ||
1026 | QString caption = KInputDialog::getText(i18n("New Submenu"), | 1026 | QString caption = QInputDialog::getText(this, i18n("New Submenu"), i18n("Submenu name:"), | ||
1027 | i18n("Submenu name:"), QString(), &ok, this); | 1027 | QLineEdit::Normal, QString(), &ok); | ||
1028 | 1028 | | |||
1029 | if (!ok) { | 1029 | if (!ok) { | ||
1030 | return; | 1030 | return; | ||
1031 | } | 1031 | } | ||
1032 | 1032 | | |||
1033 | QString file = caption; | 1033 | QString file = caption; | ||
1034 | file.replace(QLatin1Char('/'), QLatin1Char('-')); | 1034 | file.replace(QLatin1Char('/'), QLatin1Char('-')); | ||
1035 | 1035 | | |||
▲ Show 20 Lines • Show All 50 Lines • ▼ Show 20 Line(s) | |||||
1086 | } | 1086 | } | ||
1087 | 1087 | | |||
1088 | void TreeView::newitem() | 1088 | void TreeView::newitem() | ||
1089 | { | 1089 | { | ||
1090 | TreeItem *parentItem = nullptr; | 1090 | TreeItem *parentItem = nullptr; | ||
1091 | TreeItem *item = (TreeItem *)selectedItem(); | 1091 | TreeItem *item = (TreeItem *)selectedItem(); | ||
1092 | 1092 | | |||
1093 | bool ok; | 1093 | bool ok; | ||
1094 | QString caption = KInputDialog::getText(i18n("New Item"), | 1094 | QString caption = QInputDialog::getText(this, i18n("New Item"), i18n("Item name:"), | ||
1095 | i18n("Item name:"), QString(), &ok, this); | 1095 | QLineEdit::Normal, QString(), &ok); | ||
1096 | 1096 | | |||
1097 | if (!ok) { | 1097 | if (!ok) { | ||
1098 | return; | 1098 | return; | ||
1099 | } | 1099 | } | ||
1100 | 1100 | | |||
1101 | QString menuId; | 1101 | QString menuId; | ||
1102 | QString file = caption; | 1102 | QString file = caption; | ||
1103 | file.replace(QLatin1Char('/'), QLatin1Char('-')); | 1103 | file.replace(QLatin1Char('/'), QLatin1Char('-')); | ||
▲ Show 20 Lines • Show All 788 Lines • Show Last 20 Lines |