📄 recent.cpp
字号:
//
// Recent File 僋儔僗
//
#include <TCHAR.h>
#include "DebugOut.h"
#include "PathLib.h"
#include "VirtuaNESres.h"
#include "Recent.h"
CHAR CRecent::m_RecentName[RECENT_MAX][_MAX_PATH];
CHAR CRecent::m_RecentPath[RECENT_MAX][_MAX_PATH];
CHAR CRecent::m_TempPath[_MAX_PATH];
LPCSTR CRecent::GetName( INT nID )
{
// CRecent::Add 偱摨偠億僀儞僞傪巜偟偰栠偭偰偔傞帠偑偁傞偺偱堦扷僥儞億儔儕偵僐僺乕
::strcpy( m_TempPath, m_RecentName[nID] );
return (LPCSTR)m_TempPath;
}
LPCSTR CRecent::GetPath( INT nID )
{
return (LPCSTR)m_RecentPath[nID];
}
void CRecent::MakeManuPath( LPSTR lpszPath )
{
string FullPath = lpszPath;
string FileName = CPathlib::SplitFnameExt( lpszPath );
// 30暥帤埲壓偼偦偺傑傑
if( FullPath.size() <= 30 )
return;
// 僼傽僀儖柤偑30暥帤埲忋偺応崌
if( ::strlen( FileName.c_str() ) >= 30 ) {
::strcpy( lpszPath, FileName.c_str() );
return;
}
LPCSTR lpszCur = lpszPath + 2;
if( lpszPath[0] == '\\' && lpszPath[1] == '\\' ) {
while (*lpszCur != '\\') {
lpszCur = _tcsinc(lpszCur);
}
}
if( ::strlen(FullPath.c_str()) - ::strlen(FileName.c_str()) > 3 ) {
lpszCur = _tcsinc(lpszCur);
while( *lpszCur != '\\' ) {
lpszCur = _tcsinc(lpszCur);
}
}
INT nVolume = lpszCur - lpszPath;
if( 30 < nVolume+5+::strlen(FileName.c_str()) ) {
::strcpy( lpszPath, FileName.c_str() );
return;
}
while ( nVolume+4+::strlen(lpszCur) > 30 ) {
do {
lpszCur = _tcsinc(lpszCur);
}
while( *lpszCur != '\\' );
}
lpszPath[nVolume] = '\0';
::strcat( lpszPath, "\\..." );
::strcat( lpszPath, lpszCur );
}
void CRecent::UpdateMenu( HMENU hMenu )
{
// 儊僯儏乕側偟丠
if( !hMenu )
return;
// 抬操(&F)儊僯儏乕偺庢摼
HMENU hSubMenu = ::GetSubMenu( hMenu, 0 );
// 嵟嬤巊偭偨太倮
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -