www.pudn.com > dos_gui.zip > YYXMSG.H


#ifndef __YYXMSG_H 
#define __YYXMSG_H 
 
#include  
#include "yyxsys.h" 
#define MAXMSGNUM 100 
#define MSGFULLNUM 20 
 
#define TimerMSG		0x0001 
#define SlowTimerMSG	0x0004 
#define SysQuitMSG		0x0002 
#define KeyPressedMSG	0x0003 
#define CtrlBreakMSG 	0x0005 
#define MouseLButtonDownMSG 0x0006 
 
 
#define MenuActionMSG 	0x0101 
 
#define WinOpenedMSG  	0x0201 
#define WinSysCloseMSG 	0x0202 
#define WinSysClosedMSG 	0x0204 
#define WinMovedSizedMSG 0x0203 
#define WinSelectedMSG   0x0205 
#define WinMovingSizingMSG	0x0206 
#define WinRedrawboundsMSG  0x0207 
 
#define DlgOkedMSG		0x0301 
#define DlgCanceledMSG	0x0302 
 
#define ButtonPushedMSG 		0x0401 
#define CheckBoxValueChangedMSG 0x0402 
#define ListBoxValueChangedMSG  0x0403 
#define ScrollValueChangedMSG	0x0404 
#define ListBoxItemSelectedMSG	0x0405 
#define EditInputedMSG 			0x0406 
#define GroupValueChangedMSG	0x0407 
 
typedef struct tagMSG { 
	long int ID; 
	long int Action; 
	void *fptr; 
} MSG; 
 
class MSGQueue { 
friend application_class; 
public: 
	MSG  msg_array[MAXMSGNUM+1]; 
private: 
	int oldfirst;	// Last Inserted MSG 
	int first;	//Not NULL    for in 
	int last;	//NULL        for out 
// functions 
public: 
	MSGQueue(); 
	~MSGQueue(); 
	void SendMessage(long int ID,long int Action,void *ptr); 
	BOOL PeekMessage(MSG& message); 
	BOOL GetMessage (MSG& message); 
    BOOL QueueFull (); 
	void Reset(void); 
}; 
 
#ifdef __YYXMAIN 
	MSG  sysmsg; 
	class MSGQueue thequeue; 
#else 
	extern MSG	sysmsg; 
	extern class MSGQueue thequeue; 
#endif 
 
 
#endif