YYXOBJ.H
上传用户:wtrl82617
上传日期:2007-01-07
资源大小:187k
文件大小:1k
源码类别:

界面编程

开发平台:

DOS

  1. #ifndef __YYXOBJ_H
  2. #define __YYXOBJ_H
  3. #if !defined(__YYXSYS_H)
  4. #include "yyxsys.h"
  5. #endif
  6. #if !defined(__YYXMSG_H)
  7. #include "yyxmsg.h"
  8. #endif
  9. enum direction {TO_UP,TO_DOWN};
  10. typedef class object_class Tobject;
  11. class object_class {
  12. public:
  13. long    ID;
  14. char title[40];
  15. char  hotkey;
  16. byte  status;
  17. byte  type;
  18. Trect  bounds;
  19. Tobject *pleft;  //all are the same kind;
  20. Tobject *pright;
  21. public:
  22. object_class(int ID,char *title_hotkey,byte status,byte type,
  23.  int left,int top,int width,int height );
  24. virtual ~object_class();
  25. virtual void select ()  ;
  26. virtual void  unselect  ()   ;
  27. virtual void   draw  ()   ;
  28. virtual int    key_pressed_handler  ( int key_scan_num ) ;
  29. virtual int     msg_handler (MSG& message )     ;
  30. // LOOKING THRU LINKS; ASSUME A LOOP
  31. public:
  32. int step; //to count how many objects passed
  33. public:
  34. virtual Tobject * get_object_thru_key ( int key_scan_num , BOOL useDisabled=FALSE );
  35. virtual Tobject * get_next_object (enum direction direct , BOOL useDisabled=FALSE );
  36. virtual Tobject * get_object_thru_point ( int x,int y , BOOL useDisabled=FALSE );
  37. virtual void  change_select ( Tobject *pold_select,Tobject *pnew_select );
  38. };
  39. #endif