summaryrefslogtreecommitdiffstats
path: root/tdecore
diff options
context:
space:
mode:
authorPhilippe Mavridis <philippe.mavridis@yandex.com>2025-06-24 16:52:05 +0300
committerPhilippe Mavridis <philippe.mavridis@yandex.com>2025-08-03 12:48:27 +0300
commit05da60e3b03b35a1f7aa537be39376350225e936 (patch)
treea54a6e6a7ade33be4156848b228447d4993f5446 /tdecore
parent2e76346c68e5c1db6b6058014c024bb70fec5e34 (diff)
downloadtdelibs-feat/extended-attributes.tar.gz
tdelibs-feat/extended-attributes.zip
Add basic extended attributes supportfeat/extended-attributes
This commit adds extended attributes support to TDEIO, UDS, tdeio_file and a read-write plugin for the file properties dialog. It also adds attribute display support to TDEFileItem, used by KDesktop and Konqueror to show file tooltips. Signed-off-by: Philippe Mavridis <philippe.mavridis@yandex.com>
Diffstat (limited to 'tdecore')
-rw-r--r--tdecore/kprotocolinfo_tdecore.cpp19
1 files changed, 14 insertions, 5 deletions
diff --git a/tdecore/kprotocolinfo_tdecore.cpp b/tdecore/kprotocolinfo_tdecore.cpp
index 3d08cccd5..1ce9f4e3a 100644
--- a/tdecore/kprotocolinfo_tdecore.cpp
+++ b/tdecore/kprotocolinfo_tdecore.cpp
@@ -28,7 +28,6 @@
#include <tdestandarddirs.h>
#include <tdeglobal.h>
#include <tdeapplication.h>
-#include <kdebug.h>
#include <ksimpleconfig.h>
#include <tdeconfig.h>
#include <kstringhandler.h>
@@ -71,6 +70,8 @@ KProtocolInfo::KProtocolInfo(const TQString &path)
m_supportsDeleting = config.readBoolEntry( "deleting", false );
m_supportsLinking = config.readBoolEntry( "linking", false );
m_supportsMoving = config.readBoolEntry( "moving", false );
+ m_supportsReadingAttrs = config.readBoolEntry( "readattr", false );
+ m_supportsWritingAttrs = config.readBoolEntry( "writeattr", false );
m_canCopyFromFile = config.readBoolEntry( "copyFromFile", false );
m_canCopyToFile = config.readBoolEntry( "copyToFile", false );
d->canRenameFromFile = config.readBoolEntry( "renameFromFile", false );
@@ -159,7 +160,8 @@ KProtocolInfo::load( TQDataStream& _str)
i_supportsMoving, i_determineMimetypeFromExtension,
i_canCopyFromFile, i_canCopyToFile, i_showPreviews,
i_uriMode, i_canRenameFromFile, i_canRenameToFile,
- i_canDeleteRecursive, i_fileNameUsedForCopying;
+ i_canDeleteRecursive, i_fileNameUsedForCopying,
+ i_supportsReadingAttrs, i_supportsWritingAttrs;
_str >> m_name >> m_exec >> m_listing >> m_defaultMimetype
>> i_determineMimetypeFromExtension
@@ -175,7 +177,8 @@ KProtocolInfo::load( TQDataStream& _str)
>> d->extraFields >> i_showPreviews >> i_uriMode
>> d->capabilities >> d->proxyProtocol
>> i_canRenameFromFile >> i_canRenameToFile
- >> i_canDeleteRecursive >> i_fileNameUsedForCopying;
+ >> i_canDeleteRecursive >> i_fileNameUsedForCopying
+ >> i_supportsReadingAttrs >> i_supportsWritingAttrs;
m_inputType = (Type) i_inputType;
m_outputType = (Type) i_outputType;
@@ -188,6 +191,8 @@ KProtocolInfo::load( TQDataStream& _str)
m_supportsDeleting = (i_supportsDeleting != 0);
m_supportsLinking = (i_supportsLinking != 0);
m_supportsMoving = (i_supportsMoving != 0);
+ m_supportsReadingAttrs = (i_supportsReadingAttrs != 0);
+ m_supportsWritingAttrs = (i_supportsWritingAttrs != 0);
m_canCopyFromFile = (i_canCopyFromFile != 0);
m_canCopyToFile = (i_canCopyToFile != 0);
d->canRenameFromFile = (i_canRenameFromFile != 0);
@@ -214,7 +219,8 @@ KProtocolInfo::save( TQDataStream& _str)
i_supportsMoving, i_determineMimetypeFromExtension,
i_canCopyFromFile, i_canCopyToFile, i_showPreviews,
i_uriMode, i_canRenameFromFile, i_canRenameToFile,
- i_canDeleteRecursive, i_fileNameUsedForCopying;
+ i_canDeleteRecursive, i_fileNameUsedForCopying,
+ i_supportsReadingAttrs, i_supportsWritingAttrs;
i_inputType = (TQ_INT32) m_inputType;
i_outputType = (TQ_INT32) m_outputType;
@@ -227,6 +233,8 @@ KProtocolInfo::save( TQDataStream& _str)
i_supportsDeleting = m_supportsDeleting ? 1 : 0;
i_supportsLinking = m_supportsLinking ? 1 : 0;
i_supportsMoving = m_supportsMoving ? 1 : 0;
+ i_supportsReadingAttrs = m_supportsReadingAttrs ? 1 : 0;
+ i_supportsWritingAttrs = m_supportsWritingAttrs ? 1 : 0;
i_canCopyFromFile = m_canCopyFromFile ? 1 : 0;
i_canCopyToFile = m_canCopyToFile ? 1 : 0;
i_canRenameFromFile = d->canRenameFromFile ? 1 : 0;
@@ -251,7 +259,8 @@ KProtocolInfo::save( TQDataStream& _str)
<< d->extraFields << i_showPreviews << i_uriMode
<< d->capabilities << d->proxyProtocol
<< i_canRenameFromFile << i_canRenameToFile
- << i_canDeleteRecursive << i_fileNameUsedForCopying;
+ << i_canDeleteRecursive << i_fileNameUsedForCopying
+ << i_supportsReadingAttrs << i_supportsWritingAttrs;
}