Krusader for Plasma 5?

278 views
Skip to first unread message

Rob

unread,
Feb 1, 2015, 5:59:46 PM2/1/15
to krusade...@googlegroups.com
Are there any plans to make Krusader compatible with Konsole and Kate in Plasma 5? Currently I have to have some old libraries available so that things such as the Actions menu work correctly.

-- 
Rob

Davide Gianforte

unread,
Feb 9, 2015, 11:07:42 AM2/9/15
to krusade...@googlegroups.com
I tried to write some patches for a Plasma 5 port. I managed to compile and link the kio_iso plugin, which no more depends on QT4/KDE4.

ATM, cmakes are generated with manual commands (I'm not very skilled in cmake language) and rely on and hybrid system; I think this is a temporary workaround until QT4 and KDE4 are completely removed.

Those patches apply on top of git krusader, I haven't tried with 2.4.0.

As you can see in patch #2, most of the work is to change the header files name/path and rewrite some function prototype. ATM, I don't want to change the code to remove deprecated functions/object.

I've tried with Slackware-current, I don't about a Linux distro fully focused on Plasma.

Hope this could help.

Dave

----

From 189027037f5e6bf3d344bace9f6c5ff3ab29310d Mon Sep 17 00:00:00 2001
From: Davide Gianforte <dav...@gengisdave.org>
Date: Sun, 8 Feb 2015 03:00:54 +0100
Subject: [PATCH 1/2] Trying to port to Qt5/KF5 - CMake edits

Cmake successfly executed with a lot of warning
---
CMakeLists.txt | 54 ++++++++++++++++++++++++++++++++----
doc/CMakeLists.txt | 4 +--
iso/CMakeLists.txt | 2 +-
krArc/CMakeLists.txt | 4 +--
krusader/ActionMan/CMakeLists.txt | 4 +--
krusader/BookMan/CMakeLists.txt | 2 +-
krusader/CMakeLists.txt | 17 ++++++++----
krusader/Dialogs/CMakeLists.txt | 2 +-
krusader/DiskUsage/CMakeLists.txt | 2 +-
krusader/Filter/CMakeLists.txt | 2 +-
krusader/GUI/CMakeLists.txt | 2 +-
krusader/KViewer/CMakeLists.txt | 2 +-
krusader/Konfigurator/CMakeLists.txt | 2 +-
krusader/Locate/CMakeLists.txt | 2 +-
krusader/MountMan/CMakeLists.txt | 2 +-
krusader/Panel/CMakeLists.txt | 2 +-
krusader/Queue/CMakeLists.txt | 2 +-
krusader/Search/CMakeLists.txt | 2 +-
krusader/Splitter/CMakeLists.txt | 2 +-
krusader/Synchronizer/CMakeLists.txt | 2 +-
krusader/UserAction/CMakeLists.txt | 2 +-
krusader/UserMenu/CMakeLists.txt | 2 +-
krusader/VFS/CMakeLists.txt | 2 +-
pics/CMakeLists.txt | 2 +-
pics/kde3/CMakeLists.txt | 2 +-
25 files changed, 87 insertions(+), 36 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 96175bd..ade43ec 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,13 +1,55 @@
project(krusader)

-INCLUDE(CPack)
+cmake_minimum_required (VERSION 2.8.12 FATAL_ERROR)
+set (QT_MIN_VERSION "5.2.0")

set(VERSION "2.4.0-beta3" )
set(RELEASE_NAME "Single Step")

-find_package(KDE4 REQUIRED)
-include(KDE4Defaults)
-include_directories( ${KDE4_INCLUDES} ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} )
+find_package(ECM 1.1.0 REQUIRED NO_MODULE)
+set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
+include(ECMOptionalAddSubdirectory)
+include(ECMInstallIcons)
+include(ECMSetupVersion)
+include(ECMMarkNonGuiExecutable)
+include(ECMGenerateHeaders)
+include(GenerateExportHeader)
+
+include(CMakePackageConfigHelpers)
+include(FeatureSummary)
+include(WriteBasicConfigVersionFile)
+include(CheckFunctionExists)
+
+include(KDEInstallDirs)
+include(KDECMakeSettings)
+include(KDECompilerSettings)
+
+# TODO Qt5
+find_package(Qt5 CONFIG REQUIRED
+ Core
+ DBus
+ Widgets
+ Script
+ Sql
+ Test
+ Xml
+)
+
+# TODO KF5 port (KDE4 -> KF5Config)
+find_package(KF5 REQUIRED COMPONENTS
+ Archive
+ Config
+ DocTools
+ KDELibs4Support
+ Parts
+)
+
+# TODO KF5 port (removed)
+#include(KDE4Defaults)
+#find_package(KF5KDELibs4Support)
+
+# TODO KF5 port (removed)
+#include_directories( ${KDE4_INCLUDES} ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} )

set(CMAKE_VERBOSE_MAKEFILE OFF)

@@ -19,7 +61,7 @@ if(ENABLE_SYNCHRONIZER)
add_definitions( "-DENABLE_SYNCHRONIZER" )
endif(ENABLE_SYNCHRONIZER)

-find_package(ACL)
+#find_package(ACL)
if(ACL_FOUND)
add_definitions(-DHAVE_POSIX_ACL)
endif(ACL_FOUND)
@@ -33,3 +75,5 @@ add_subdirectory(krArc)
add_subdirectory(iso)
add_subdirectory(doc)
#add_subdirectory(virt) - not used
+
+feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
index 7ce50ea..61a0a79 100644
--- a/doc/CMakeLists.txt
+++ b/doc/CMakeLists.txt
@@ -1,6 +1,6 @@
########### install files ###############


-kde4_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en SUBDIR krusader)
-kde4_create_manpage(man-krusader.1.docbook 1 INSTALL_DESTINATION ${MAN_INSTALL_DIR})
+kdoctools_create_handbook(index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en SUBDIR krusader)
+kdoctools_create_manpage(man-krusader.1.docbook 1 INSTALL_DESTINATION ${MAN_INSTALL_DIR})

diff --git a/iso/CMakeLists.txt b/iso/CMakeLists.txt
index f3553e5..dc912ba 100644
--- a/iso/CMakeLists.txt
+++ b/iso/CMakeLists.txt
@@ -11,7 +11,7 @@ set(kio_iso_PART_SRCS
kiso.cpp
iso.cpp)

-kde4_add_plugin(kio_iso ${kio_iso_PART_SRCS} ${libisofs_SRCS})
+add_library(kio_iso ${kio_iso_PART_SRCS} ${libisofs_SRCS})

target_link_libraries(kio_iso ${KDE4_KDECORE_LIBS} ${KDE4_KIO_LIBS} ${ZLIB_LIBRARY})

diff --git a/krArc/CMakeLists.txt b/krArc/CMakeLists.txt
index e72e09e..d8ea76e 100644
--- a/krArc/CMakeLists.txt
+++ b/krArc/CMakeLists.txt
@@ -2,9 +2,9 @@ include_directories( ${KDE4_INCLUDE_DIR} ${QT_INCLUDES})

set(kio_krarc_PART_SRCS krarc.cpp)

-kde4_add_plugin(kio_krarc ${kio_krarc_PART_SRCS})
+add_library(kio_krarc ${kio_krarc_PART_SRCS})

target_link_libraries(kio_krarc ${KDE4_KDECORE_LIBS} ${KDE4_KIO_LIBS} ${KDE4_KFILE_LIBS})

install(TARGETS kio_krarc DESTINATION ${PLUGIN_INSTALL_DIR})
-install( FILES krarc.protocol DESTINATION ${SERVICES_INSTALL_DIR} )
+install(FILES krarc.protocol DESTINATION ${SERVICES_INSTALL_DIR} )
diff --git a/krusader/ActionMan/CMakeLists.txt b/krusader/ActionMan/CMakeLists.txt
index d302541..d0feff8 100644
--- a/krusader/ActionMan/CMakeLists.txt
+++ b/krusader/ActionMan/CMakeLists.txt
@@ -5,6 +5,6 @@ set(ActionMan_SRCS
useractionlistview.cpp
useractionpage.cpp)

-kde4_add_ui_files(ActionMan_SRCS actionproperty.ui)
+qt5_wrap_ui(ActionMan_SRCS actionproperty.ui)

-kde4_add_library(ActionMan STATIC ${ActionMan_SRCS})
+add_library(ActionMan STATIC ${ActionMan_SRCS})
diff --git a/krusader/BookMan/CMakeLists.txt b/krusader/BookMan/CMakeLists.txt
index 5049b7a..268ebd4 100644
--- a/krusader/BookMan/CMakeLists.txt
+++ b/krusader/BookMan/CMakeLists.txt
@@ -4,4 +4,4 @@ set(BookMan_SRCS
krbookmarkhandler.cpp
kraddbookmarkdlg.cpp)

-kde4_add_library(BookMan STATIC ${BookMan_SRCS})
+add_library(BookMan STATIC ${BookMan_SRCS})
diff --git a/krusader/CMakeLists.txt b/krusader/CMakeLists.txt
index 247e869..0e13edb 100644
--- a/krusader/CMakeLists.txt
+++ b/krusader/CMakeLists.txt
@@ -1,4 +1,7 @@
-include_directories(${KDE4_INCLUDES})
+include_directories(
+ ${CMAKE_CURRENT_SOURCE_DIR}
+ ${CMAKE_CURRENT_SOURCE_DIR}/session
+)

configure_file(krusaderversion.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/krusaderversion.h)

@@ -54,11 +57,13 @@ set(krusader_SRCS
krusaderapp.cpp
krtrashhandler.cpp)

-kde4_add_app_icon(krusader_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/hi*-app-krusader_user.png")
+# TODO KF5 port
+#kde4_add_app_icon(krusader_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/hi*-app-krusader_user.png")

-qt4_add_resources(krusader_RC_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/resources.qrc" )
+# TODO KF5 port
+#qt4_add_resources(krusader_RC_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/resources.qrc" )

-kde4_add_executable(krusader ${krusader_SRCS} ${krusader_RC_SRCS})
+add_executable(krusader ${krusader_SRCS} ${krusader_RC_SRCS})

target_link_libraries(krusader
Panel
@@ -111,4 +116,6 @@ install(FILES krusaderui.rc
splash.png
DESTINATION ${DATA_INSTALL_DIR}/krusader)

-kde4_install_icons( ${ICON_INSTALL_DIR} )
+
+# TODO KF5 port (change to ecm_install_icons)
+#kde4_install_icons( ${ICON_INSTALL_DIR} )
diff --git a/krusader/Dialogs/CMakeLists.txt b/krusader/Dialogs/CMakeLists.txt
index d1c9ce6..f107d6d 100644
--- a/krusader/Dialogs/CMakeLists.txt
+++ b/krusader/Dialogs/CMakeLists.txt
@@ -14,4 +14,4 @@ set(Dialogs_SRCS
percentalsplitter.cpp
krkeydialog.cpp)

-kde4_add_library(Dialogs STATIC ${Dialogs_SRCS})
+add_library(Dialogs STATIC ${Dialogs_SRCS})
diff --git a/krusader/DiskUsage/CMakeLists.txt b/krusader/DiskUsage/CMakeLists.txt
index 315395b..ebfb8dd 100644
--- a/krusader/DiskUsage/CMakeLists.txt
+++ b/krusader/DiskUsage/CMakeLists.txt
@@ -10,4 +10,4 @@ set(DiskUsage_SRCS
dulines.cpp
dufilelight.cpp )

-kde4_add_library(DiskUsage STATIC ${DiskUsage_SRCS} ${radialMap_SRCS} ${filelightParts_SRCS})
+add_library(DiskUsage STATIC ${DiskUsage_SRCS} ${radialMap_SRCS} ${filelightParts_SRCS})
diff --git a/krusader/Filter/CMakeLists.txt b/krusader/Filter/CMakeLists.txt
index 5793fe4..cee17ec 100644
--- a/krusader/Filter/CMakeLists.txt
+++ b/krusader/Filter/CMakeLists.txt
@@ -5,6 +5,6 @@ set(Filter_SRCS
filtertabs.cpp
filterdialog.cpp)

-kde4_add_library(Filter STATIC ${Filter_SRCS})
+add_library(Filter STATIC ${Filter_SRCS})

target_link_libraries(Filter Dialogs)
diff --git a/krusader/GUI/CMakeLists.txt b/krusader/GUI/CMakeLists.txt
index c6a84b1..f8833d2 100644
--- a/krusader/GUI/CMakeLists.txt
+++ b/krusader/GUI/CMakeLists.txt
@@ -13,4 +13,4 @@ set(GUI_SRCS
kcmdmodebutton.cpp
terminaldock.cpp)

-kde4_add_library(GUI STATIC ${GUI_SRCS})
+add_library(GUI STATIC ${GUI_SRCS})
diff --git a/krusader/KViewer/CMakeLists.txt b/krusader/KViewer/CMakeLists.txt
index 739cc87..113ad57 100644
--- a/krusader/KViewer/CMakeLists.txt
+++ b/krusader/KViewer/CMakeLists.txt
@@ -5,4 +5,4 @@ set(KViewer_SRCS
diskusageviewer.cpp
lister.cpp)

-kde4_add_library(KViewer STATIC ${KViewer_SRCS})
+add_library(KViewer STATIC ${KViewer_SRCS})
diff --git a/krusader/Konfigurator/CMakeLists.txt b/krusader/Konfigurator/CMakeLists.txt
index 6c8d96c..847d1b2 100644
--- a/krusader/Konfigurator/CMakeLists.txt
+++ b/krusader/Konfigurator/CMakeLists.txt
@@ -15,4 +15,4 @@ set(Konfigurator_SRCS
krresulttabledialog.cpp
searchobject.cpp)

-kde4_add_library(Konfigurator STATIC ${Konfigurator_SRCS})
+add_library(Konfigurator STATIC ${Konfigurator_SRCS})
diff --git a/krusader/Locate/CMakeLists.txt b/krusader/Locate/CMakeLists.txt
index 52eddbd..09384d3 100644
--- a/krusader/Locate/CMakeLists.txt
+++ b/krusader/Locate/CMakeLists.txt
@@ -1,4 +1,4 @@
set(Locate_SRCS
locate.cpp)

-kde4_add_library(Locate STATIC ${Locate_SRCS})
+add_library(Locate STATIC ${Locate_SRCS})
diff --git a/krusader/MountMan/CMakeLists.txt b/krusader/MountMan/CMakeLists.txt
index f6dbbbb..b048c2e 100644
--- a/krusader/MountMan/CMakeLists.txt
+++ b/krusader/MountMan/CMakeLists.txt
@@ -2,6 +2,6 @@ set(MountMan_SRCS
kmountmangui.cpp
kmountman.cpp)

-kde4_add_library(MountMan STATIC ${MountMan_SRCS})
+add_library(MountMan STATIC ${MountMan_SRCS})

target_link_libraries(MountMan Dialogs)
diff --git a/krusader/Panel/CMakeLists.txt b/krusader/Panel/CMakeLists.txt
index b1c90cb..7c25cc1 100644
--- a/krusader/Panel/CMakeLists.txt
+++ b/krusader/Panel/CMakeLists.txt
@@ -30,7 +30,7 @@ set(Panel_SRCS
krviewfactory.cpp
krmousehandler.cpp)

-kde4_add_library(Panel STATIC ${Panel_SRCS})
+add_library(Panel STATIC ${Panel_SRCS})

target_link_libraries(Panel Dialogs GUI KViewer ${KDE4_KFILE_LIBS} )

diff --git a/krusader/Queue/CMakeLists.txt b/krusader/Queue/CMakeLists.txt
index 6df1019..ab24b63 100644
--- a/krusader/Queue/CMakeLists.txt
+++ b/krusader/Queue/CMakeLists.txt
@@ -4,4 +4,4 @@ set(Queue_SRCS
queuewidget.cpp
queuedialog.cpp)

-kde4_add_library(Queue STATIC ${Queue_SRCS})
+add_library(Queue STATIC ${Queue_SRCS})
diff --git a/krusader/Search/CMakeLists.txt b/krusader/Search/CMakeLists.txt
index f0e8917..79c9d9b 100644
--- a/krusader/Search/CMakeLists.txt
+++ b/krusader/Search/CMakeLists.txt
@@ -2,6 +2,6 @@ set(Search_SRCS
krsearchmod.cpp
krsearchdialog.cpp)

-kde4_add_library(Search STATIC ${Search_SRCS})
+add_library(Search STATIC ${Search_SRCS})

target_link_libraries(Search Dialogs)
diff --git a/krusader/Splitter/CMakeLists.txt b/krusader/Splitter/CMakeLists.txt
index a817798..50ef2e2 100644
--- a/krusader/Splitter/CMakeLists.txt
+++ b/krusader/Splitter/CMakeLists.txt
@@ -4,4 +4,4 @@ set(Splitter_SRCS
splitter.cpp
combiner.cpp)

-kde4_add_library(Splitter STATIC ${Splitter_SRCS})
+add_library(Splitter STATIC ${Splitter_SRCS})
diff --git a/krusader/Synchronizer/CMakeLists.txt b/krusader/Synchronizer/CMakeLists.txt
index cfef779..5ba2572 100644
--- a/krusader/Synchronizer/CMakeLists.txt
+++ b/krusader/Synchronizer/CMakeLists.txt
@@ -6,6 +6,6 @@ set(Synchronizer_SRCS
synchronizertask.cpp
synchronizerdirlist.cpp)

-kde4_add_library(Synchronizer STATIC ${Synchronizer_SRCS})
+add_library(Synchronizer STATIC ${Synchronizer_SRCS})

target_link_libraries(Synchronizer Dialogs)
diff --git a/krusader/UserAction/CMakeLists.txt b/krusader/UserAction/CMakeLists.txt
index 7dbecab..9b60a44 100644
--- a/krusader/UserAction/CMakeLists.txt
+++ b/krusader/UserAction/CMakeLists.txt
@@ -5,4 +5,4 @@ set(UserAction_SRCS
kractionbase.cpp
useraction.cpp)

-kde4_add_library(UserAction STATIC ${UserAction_SRCS})
+add_library(UserAction STATIC ${UserAction_SRCS})
diff --git a/krusader/UserMenu/CMakeLists.txt b/krusader/UserMenu/CMakeLists.txt
index 06b7987..41f0d78 100644
--- a/krusader/UserMenu/CMakeLists.txt
+++ b/krusader/UserMenu/CMakeLists.txt
@@ -1,4 +1,4 @@
set(UserMenu_SRCS
usermenu.cpp)

-kde4_add_library(UserMenu STATIC ${UserMenu_SRCS})
+add_library(UserMenu STATIC ${UserMenu_SRCS})
diff --git a/krusader/VFS/CMakeLists.txt b/krusader/VFS/CMakeLists.txt
index 1c295a9..cf94fc6 100644
--- a/krusader/VFS/CMakeLists.txt
+++ b/krusader/VFS/CMakeLists.txt
@@ -15,7 +15,7 @@ set(VFS_SRCS
packjob.cpp
abstractthreadedjob.cpp)

-kde4_add_library(VFS STATIC ${VFS_SRCS})
+add_library(VFS STATIC ${VFS_SRCS})
if(ACL_FOUND)
target_link_libraries(VFS ${ACL_LIBS})
endif(ACL_FOUND)
diff --git a/pics/CMakeLists.txt b/pics/CMakeLists.txt
index 6b44c71..e663a8d 100644
--- a/pics/CMakeLists.txt
+++ b/pics/CMakeLists.txt
@@ -1,5 +1,5 @@
add_subdirectory(kde3)

-kde4_install_icons(${DATA_INSTALL_DIR}/krusader/icons)
+#ecm_install_icons(${DATA_INSTALL_DIR}/krusader/icons)

#install(FILES DESTINATION ${DATA_INSTALL_DIR}/krusader/icons)
diff --git a/pics/kde3/CMakeLists.txt b/pics/kde3/CMakeLists.txt
index 6d01d36..237b60d 100644
--- a/pics/kde3/CMakeLists.txt
+++ b/pics/kde3/CMakeLists.txt
@@ -1 +1 @@
-kde4_install_icons(${DATA_INSTALL_DIR}/krusader/icons)
+#ecm_install_icons(${DATA_INSTALL_DIR}/krusader/icons)
--
2.2.1


From 8b208d4685f7a7cf08d7dd46242cb3c93e473b05 Mon Sep 17 00:00:00 2001
From: Davide Gianforte <dav...@gengisdave.org>
Date: Mon, 9 Feb 2015 02:22:01 +0100
Subject: [PATCH 2/2] Finished iso porting.

libkio_iso.so is successfully compiled and it's not linked against Qt4/KDE4.
---
iso/CMakeLists.txt | 2 +-
iso/iso.cpp | 22 +++++++++++-----------
iso/iso.h | 1 +
iso/kiso.cpp | 22 ++++++++++++----------
iso/kiso.h | 6 +++---
iso/kisodirectory.cpp | 6 +++++-
iso/kisodirectory.h | 7 +++++--
iso/kisofile.cpp | 2 +-
iso/kisofile.h | 2 +-
9 files changed, 40 insertions(+), 30 deletions(-)

diff --git a/iso/CMakeLists.txt b/iso/CMakeLists.txt
index dc912ba..6ddc944 100644
--- a/iso/CMakeLists.txt
+++ b/iso/CMakeLists.txt
@@ -13,7 +13,7 @@ set(kio_iso_PART_SRCS

add_library(kio_iso ${kio_iso_PART_SRCS} ${libisofs_SRCS})

-target_link_libraries(kio_iso ${KDE4_KDECORE_LIBS} ${KDE4_KIO_LIBS} ${ZLIB_LIBRARY})
+target_link_libraries(kio_iso KF5::Archive KF5::KDELibs4Support ${KDE4_KDECORE_LIBS} ${KDE4_KIO_LIBS} ${ZLIB_LIBRARY})

install(TARGETS kio_iso DESTINATION ${PLUGIN_INSTALL_DIR})
install(FILES iso.protocol DESTINATION ${SERVICES_INSTALL_DIR})
diff --git a/iso/iso.cpp b/iso/iso.cpp
index 0c21e9b..1851681 100644
--- a/iso/iso.cpp
+++ b/iso/iso.cpp
@@ -32,11 +32,11 @@
#include <QtCore/QDir>
#include <QtCore/QByteArray>

-#include <kde_file.h>
-#include <KUrl>
-#include <KDebug>
-#include <KComponentData>
-#include <KMimeType>
+#include <KDELibs4Support/kde_file.h>
+#include <KDELibs4Support/kurl.h>
+#include <KDELibs4Support/kdebug.h>
+#include <KDELibs4Support/kcomponentdata.h>
+#include <KDELibs4Support/kmimetype.h>

#include "libisofs/iso_fs.h"
#include "kiso.h"
@@ -47,7 +47,7 @@ using namespace KIO;
extern "C"
{

- int KDE_EXPORT kdemain(int argc, char **argv) {
+ int /*KDE_EXPORT*/ kdemain(int argc, char **argv) {
KComponentData instance("kio_iso", "krusader");

kDebug() << "Starting " << getpid() << endl;
@@ -198,7 +198,7 @@ void kio_isoProtocol::createUDSEntry(const KArchiveEntry * isoEntry, UDSEntry &

entry.insert(UDSEntry::UDS_USER, isoEntry->user());
entry.insert(UDSEntry::UDS_GROUP, isoEntry->group());
- entry.insert(UDSEntry::UDS_MODIFICATION_TIME, isoEntry->date());
+ entry.insert((uint)UDSEntry::UDS_MODIFICATION_TIME, isoEntry->date().toTime_t());
entry.insert(UDSEntry::UDS_ACCESS_TIME,
isoEntry->isFile() ? ((KIsoFile *)isoEntry)->adate() :
((KIsoDirectory *)isoEntry)->adate());
@@ -439,10 +439,10 @@ void kio_isoProtocol::getFile(const KIsoFile *isoFileEntry, const QString &path)
if (fileData.size() == 0) break;
}
if (!mime) {
- KSharedPtr<KMimeType> result = KMimeType::findByNameAndContent(path, fileData);
- if (result) {
- kDebug() << "Emitting mimetype " << result->name() << endl;
- mimeType(result->name());
+ //KSharedPtr<KMimeType> result = KMimeType::findByNameAndContent(path, fileData);
+ if (KMimeType::findByNameAndContent(path, fileData)) {
+ kDebug() << "Emitting mimetype " << KMimeType::findByNameAndContent(path, fileData)->name() << endl;
+ mimeType(KMimeType::findByNameAndContent(path, fileData)->name());
mime = true;
}
}
diff --git a/iso/iso.h b/iso/iso.h
index 311412e..b075254 100644
--- a/iso/iso.h
+++ b/iso/iso.h
@@ -23,6 +23,7 @@
#define ISO_H

#include <QByteArray>
+#include <KDELibs4Support/kurl.h>

#include <kio/slavebase.h>
#include <sys/types.h>
diff --git a/iso/kiso.cpp b/iso/kiso.cpp
index 0319dc0..5c3d633 100644
--- a/iso/kiso.cpp
+++ b/iso/kiso.cpp
@@ -36,8 +36,9 @@

#include <kde_file.h>
#include <KDebug>
-#include <KUrl>
-#include <KMimeType>
+#include <KDELibs4Support/kurl.h>
+#include <KDELibs4Support/kmimetype.h>
+#include <KDELibs4Support/ksharedptr.h>
#include <KConfig>
#include <KConfigGroup>
#include <KFilterBase>
@@ -119,9 +120,9 @@ KIso::KIso(const QString& filename, const QString & _mimetype)
QString mimetype(_mimetype);
bool forced = true;
if (mimetype.isEmpty()) {
- KSharedPtr<KMimeType> result = KMimeType::findByFileContent(filename);
- if (result)
- mimetype = result->name();
+ //KSharedPtr<KMimeType> result = KMimeType::findByFileContent(filename);
+ if (KMimeType::findByFileContent(filename))
+ mimetype = KMimeType::findByFileContent(filename)->name();

kDebug() << "KIso::KIso mimetype=" << mimetype << endl;

@@ -306,10 +307,11 @@ void KIso::addBoot(struct el_torito_boot_descriptor* bootdesc)
QString path;
KIsoFile *entry;

- entry = new KIsoFile(this, "Catalog", dirent->permissions() & ~S_IFDIR,
+ path = "Catalog";
+ entry = new KIsoFile(this, path, dirent->permissions() & ~S_IFDIR,
dirent->date(), dirent->adate(), dirent->cdate(),
dirent->user(), dirent->group(), QString(),
- (long long)isonum_731(bootdesc->boot_catalog) << (long long)11, 2048);
+ (long long)isonum_731(bootdesc->boot_catalog) << (long long)11, (long long)2048);
dirent->addEntry(entry);
if (!ReadBootTable(&readf, isonum_731(bootdesc->boot_catalog), &boot, this)) {
i = 1;
@@ -471,17 +473,17 @@ bool KIso::writeSymLink(const QString &, const QString &, const QString &, const
return false;
}

-bool KIso::doWriteDir(const QString&, const QString&, const QString&, mode_t, time_t, time_t, time_t)
+bool KIso::doWriteDir(const QString&, const QString&, const QString&, mode_t, const QDateTime &atime, const QDateTime &mtime, const QDateTime &ctime)
{
return false;
}

-bool KIso::doWriteSymLink(const QString &, const QString &, const QString &, const QString &, mode_t, time_t, time_t, time_t)
+bool KIso::doWriteSymLink(const QString &, const QString &, const QString &, const QString &, mode_t, const QDateTime &atime, const QDateTime &mtime, const QDateTime &ctime)
{
return false;
}

-bool KIso::doPrepareWriting(const QString& , const QString& , const QString& , qint64, mode_t, time_t, time_t, time_t)
+bool KIso::doPrepareWriting(const QString& , const QString& , const QString& , qint64, mode_t, const QDateTime &atime, const QDateTime &mtime, const QDateTime &ctime)
{
return false;
}
diff --git a/iso/kiso.h b/iso/kiso.h
index dd66820..7aafb39 100644
--- a/iso/kiso.h
+++ b/iso/kiso.h
@@ -96,9 +96,9 @@ protected:
void readParams();
virtual bool openArchive(QIODevice::OpenMode mode);
virtual bool closeArchive();
- virtual bool doWriteDir(const QString&, const QString&, const QString&, mode_t, time_t, time_t, time_t);
- virtual bool doWriteSymLink(const QString &, const QString &, const QString &, const QString &, mode_t, time_t, time_t, time_t);
- virtual bool doPrepareWriting(const QString& , const QString& , const QString& , qint64, mode_t, time_t, time_t, time_t);
+ virtual bool doWriteDir(const QString&, const QString&, const QString&, mode_t, const QDateTime &, const QDateTime &, const QDateTime &);
+ virtual bool doWriteSymLink(const QString &, const QString &, const QString &, const QString &, mode_t, const QDateTime &, const QDateTime &, const QDateTime &);
+ virtual bool doPrepareWriting(const QString& , const QString& , const QString& , qint64, mode_t, const QDateTime &, const QDateTime &, const QDateTime &);
virtual bool doFinishWriting(qint64);

private:
diff --git a/iso/kisodirectory.cpp b/iso/kisodirectory.cpp
index 6a147f6..45bc5fa 100644
--- a/iso/kisodirectory.cpp
+++ b/iso/kisodirectory.cpp
@@ -21,7 +21,11 @@
KIsoDirectory::KIsoDirectory(KArchive* archive, const QString& name, int access,
int date, int adate, int cdate, const QString& user, const QString& group,
const QString& symlink) :
- KArchiveDirectory(archive, name, access, date, user, group, symlink)
+ KArchiveDirectory(archive, name, access, QDateTime::fromTime_t(date), user, group, symlink)
+
+// KArchiveDirectory(KArchive *archive, const QString &name, int access, const QDateTime &date,
+// const QString &user, const QString &group,
+// const QString &symlink);
{


diff --git a/iso/kisodirectory.h b/iso/kisodirectory.h
index ce6e059..ce33b73 100644
--- a/iso/kisodirectory.h
+++ b/iso/kisodirectory.h
@@ -20,7 +20,7 @@
#define KISODIRECTORY_H

#include <QtCore/QString>
-#include <karchive.h>
+#include <KArchive/KArchive>

class KIsoDirectory : public KArchiveDirectory
{
@@ -29,6 +29,9 @@ public:
int adate, int cdate, const QString& user, const QString& group,
const QString& symlink);
~KIsoDirectory();
+ int date() const {
+ return m_date;
+ }
int adate() const {
return m_adate;
}
@@ -36,7 +39,7 @@ public:
return m_cdate;
}
private:
- int m_adate, m_cdate;
+ int m_date, m_adate, m_cdate;
};

#endif
diff --git a/iso/kisofile.cpp b/iso/kisofile.cpp
index a14ca8c..47be706 100644
--- a/iso/kisofile.cpp
+++ b/iso/kisofile.cpp
@@ -22,7 +22,7 @@
KIsoFile::KIsoFile(KArchive* archive, const QString& name, int access,
int date, int adate, int cdate, const QString& user, const QString& group,
const QString& symlink, long long pos, long long size) :
- KArchiveFile(archive, name, access, date, user, group, symlink, pos, size)
+ KArchiveFile(archive, name, access, QDateTime::fromTime_t(date), user, group, symlink, pos, size)
{


diff --git a/iso/kisofile.h b/iso/kisofile.h
index 8382aff..907bae8 100644
--- a/iso/kisofile.h
+++ b/iso/kisofile.h
@@ -20,7 +20,7 @@
#define KISOFILE_H

#include <QtCore/QString>
-#include <karchive.h>
+#include <KArchive/KArchive>

class KIsoFile : public KArchiveFile
{
--
2.2.1


Reply all
Reply to author
Forward
0 new messages