rtoss - Blame information for rev 345

Subversion Repositories:
Rev:
Rev Author Line No. Line
280 roytam 1 // PokemonRomViewer.h : PokemonRomViewer 应用程序的主头文件
2 //
3 #pragma once
4  
5 #ifndef __AFXWIN_H__
6         #error 在包含用于 PCH 的此文件之前包含“stdafx.h”
7 #endif
8  
9 #include "resource.h"
10 #include "StringReader.h"
11 #include "WaitDlg.h"
12 #include "BaseDialog.h"
13 #include "BreedDlg.h"           // 1
14 #include "EvoDlg.h"                     // 2
15 #include "ItemDlg.h"            // 3
16 #include "BerryDlg.h"           // 4
17 #include "SkillDlg.h"           // 5
18 #include "EncDlg.h"                     // 6
19  
20 #define APP_DLG_COUNT   (6)
21  
289 roytam 22 #define GUI_FONT_NAME   "MS Gothic"
23 #define GUI_FONT_HEIGHT 12
24  
280 roytam 25 /////////////////////////////////////////////////
26 enum { ui_count_none=0, ui_count_dec=1, ui_count_hex=2 };
27  
28 enum { pm_order_internal = 0, pm_order_kanto = 1, pm_order_houen = 2 };
29  
30 struct ConfigStruct
31 {
32         DWORD                   dwLang;
33         DWORD                   dwCount;
34         CString                 szRomPath;
35         StringEntry *   pBreedNameList;         // 1
36         StringEntry *   pSkillNameList;         // 2
37         StringEntry *   pSkillEffList;          // 3
38         StringEntry *   pSkillSpecList;         // 4
39         StringEntry *   pItemNameList;          // 5
40         StringEntry *   pItemDescList;          // 6
41         StringEntry *   pSpecNameList;          // 7
42         StringEntry *   pSpecDescList;          // 8
43         StringEntry *   pEncNameList;           // 9
44 };
45  
46 #define TEXT_FILE_COUNT (9)
47  
48 /////////////////////////////////////////////////
49 StringEntry * GetEncNameEntry(WORD wAreaId);
50 /*
51 VOID SetBit(LPVOID pFlags, DWORD_PTR dwBitIndex);
52 VOID ClrBit(LPVOID pFlags, DWORD_PTR dwBitIndex);
53 BYTE GetBit(LPCVOID pFlags, DWORD_PTR dwBitIndex);
54 */
55 WORD ConvertBreed(WORD wBreed, BOOL b387To412);
56 WORD TextToBreed(LPCTSTR szText);
57 VOID FormatSkillDesc(WORD wSkill, CString &szDesc);
58 VOID GetPositionInBox(WORD wIndex, WORD &wPage, WORD &wRow, WORD &wColumn);
59  
60 /////////////////////////////////////////////////
61 // CPokemonRomViewerApp:
62 class CPokemonRomViewerApp : public CWinApp
63 {
64 public:
65         CPokemonRomViewerApp();
66         ~CPokemonRomViewerApp();
67  
68 protected:
69         BOOL ReadStringLists();
70         VOID DestroyStringLists();
71         VOID ReadConfig();
72         VOID WriteConfig();
73         BOOL CreateDialogs();
74         BOOL ApplyConfig(BOOL bRomChanged, BOOL bUILangChanged);
75  
76 public:
77         BOOL                    m_bFirstInstance;
78         HANDLE                  m_hMutex;
79  
80         CString                 m_szInitialPath;
81  
82         CBreedDlg               m_dlgBreed;
83         CEvoDlg                 m_dlgEvo;
84         CItemDlg                m_dlgItem;
85         CBerryDlg               m_dlgBerry;
86         CSkillDlg               m_dlgSkill;
87         CEncDlg                 m_dlgEnc;
88         CBaseDialog *   m_rgpDlgs[APP_DLG_COUNT];
89  
90         CWaitDlg                m_dlgWait;
91  
92 public:
93         virtual BOOL InitInstance();
94  
95         afx_msg void OnAppAbout();
96         afx_msg void OnConfig();
97         afx_msg void OnShowBreed();
98         afx_msg void OnUpdateShowBreed(CCmdUI *pCmdUI);
99         afx_msg void OnShowEvo();
100         afx_msg void OnUpdateShowEvo(CCmdUI *pCmdUI);
101         afx_msg void OnShowItem();
102         afx_msg void OnUpdateShowItem(CCmdUI *pCmdUI);
103         afx_msg void OnShowSkill();
104         afx_msg void OnUpdateShowSkill(CCmdUI *pCmdUI);
105         afx_msg void OnShowEnc();
106         afx_msg void OnUpdateShowEnc(CCmdUI *pCmdUI);
107         afx_msg void OnShowBerry();
108         afx_msg void OnUpdateShowBerry(CCmdUI *pCmdUI);
109         DECLARE_MESSAGE_MAP()
110 };
111  
112 extern CPokemonRomViewerApp theApp;
113 extern ConfigStruct     cfg;
114 extern CPokemonRom      rom;
345 roytam 115 extern DWORD    g_dwExtraBreeds;