mirror of
https://github.com/chibicitiberiu/rainmeter-studio.git
synced 2024-02-24 04:33:31 +00:00
Removed MBM5 plugin from build.
Added FolderInfo plugin into build. Moved pcre-8.10 from Plugins\PluginWebParser into Library\.
This commit is contained in:
84
Plugins/PluginFolderInfo/FolderInfo.h
Normal file
84
Plugins/PluginFolderInfo/FolderInfo.h
Normal file
@ -0,0 +1,84 @@
|
||||
#pragma once
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <windows.h>
|
||||
#include "..\..\Library\pcre-8.10\pcre.h"
|
||||
|
||||
namespace PluginFolderInfo {
|
||||
|
||||
struct FileInfo
|
||||
{
|
||||
std::wstring Name;
|
||||
bool IsFolder;
|
||||
UINT64 Size;
|
||||
|
||||
FileInfo()
|
||||
{
|
||||
IsFolder = false;
|
||||
Size = 0;
|
||||
}
|
||||
};
|
||||
|
||||
class FolderInfo
|
||||
{
|
||||
private:
|
||||
bool mySubFolderFlag;
|
||||
bool myHiddenFileFlag;
|
||||
bool mySystemFileFlag;
|
||||
std::wstring myPath;
|
||||
UINT64 mySize;
|
||||
unsigned int myFileCount;
|
||||
unsigned int myFolderCount;
|
||||
pcre* myRegExFilter;
|
||||
pcre_extra* myRegExFilterExtra;
|
||||
DWORD myLastUpdateTime;
|
||||
|
||||
private:
|
||||
void Clear();
|
||||
void CalculateSize();
|
||||
void SetPath(const wchar_t* aPath);
|
||||
|
||||
public:
|
||||
DWORD GetLastUpdateTime()
|
||||
{
|
||||
return myLastUpdateTime;
|
||||
}
|
||||
|
||||
void SetRegExFilter(const wchar_t* aFilter);
|
||||
|
||||
void IncludeSubFolders(bool aFlag)
|
||||
{
|
||||
mySubFolderFlag = aFlag;
|
||||
}
|
||||
|
||||
void IncludeHiddenFiles(bool aFlag)
|
||||
{
|
||||
myHiddenFileFlag = aFlag;
|
||||
}
|
||||
|
||||
void IncludeSystemFiles(bool aFlag)
|
||||
{
|
||||
mySystemFileFlag = aFlag;
|
||||
}
|
||||
|
||||
UINT64 GetSize()
|
||||
{
|
||||
return mySize;
|
||||
}
|
||||
|
||||
int GetFileCount()
|
||||
{
|
||||
return myFileCount;
|
||||
}
|
||||
|
||||
int GetFolderCount()
|
||||
{
|
||||
return myFolderCount;
|
||||
}
|
||||
|
||||
FolderInfo(const wchar_t* aPath);
|
||||
void Update();
|
||||
}; // class FolderInfo
|
||||
|
||||
} // namespace PluginFolderInfo
|
Reference in New Issue
Block a user