remove unneeded code

This commit is contained in:
Pavel Yosifovich
2022-12-18 19:15:49 -05:00
parent cbe02ee253
commit 8fcd19e09f
5 changed files with 34 additions and 60 deletions
-51
View File
@@ -80,57 +80,6 @@ WFPObject<FWPM_SUBLAYER> WFPEngine::GetSublayerByKey(GUID const& key) const {
return WFPObject(sublayer);
}
WFPProviderContextInfo WFPEngine::InitProviderContext(FWPM_PROVIDER_CONTEXT* p, bool includeData) {
WFPProviderContextInfo pi;
pi.Name = ParseMUIString(p->displayData.name);
pi.Desc = ParseMUIString(p->displayData.description);
pi.ProviderContextKey = p->providerContextKey;
pi.ProviderContextId = p->providerContextId;
pi.Flags = static_cast<WFPProviderContextFlags>(p->flags);
pi.ProviderDataSize = p->providerData.size;
pi.ProviderKey = p->providerKey ? *p->providerKey : GUID_NULL;
pi.Type = static_cast<WFPProviderContextType>(p->type);
if (includeData) {
pi.ProviderData.resize(p->providerData.size);
memcpy(pi.ProviderData.data(), p->providerData.data, p->providerData.size);
}
return pi;
}
std::wstring WFPEngine::ParseMUIString(PCWSTR input) {
if (input == nullptr)
return L"";
if (*input && input[0] == L'@') {
WCHAR result[256];
if (::SHLoadIndirectString(input, result, _countof(result), nullptr) == S_OK)
return result;
}
return input;
}
std::vector<WFPProviderContextInfo> WFPEngine::EnumProviderContexts(bool includeData) const {
HANDLE hEnum;
std::vector<WFPProviderContextInfo> info;
m_LastError = FwpmProviderContextCreateEnumHandle(m_hEngine, nullptr, &hEnum);
if (m_LastError)
return info;
FWPM_PROVIDER_CONTEXT** contexts;
UINT32 count;
m_LastError = FwpmProviderContextEnum(m_hEngine, hEnum, 128, &contexts, &count);
if (m_LastError == ERROR_SUCCESS && count > 0) {
info.reserve(count);
for (UINT32 i = 0; i < count; i++) {
auto p = contexts[i];
info.emplace_back(std::move(InitProviderContext(p, includeData)));
}
FwpmFreeMemory((void**)&contexts);
}
m_LastError = FwpmProviderContextDestroyEnumHandle(m_hEngine, hEnum);
return info;
}
WFPObject<FWPM_CALLOUT> WFPEngine::GetCalloutByKey(GUID const& key) const {
FWPM_CALLOUT* co = nullptr;
FwpmCalloutGetByKey(m_hEngine, &key, &co);
-6
View File
@@ -73,8 +73,6 @@ public:
uint32_t GetFilterCount(GUID const& layer = GUID_NULL) const;
uint32_t GetCalloutCount(GUID const& layer = GUID_NULL) const;
std::vector<WFPProviderContextInfo> EnumProviderContexts(bool includeData = false) const;
//
// providers API
//
@@ -104,10 +102,6 @@ public:
WFPObject<FWPM_CALLOUT> GetCalloutById(UINT32 id) const;
private:
//
// helpers
//
static std::wstring ParseMUIString(PCWSTR input);
static WFPProviderContextInfo InitProviderContext(FWPM_PROVIDER_CONTEXT* p, bool full = false);
HANDLE m_hEngine{ nullptr };
+24 -3
View File
@@ -5,6 +5,8 @@
#include "WFPHelper.h"
#include "LayerGeneralPage.h"
#include <Enumerators.h>
#include <ClipboardHelper.h>
#include <ThemeHelper.h>
CLayersView::CLayersView(IMainFrame* frame, WFPEngine& engine) : CFrameView(frame), m_Engine(engine) {
}
@@ -146,8 +148,8 @@ void CLayersView::OnStateChanged(HWND, int from, int to, UINT oldState, UINT new
UpdateUI();
}
bool CLayersView::OnDoubleClickList(HWND, int row, int col, POINT const& pt) {
LRESULT result;
bool CLayersView::OnDoubleClickList(HWND, int, int, POINT const&) {
LRESULT result = 0;
return ProcessWindowMessage(m_hWnd, WM_COMMAND, ID_EDIT_PROPERTIES, 0, result, 1);
}
@@ -157,8 +159,27 @@ CString const& CLayersView::LayerInfo::Name() const {
return m_Name;
}
CString const& CLayersView::LayerInfo::Desc() const {
CString const& CLayersView::LayerInfo::Desc() const {
if (m_Desc.IsEmpty())
m_Desc = StringHelper::ParseMUIString(Data->displayData.description);
return m_Desc;
}
LRESULT CLayersView::OnSave(WORD, WORD, HWND, BOOL&) {
CSimpleFileDialog dlg(FALSE, L"csv", L"layers.csv", OFN_EXPLORER | OFN_ENABLESIZING | OFN_OVERWRITEPROMPT,
L"CSV Files (*.csv)\0*.csv\0Text Files (*.txt)\0*.txt\0All Files\0*.*\0", m_hWnd);
ThemeHelper::Suspend();
auto ok = IDOK == dlg.DoModal();
ThemeHelper::Resume();
if (ok && !ListViewHelper::SaveAll(dlg.m_szFileName, m_List, L",")) {
AtlMessageBox(m_hWnd, L"Error in opening file", IDS_TITLE, MB_ICONERROR);
}
return 0;
}
LRESULT CLayersView::OnCopy(WORD, WORD, HWND, BOOL&) {
auto text = ListViewHelper::GetSelectedRowsAsString(m_List, L",");
ClipboardHelper::CopyText(m_hWnd, text);
return 0;
}
+4
View File
@@ -32,6 +32,8 @@ public:
ALT_MSG_MAP(1)
COMMAND_ID_HANDLER(ID_EDIT_PROPERTIES, OnProperties)
COMMAND_ID_HANDLER(ID_VIEW_REFRESH, OnRefresh)
COMMAND_ID_HANDLER(ID_EDIT_COPY, OnCopy)
COMMAND_ID_HANDLER(ID_FILE_SAVE, OnSave)
END_MSG_MAP()
// Handler prototypes (uncomment arguments if needed):
@@ -64,6 +66,8 @@ private:
LRESULT OnActivate(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
LRESULT OnRefresh(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
LRESULT OnProperties(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
LRESULT OnSave(WORD, WORD, HWND, BOOL&);
LRESULT OnCopy(WORD, WORD, HWND, BOOL&);
WFPEngine& m_Engine;
+6
View File
@@ -120,6 +120,12 @@ BEGIN
MENUITEM SEPARATOR
MENUITEM "Properties...\tAlt+Enter", ID_EDIT_PROPERTIES
END
POPUP "layer"
BEGIN
MENUITEM "&Copy\tCtrl+C", ID_EDIT_COPY
MENUITEM SEPARATOR
MENUITEM "Properties...\tAlt+Enter", ID_EDIT_PROPERTIES
END
END