mirror of
https://github.com/zhongyang219/TrafficMonitor.git
synced 2026-10-26 03:59:42 +08:00
46 lines
1.2 KiB
C++
46 lines
1.2 KiB
C++
#pragma once
|
|
#include "PluginInterface.h"
|
|
#include "PluginSystemDate.h"
|
|
#include "PluginSystemTime.h"
|
|
#include "CustomDrawItem.h"
|
|
#include "CustomDrawItem2.h"
|
|
#include <map>
|
|
|
|
class CPluginDemo : public ITMPlugin
|
|
{
|
|
private:
|
|
CPluginDemo();
|
|
|
|
public:
|
|
static CPluginDemo& Instance();
|
|
HICON GetIcon(UINT id);
|
|
int DPI(int x, ITrafficMonitor::DPIType type = ITrafficMonitor::DPI_MAIN_WND);
|
|
|
|
// 通过 ITMPlugin 继承
|
|
virtual IPluginItem* GetItem(int index) override;
|
|
virtual void DataRequired() override;
|
|
virtual const wchar_t* GetInfo(PluginInfoIndex index) override;
|
|
virtual OptionReturn ShowOptionsDialog(void* hParent) override;
|
|
virtual void OnExtenedInfo(ExtendedInfoIndex index, const wchar_t* data) override;
|
|
virtual void OnInitialize(ITrafficMonitor* pApp) override;
|
|
|
|
private:
|
|
CPluginSystemDate m_system_date;
|
|
CPluginSystemTime m_system_time;
|
|
CCustomDrawItem m_custom_draw_item;
|
|
CCustomDrawItem2 m_custom_draw_item2;
|
|
ITrafficMonitor* m_app{};
|
|
|
|
static CPluginDemo m_instance;
|
|
std::map<UINT, HICON> m_icon_map;
|
|
};
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
__declspec(dllexport) ITMPlugin* TMPluginGetInstance();
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|