-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathFarHexEdit.hpp
58 lines (47 loc) · 1.8 KB
/
FarHexEdit.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
extern "C"
{
void WINAPI _export SetStartupInfo(struct PluginStartupInfo *Info);
HANDLE WINAPI _export OpenPlugin(int OpenFrom,int Item);
void WINAPI _export GetPluginInfo(struct PluginInfo *Info);
// void WINAPI _export GetOpenPluginInfo(HANDLE hPlugin, struct OpenPluginInfo *Info);
};
static struct PluginStartupInfo Info;
char *GetMsg(int MsgId);
void SetRegKey(HKEY hRoot,char *Key,char *ValueName,DWORD ValueData);
void SetRegKey(HKEY hRoot,char *Key,char *ValueName,char *ValueData);
int GetRegKey(HKEY hRoot,char *Key,char *ValueName,int &ValueData,DWORD Default);
int GetRegKey(HKEY hRoot,char *Key,char *ValueName,DWORD Default);
int GetRegKey(HKEY hRoot,char *Key,char *ValueName,char *ValueData,char *Default,DWORD DataSize);
char FarRootKey[80];
byte FarPalette[100];
#define COLOR_KEYBARNUM 45
#define COLOR_KEYBAR 46
#define COLOR_EDITOR 53
#define COLOR_EDSTATUSBAR 55
struct InitDialogItem
{
unsigned char Type;
unsigned char X1,Y1,X2,Y2;
unsigned char Focus;
unsigned int Selected;
unsigned int Flags;
unsigned char DefaultButton;
char *Data;
};
void InitDialogItems(struct InitDialogItem *Init,struct FarDialogItem *Item,
int ItemsNumber);
///////////////////////////////////////////////////////
class FarHexEditor: public HexEditor
{
public:
FarHexEditor( // îñíîâíîé êîíñòðóêòîð
byte *data, // äàííûå
dword dataSize, // èõ ðàçìåð
byte *dataTop=0, // íà÷àëî äàííûõ íà ýêðàíå
byte *dataPos=0, // òåêóùàÿ ïîçèöèÿ
int x1=-1,int y1=-1,int x2=-1,int y2=-1); // êîîðäèíàòû îêíà
virtual BOOL PreProcessKey(KEY_EVENT_RECORD *k);
virtual void PostProcessKey(KEY_EVENT_RECORD *k);
virtual void WriteStr(char *s,int x,int y,int Color=0);
virtual void ReadInput(INPUT_RECORD *in);
};