mirror of
https://github.com/lltcggie/waifu2x-caffe.git
synced 2025-06-26 13:42:48 +00:00
94 lines
2.0 KiB
C
94 lines
2.0 KiB
C
|
#pragma once
|
|||
|
|
|||
|
#include <windows.h>
|
|||
|
#include <vector>
|
|||
|
#include <unordered_map>
|
|||
|
#include "CDialogBase.h"
|
|||
|
#include "GUICommon.h"
|
|||
|
|
|||
|
class CControl;
|
|||
|
|
|||
|
|
|||
|
// <20><><EFBFBD><EFBFBD>
|
|||
|
// <20>C<EFBFBD>x<EFBFBD><78><EFBFBD>g<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD>SetWindowLong<6E><67>GWL_USERDATA<54><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ꍇ<EFBFBD><EA8D87><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD>
|
|||
|
class CDialog: public CDialogBase
|
|||
|
{
|
|||
|
private:
|
|||
|
struct stEvent
|
|||
|
{
|
|||
|
EventFunc pfunc;
|
|||
|
LPVOID lpData;
|
|||
|
|
|||
|
stEvent() : pfunc(nullptr), lpData(nullptr)
|
|||
|
{
|
|||
|
}
|
|||
|
|
|||
|
stEvent(const EventFunc &func, const LPVOID Data) : pfunc(func), lpData(Data)
|
|||
|
{
|
|||
|
}
|
|||
|
|
|||
|
stEvent(const stEvent &st)
|
|||
|
{
|
|||
|
pfunc = st.pfunc;
|
|||
|
lpData = st.lpData;
|
|||
|
}
|
|||
|
};
|
|||
|
|
|||
|
struct stCommand
|
|||
|
{
|
|||
|
EventFunc pfunc;
|
|||
|
LPVOID lpData;
|
|||
|
|
|||
|
stCommand() : pfunc(nullptr), lpData(nullptr)
|
|||
|
{
|
|||
|
}
|
|||
|
|
|||
|
stCommand(const EventFunc &func, const LPVOID Data) : pfunc(func), lpData(Data)
|
|||
|
{
|
|||
|
}
|
|||
|
|
|||
|
stCommand(const stCommand &st)
|
|||
|
{
|
|||
|
pfunc = st.pfunc;
|
|||
|
lpData = st.lpData;
|
|||
|
}
|
|||
|
};
|
|||
|
|
|||
|
std::vector<CControl*> vControl;
|
|||
|
std::unordered_map<UINT, stEvent> mEventMap;
|
|||
|
std::unordered_map<UINT, stCommand> mCommandMap;
|
|||
|
|
|||
|
EventFunc mInitFunc;
|
|||
|
LPVOID mInitData;
|
|||
|
|
|||
|
// <20>R<EFBFBD>s<EFBFBD>[<5B>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>̋֎~
|
|||
|
CDialog(const CDialog&);
|
|||
|
CDialog& operator =(const CDialog&);
|
|||
|
|
|||
|
// <20>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>O<EFBFBD>v<EFBFBD><76><EFBFBD>V<EFBFBD>[<5B>W<EFBFBD><57>
|
|||
|
INT_PTR DialogProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
|||
|
void CommandCallBack(HWND hWnd, WPARAM wParam, LPARAM lParam);
|
|||
|
void SetControl(HWND hWnd);
|
|||
|
|
|||
|
public:
|
|||
|
// <20><><EFBFBD>̃<C282><CC83>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD>ɂ<C982><C282><EFBFBD><EFBFBD>̊<CC8A><D690><EFBFBD><EFBFBD><EFBFBD><EFBFBD>o<EFBFBD>^<5E>ł<EFBFBD><C582>Ȃ<EFBFBD>.
|
|||
|
// <20><><EFBFBD>łɂ<C582><C982><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ꍇ<EFBFBD>͏㏑<CD8F><E38F91><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
|||
|
// WM_COMMAND<4E><44><EFBFBD>o<EFBFBD>^<5E><><EFBFBD><EFBFBD><EFBFBD>ꍇ<EFBFBD>ASetCommandCallBack<63>͎g<CD8E><67><EFBFBD>Ȃ<EFBFBD><C882>Ȃ<EFBFBD>.
|
|||
|
// lpData<74>͓o<CD93>^<5E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><D690>ɗ^<5E><><EFBFBD><EFBFBD><EFBFBD>D<EFBFBD><44><EFBFBD>Ȉ<EFBFBD><C888><EFBFBD>.
|
|||
|
// <20>o<EFBFBD>^<5E>ł<EFBFBD><C582><EFBFBD><EFBFBD><EFBFBD><D690>́A
|
|||
|
// BOOL Create(HWND hWnd, WPARAM wParam, LPARAM lParam, LPVOID lpData);
|
|||
|
// <20>̂悤<CC82>Ȋ<C88A>.
|
|||
|
// <20>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>O<EFBFBD>ł<EFBFBD>TRUE<55><45><EFBFBD>Ԃ<EFBFBD><D482><EFBFBD><EFBFBD><EFBFBD>.
|
|||
|
void SetEventCallBack(const EventFunc &func, const LPVOID lpData, const UINT uMsg);
|
|||
|
|
|||
|
// <20>{<7B>^<5E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ꂽ<EFBFBD>Ƃ<EFBFBD><C682>Ȃǂ̂<C782><CC82><EFBFBD>
|
|||
|
// lpData<74>͓o<CD93>^<5E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><D690>ɗ^<5E><><EFBFBD><EFBFBD><EFBFBD>D<EFBFBD><44><EFBFBD>Ȉ<EFBFBD><C888><EFBFBD>
|
|||
|
void SetCommandCallBack(const EventFunc &func, const LPVOID lpData, const UINT ResourceID);
|
|||
|
|
|||
|
// <20>{<7B>^<5E><><EFBFBD>Ȃǂ̃T<CC83>u<EFBFBD>N<EFBFBD><4E><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>R<EFBFBD><52><EFBFBD>g<EFBFBD><67><EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>lj<EFBFBD><C789><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
void AddControl(CControl *pfunc);
|
|||
|
|
|||
|
// <20>R<EFBFBD><52><EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>N<EFBFBD>^(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD>)
|
|||
|
CDialog();
|
|||
|
};
|