2016-08-31 23:08:02 -04:00
|
|
|
#pragma once
|
2015-05-06 01:27:59 -04:00
|
|
|
|
|
|
|
#include <unordered_map>
|
|
|
|
#include "OptionWnd.h"
|
|
|
|
#include "../ELF.h"
|
|
|
|
#include "ELFHeaderView.h"
|
|
|
|
#include "ELFSectionView.h"
|
|
|
|
#include "ELFProgramView.h"
|
|
|
|
#include "ELFSymbolView.h"
|
|
|
|
#include "win32/MDIChild.h"
|
|
|
|
|
|
|
|
class CELFView : public COptionWnd<Framework::Win32::CMDIChild>
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
CELFView(HWND);
|
2016-08-31 23:08:02 -04:00
|
|
|
virtual ~CELFView();
|
|
|
|
|
2015-05-06 01:27:59 -04:00
|
|
|
void SetELF(CELF*);
|
2016-08-31 23:08:02 -04:00
|
|
|
|
2015-05-06 01:27:59 -04:00
|
|
|
protected:
|
2016-08-31 23:08:02 -04:00
|
|
|
long OnSysCommand(unsigned int, LPARAM) override;
|
2015-05-06 01:27:59 -04:00
|
|
|
|
2016-08-31 23:08:02 -04:00
|
|
|
void OnItemAppearing(HTREEITEM) override;
|
2015-05-06 01:27:59 -04:00
|
|
|
|
|
|
|
private:
|
2016-08-31 23:08:02 -04:00
|
|
|
typedef std::unordered_map<HTREEITEM, int> SectionItemMap;
|
2015-05-06 01:27:59 -04:00
|
|
|
|
|
|
|
void PopulateList();
|
|
|
|
void Delete();
|
|
|
|
|
|
|
|
CELF* m_pELF;
|
|
|
|
CELFHeaderView* m_pHeaderView;
|
|
|
|
CELFSymbolView* m_pSymbolView;
|
|
|
|
CELFSectionView* m_pSectionView;
|
|
|
|
CELFProgramView* m_pProgramView;
|
|
|
|
|
|
|
|
SectionItemMap m_sectionItems;
|
|
|
|
SectionItemMap m_programItems;
|
|
|
|
};
|