home *** CD-ROM | disk | FTP | other *** search
/ PC Professionell 2004 December / PCpro_2004_12.ISO / files / webserver / tsw / TSW_3.4.0.exe / Apache2 / perl / vtab.def < prev    next >
Encoding:
Text File  |  2003-07-19  |  3.4 KB  |  56 lines

  1. #ifdef WIN32
  2. #define DECLARE_VTABLES    \
  3. LangVtab           *LangVptr;          \
  4. TcldeclsVtab       *TcldeclsVptr;      \
  5. TkVtab             *TkVptr;            \
  6. TkdeclsVtab        *TkdeclsVptr;       \
  7. TkeventVtab        *TkeventVptr;       \
  8. TkglueVtab         *TkglueVptr;        \
  9. TkintVtab          *TkintVptr;         \
  10. TkintdeclsVtab     *TkintdeclsVptr;    \
  11. TkintplatdeclsVtab *TkintplatdeclsVptr;\
  12. TkintxlibdeclsVtab *TkintxlibdeclsVptr;\
  13. TkoptionVtab       *TkoptionVptr;      \
  14. TkplatdeclsVtab    *TkplatdeclsVptr
  15.  
  16. #define IMPORT_VTABLES    do { \
  17. LangVptr           =           (LangVtab *) SvIV(perl_get_sv("Tk::LangVtab",GV_ADDWARN|GV_ADD));           \
  18. TcldeclsVptr       =       (TcldeclsVtab *) SvIV(perl_get_sv("Tk::TcldeclsVtab",GV_ADDWARN|GV_ADD));       \
  19. TkVptr             =             (TkVtab *) SvIV(perl_get_sv("Tk::TkVtab",GV_ADDWARN|GV_ADD));             \
  20. TkdeclsVptr        =        (TkdeclsVtab *) SvIV(perl_get_sv("Tk::TkdeclsVtab",GV_ADDWARN|GV_ADD));        \
  21. TkeventVptr        =        (TkeventVtab *) SvIV(perl_get_sv("Tk::TkeventVtab",GV_ADDWARN|GV_ADD));        \
  22. TkglueVptr         =         (TkglueVtab *) SvIV(perl_get_sv("Tk::TkglueVtab",GV_ADDWARN|GV_ADD));         \
  23. TkintVptr          =          (TkintVtab *) SvIV(perl_get_sv("Tk::TkintVtab",GV_ADDWARN|GV_ADD));          \
  24. TkintdeclsVptr     =     (TkintdeclsVtab *) SvIV(perl_get_sv("Tk::TkintdeclsVtab",GV_ADDWARN|GV_ADD));     \
  25. TkintplatdeclsVptr = (TkintplatdeclsVtab *) SvIV(perl_get_sv("Tk::TkintplatdeclsVtab",GV_ADDWARN|GV_ADD)); \
  26. TkintxlibdeclsVptr = (TkintxlibdeclsVtab *) SvIV(perl_get_sv("Tk::TkintxlibdeclsVtab",GV_ADDWARN|GV_ADD)); \
  27. TkoptionVptr       =       (TkoptionVtab *) SvIV(perl_get_sv("Tk::TkoptionVtab",GV_ADDWARN|GV_ADD));       \
  28. TkplatdeclsVptr    =    (TkplatdeclsVtab *) SvIV(perl_get_sv("Tk::TkplatdeclsVtab",GV_ADDWARN|GV_ADD));    \
  29. } while (0)
  30. #else
  31. #define DECLARE_VTABLES    \
  32. LangVtab           *LangVptr;          \
  33. TcldeclsVtab       *TcldeclsVptr;      \
  34. TkVtab             *TkVptr;            \
  35. TkdeclsVtab        *TkdeclsVptr;       \
  36. TkeventVtab        *TkeventVptr;       \
  37. TkglueVtab         *TkglueVptr;        \
  38. TkintVtab          *TkintVptr;         \
  39. TkintdeclsVtab     *TkintdeclsVptr;    \
  40. TkoptionVtab       *TkoptionVptr;      \
  41. XlibVtab           *XlibVptr
  42.  
  43. #define IMPORT_VTABLES    do { \
  44. LangVptr           =           (LangVtab *) SvIV(perl_get_sv("Tk::LangVtab",GV_ADDWARN|GV_ADD));           \
  45. TcldeclsVptr       =       (TcldeclsVtab *) SvIV(perl_get_sv("Tk::TcldeclsVtab",GV_ADDWARN|GV_ADD));       \
  46. TkVptr             =             (TkVtab *) SvIV(perl_get_sv("Tk::TkVtab",GV_ADDWARN|GV_ADD));             \
  47. TkdeclsVptr        =        (TkdeclsVtab *) SvIV(perl_get_sv("Tk::TkdeclsVtab",GV_ADDWARN|GV_ADD));        \
  48. TkeventVptr        =        (TkeventVtab *) SvIV(perl_get_sv("Tk::TkeventVtab",GV_ADDWARN|GV_ADD));        \
  49. TkglueVptr         =         (TkglueVtab *) SvIV(perl_get_sv("Tk::TkglueVtab",GV_ADDWARN|GV_ADD));         \
  50. TkintVptr          =          (TkintVtab *) SvIV(perl_get_sv("Tk::TkintVtab",GV_ADDWARN|GV_ADD));          \
  51. TkintdeclsVptr     =     (TkintdeclsVtab *) SvIV(perl_get_sv("Tk::TkintdeclsVtab",GV_ADDWARN|GV_ADD));     \
  52. TkoptionVptr       =       (TkoptionVtab *) SvIV(perl_get_sv("Tk::TkoptionVtab",GV_ADDWARN|GV_ADD));       \
  53. XlibVptr           =           (XlibVtab *) SvIV(perl_get_sv("Tk::XlibVtab",GV_ADDWARN|GV_ADD));           \
  54. } while (0)
  55. #endif
  56.