ReactOS 0.4.17-dev-940-g8bd6e85
CRecentFileEntry Class Reference

#include <CRecentFileEntry.h>

Public Member Functions

 CRecentFileEntry (const CAtlString &FileName)
 
 ~CRecentFileEntry ()
 
const CAtlString & FileName () const
 
const CAtlString & DisplayName () const
 

Private Member Functions

void BuildDisplayName ()
 

Private Attributes

CAtlString m_FileName
 
CAtlString m_DisplayName
 

Detailed Description

Definition at line 10 of file CRecentFileEntry.h.

Constructor & Destructor Documentation

◆ CRecentFileEntry()

CRecentFileEntry::CRecentFileEntry ( const CAtlString &  FileName)

Definition at line 13 of file CRecentFileEntry.cpp.

14{
17}
CAtlString m_FileName
const CAtlString & FileName() const

◆ ~CRecentFileEntry()

CRecentFileEntry::~CRecentFileEntry ( )

Definition at line 19 of file CRecentFileEntry.cpp.

20{
21 delete m_FileName;
22 delete m_DisplayName;
23}
CAtlString m_DisplayName

Member Function Documentation

◆ BuildDisplayName()

void CRecentFileEntry::BuildDisplayName ( )
private

Definition at line 26 of file CRecentFileEntry.cpp.

27{
28 WCHAR SystemDirectory[MAX_PATH];
30
31 Length = ::GetSystemDirectoryW(SystemDirectory, MAX_PATH);
32
33 if (_wcsnicmp(m_FileName.GetString(), SystemDirectory, Length) == 0)
34 {
36 }
37 else
38 {
39 PWSTR pBackslash1 = NULL, pBackslash2 = NULL, pBackslash3 = NULL;
40
41 pBackslash1 = wcschr(m_FileName.GetString(), L'\\');
42
43 if (pBackslash1)
44 pBackslash2 = wcschr(pBackslash1 + 1, L'\\');
45
46 if (pBackslash2)
47 pBackslash3 = wcsrchr(m_FileName.GetString(), L'\\');
48
49 if (pBackslash1 && pBackslash2 && pBackslash3 && (pBackslash2 != pBackslash3))
50 {
51 int prefixLength = pBackslash2 - m_FileName.GetString();
52 CAtlString str(m_FileName.Left(prefixLength + 1));
53 str.Append(L"...");
54 str.Append(pBackslash3);
56 }
57 else
58 {
60 }
61 }
62}
PXSTR GetString() noexcept
Definition: atlsimpstr.h:367
CStringT Left(int nCount) const
Definition: cstringt.h:776
CStringT Mid(int iFirst, int nCount) const
Definition: cstringt.h:748
#define NULL
Definition: types.h:112
#define wcschr
Definition: compat.h:17
#define wcsrchr
Definition: compat.h:16
#define MAX_PATH
Definition: compat.h:34
UINT WINAPI GetSystemDirectoryW(OUT LPWSTR lpBuffer, IN UINT uSize)
Definition: path.c:2331
_ACRTIMP int __cdecl _wcsnicmp(const wchar_t *, const wchar_t *, size_t)
Definition: wcs.c:200
#define L(x)
Definition: resources.c:13
unsigned int UINT
Definition: sysinfo.c:13
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:102
short WCHAR
Definition: pedump.c:58
const WCHAR * str
uint16_t * PWSTR
Definition: typedefs.h:56

Referenced by CRecentFileEntry().

◆ DisplayName()

const CAtlString & CRecentFileEntry::DisplayName ( ) const
inline

Definition at line 23 of file CRecentFileEntry.h.

23{ return m_DisplayName; }

Referenced by CMainWnd::UpdateRecentFilesMenu().

◆ FileName()

const CAtlString & CRecentFileEntry::FileName ( ) const
inline

Definition at line 22 of file CRecentFileEntry.h.

22{ return m_FileName; }

Referenced by CRecentFileEntry(), and CMainWnd::OnFileRecent().

Member Data Documentation

◆ m_DisplayName

CAtlString CRecentFileEntry::m_DisplayName
private

Definition at line 14 of file CRecentFileEntry.h.

Referenced by BuildDisplayName(), DisplayName(), and ~CRecentFileEntry().

◆ m_FileName

CAtlString CRecentFileEntry::m_FileName
private

Definition at line 13 of file CRecentFileEntry.h.

Referenced by BuildDisplayName(), CRecentFileEntry(), FileName(), and ~CRecentFileEntry().


The documentation for this class was generated from the following files: