Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/kornelski/7z.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'CPP/7zip/FileManager/PropertyName.cpp')
-rwxr-xr-xCPP/7zip/FileManager/PropertyName.cpp74
1 files changed, 74 insertions, 0 deletions
diff --git a/CPP/7zip/FileManager/PropertyName.cpp b/CPP/7zip/FileManager/PropertyName.cpp
new file mode 100755
index 00000000..848a8855
--- /dev/null
+++ b/CPP/7zip/FileManager/PropertyName.cpp
@@ -0,0 +1,74 @@
+// PropertyName.cpp
+
+#include "StdAfx.h"
+
+#include "../PropID.h"
+#include "Windows/ResourceString.h"
+#include "resource.h"
+#include "PropertyName.h"
+#include "Resource/PropertyName/resource.h"
+#include "LangUtils.h"
+
+struct CPropertyIDNamePair
+{
+ PROPID PropID;
+ UINT ResourceID;
+ UINT LangID;
+};
+
+static CPropertyIDNamePair kPropertyIDNamePairs[] =
+{
+ { kpidPath, IDS_PROPERTY_PATH, 0x02000203 },
+ { kpidName, IDS_PROPERTY_NAME, 0x02000204 },
+ // { kpidExtension, L"Extension" },
+ { kpidIsFolder, IDS_PROPERTY_IS_FOLDER, 0x02000206},
+ { kpidSize, IDS_PROPERTY_SIZE, 0x02000207},
+ { kpidPackedSize, IDS_PROPERTY_PACKED_SIZE, 0x02000208 },
+ { kpidAttributes, IDS_PROPERTY_ATTRIBUTES, 0x02000209 },
+ { kpidCreationTime, IDS_PROPERTY_CREATION_TIME, 0x0200020A },
+ { kpidLastAccessTime, IDS_PROPERTY_LAST_ACCESS_TIME, 0x0200020B },
+ { kpidLastWriteTime, IDS_PROPERTY_LAST_WRITE_TIME, 0x0200020C },
+ { kpidSolid, IDS_PROPERTY_SOLID, 0x0200020D },
+ { kpidCommented, IDS_PROPERTY_C0MMENTED, 0x0200020E },
+ { kpidEncrypted, IDS_PROPERTY_ENCRYPTED, 0x0200020F },
+ { kpidSplitBefore, IDS_PROPERTY_SPLIT_BEFORE, 0x02000210 },
+ { kpidSplitAfter, IDS_PROPERTY_SPLIT_AFTER, 0x02000211 },
+ { kpidDictionarySize, IDS_PROPERTY_DICTIONARY_SIZE, 0x02000212 },
+ { kpidCRC, IDS_PROPERTY_CRC, 0x02000213 },
+ { kpidType, IDS_PROPERTY_FILE_TYPE, 0x02000214},
+ { kpidIsAnti, IDS_PROPERTY_ANTI, 0x02000215 },
+ { kpidMethod, IDS_PROPERTY_METHOD, 0x02000216 },
+ { kpidHostOS, IDS_PROPERTY_HOST_OS, 0x02000217 },
+ { kpidFileSystem, IDS_PROPERTY_FILE_SYSTEM, 0x02000218},
+ { kpidUser, IDS_PROPERTY_USER, 0x02000219},
+ { kpidGroup, IDS_PROPERTY_GROUP, 0x0200021A},
+ { kpidBlock, IDS_PROPERTY_BLOCK, 0x0200021B },
+ { kpidComment, IDS_PROPERTY_COMMENT, 0x0200021C },
+ { kpidPosition, IDS_PROPERTY_POSITION, 0x0200021D },
+ { kpidPrefix, IDS_PROPERTY_PREFIX, 0x0200021E },
+
+ { kpidTotalSize, IDS_PROPERTY_TOTAL_SIZE, 0x03031100 },
+ { kpidFreeSpace, IDS_PROPERTY_FREE_SPACE, 0x03031101 },
+ { kpidClusterSize, IDS_PROPERTY_CLUSTER_SIZE, 0x03031102},
+ { kpidVolumeName, IDS_PROPERTY_VOLUME_NAME, 0x03031103 },
+
+ { kpidLocalName, IDS_PROPERTY_LOCAL_NAME, 0x03031200 },
+ { kpidProvider, IDS_PROPERTY_PROVIDER, 0x03031201 }
+};
+
+int FindProperty(PROPID propID)
+{
+ for (int i = 0; i < sizeof(kPropertyIDNamePairs) / sizeof(kPropertyIDNamePairs[0]); i++)
+ if(kPropertyIDNamePairs[i].PropID == propID)
+ return i;
+ return -1;
+}
+
+UString GetNameOfProperty(PROPID propID)
+{
+ int index = FindProperty(propID);
+ if (index < 0)
+ return UString();
+ const CPropertyIDNamePair &pair = kPropertyIDNamePairs[index];
+ return LangString(pair.ResourceID, pair.LangID);
+}