Mercurial > vba-linux
annotate src/win32/7zip/7z/CPP/7zip/Archive/Rar/RarItem.cpp @ 1:f9f4f1b99eed
importing src directory
author | Robert McIntyre <rlm@mit.edu> |
---|---|
date | Sat, 03 Mar 2012 10:31:27 -0600 |
parents | |
children |
rev | line source |
---|---|
rlm@1 | 1 // RarItem.cpp |
rlm@1 | 2 |
rlm@1 | 3 #include "StdAfx.h" |
rlm@1 | 4 |
rlm@1 | 5 #include "RarItem.h" |
rlm@1 | 6 |
rlm@1 | 7 namespace NArchive{ |
rlm@1 | 8 namespace NRar{ |
rlm@1 | 9 |
rlm@1 | 10 bool CItem::IgnoreItem() const |
rlm@1 | 11 { |
rlm@1 | 12 switch(HostOS) |
rlm@1 | 13 { |
rlm@1 | 14 case NHeader::NFile::kHostMSDOS: |
rlm@1 | 15 case NHeader::NFile::kHostOS2: |
rlm@1 | 16 case NHeader::NFile::kHostWin32: |
rlm@1 | 17 return ((Attrib & NHeader::NFile::kLabelFileAttribute) != 0); |
rlm@1 | 18 } |
rlm@1 | 19 return false; |
rlm@1 | 20 } |
rlm@1 | 21 |
rlm@1 | 22 bool CItem::IsDir() const |
rlm@1 | 23 { |
rlm@1 | 24 if (GetDictSize() == NHeader::NFile::kDictDirectoryValue) |
rlm@1 | 25 return true; |
rlm@1 | 26 switch(HostOS) |
rlm@1 | 27 { |
rlm@1 | 28 case NHeader::NFile::kHostMSDOS: |
rlm@1 | 29 case NHeader::NFile::kHostOS2: |
rlm@1 | 30 case NHeader::NFile::kHostWin32: |
rlm@1 | 31 if ((Attrib & FILE_ATTRIBUTE_DIRECTORY) != 0) |
rlm@1 | 32 return true; |
rlm@1 | 33 } |
rlm@1 | 34 return false; |
rlm@1 | 35 } |
rlm@1 | 36 |
rlm@1 | 37 UInt32 CItem::GetWinAttributes() const |
rlm@1 | 38 { |
rlm@1 | 39 UInt32 winAttributes; |
rlm@1 | 40 switch(HostOS) |
rlm@1 | 41 { |
rlm@1 | 42 case NHeader::NFile::kHostMSDOS: |
rlm@1 | 43 case NHeader::NFile::kHostOS2: |
rlm@1 | 44 case NHeader::NFile::kHostWin32: |
rlm@1 | 45 winAttributes = Attrib; |
rlm@1 | 46 break; |
rlm@1 | 47 default: |
rlm@1 | 48 winAttributes = 0; // must be converted from unix value; |
rlm@1 | 49 } |
rlm@1 | 50 if (IsDir()) |
rlm@1 | 51 winAttributes |= NHeader::NFile::kWinFileDirectoryAttributeMask; |
rlm@1 | 52 return winAttributes; |
rlm@1 | 53 } |
rlm@1 | 54 |
rlm@1 | 55 }} |