home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic 4 Unleashed / Visual_Basic_4_Unleashed_SAMS_Publishing_1995.iso / tedevkit / demo.h < prev    next >
C/C++ Source or Header  |  1995-04-27  |  5KB  |  107 lines

  1. #include "demo_dlg.h"
  2.  
  3. #define IDM_ABOUT       100
  4. #define IDM_OPEN        101
  5. #define IDM_CLOSE       102
  6. #define IDM_RESET       103
  7. #define IDM_FIELDS      104
  8. #define IDM_INSERT      105
  9. #define IDM_PRINT       106
  10. #define IDM_OTHER       107
  11. #define IDM_SEARCH      108
  12. #define IDM_PREVIEW     109
  13.  
  14. #define MAX_WINDS       10
  15.  
  16. HANDLE hInst,hPrevInst;             // Stores the current and previous instances 
  17. BOOL error_flag;
  18.  
  19. /*****************************************************************************
  20.     Prototypes for the internal demo functions.
  21. ******************************************************************************/
  22. int PASCAL WinMain(HINSTANCE, HINSTANCE, LPSTR, int);
  23. int  CALLBACK _export DemoCloseDlg(HWND,UINT,WPARAM,LPARAM);
  24. int  CALLBACK _export DemoResetDlg(HWND,UINT,WPARAM,LPARAM);
  25. int  CALLBACK _export DemoSelectWin(HWND,UINT,WPARAM,LPARAM);
  26. int  OurPrintf(LPSTR,...);
  27. BOOL CALLBACK _export DemoOpenDlg(HWND,UINT,WPARAM,LPARAM);
  28. BOOL CALLBACK _export DemoControlDlg(HWND,UINT,WPARAM,LPARAM);
  29. BOOL CALLBACK _export DemoFields(HWND,UINT,WPARAM,LPARAM);
  30. BOOL CALLBACK _export DemoInsertText(HWND,UINT,WPARAM,LPARAM);
  31. BOOL CALLBACK _export DemoPrintDlg(HWND,UINT,WPARAM,LPARAM);
  32. BOOL CALLBACK _export DemoSearchDlg(HWND,UINT,WPARAM,LPARAM);
  33. BOOL InitApplication(HINSTANCE);
  34. BOOL InitInstance(HINSTANCE, int);
  35. BOOL AssignIntValue(HWND,int,LPINT);
  36. BOOL AssignLongValue(HWND,int,LPLONG);
  37. BOOL CurrentPrinter(LPSTR,LPSTR,LPSTR);
  38. BOOL EditFont(HWND);
  39. BOOL DemoGetTerLine(HWND);
  40. BOOL DemoGetFontInfo(HWND);
  41. BOOL InsertText(HWND);
  42. BOOL DemoPreview(void);
  43. BOOL PrintText(HWND);
  44. BOOL SetDemoLong(HWND,int,long);
  45. BOOL GetDemoLong(HWND,int,long *);
  46. HDC  OpenCurPrinter(HWND);
  47. LRESULT CALLBACK _export DemoWndProc(HWND,UINT,WPARAM,LPARAM);
  48. void CallTer(HANDLE);
  49. void MakeBuffer(HWND);                   // used in the demo program only 
  50. void FarMove(LPSTR,LPSTR,UINT);
  51. void HugeMemMove(char huge *,char huge *,UINT);
  52.  
  53. /*======================= global variables =====================================
  54.    A set of control variables are passed by the user program to the TER routine.
  55.    The variables are passed using the structure 'arg_list'.  This structure
  56.    is defined by the TER.H file.  Your application module that calls the TER
  57.    routine must include this file.
  58.    
  59.    The user program passes the POINTER to this structure.
  60. ================================================================================*/
  61.  
  62. struct arg_list arg[MAX_WINDS];    // parameter structure to call ter function 
  63. struct StrTerField field;          /* parameter structure to call GetTerFields
  64.                                       and SetTerFields functions */
  65.  
  66. HWND hDemoWnd;                     // demo window handle
  67.  
  68. int CurWnd;
  69.  
  70. char PrevFile[128];
  71. char DemoLine[241];                // temporary line space 
  72. WORD DemoWord;                     // temporary demo word variable 
  73.  
  74. // ****These variables are used to demonstrate inserting text into an existing
  75. // ****TER window.  The new text can be inesrted with specified fonts/color
  76.  
  77. char CurTypeface[32]="Arial";      // current type face to insert new text 
  78. int  CurPointSize=12;              // current point size    
  79. UINT CurStyle=0;                   // current character styles 
  80. COLORREF CurColor=0;               // current text color - black
  81. long CurLine=0;                    // current line to insert text into
  82. int  CurCol=0;                     // current column position to insert text
  83. char NewText[2*MAX_WIDTH+1];       // text to be inserted
  84.  
  85. // **** The following variables are used to demonstrate printing a file or buffer
  86. struct StrPrint prt;
  87. RECT   PrtRect;                    // printing area
  88. HDC    hPrtDC;                     // printer device context
  89. int    PrtOutput=IDC_SPEC_PRINTER; // print to a specified printer
  90.  
  91. // ***** Search/replace api flags
  92. char search[MAX_WIDTH+1],          // search string
  93.      replace[MAX_WIDTH+1];         // replace string
  94.  
  95. UINT SearchFlags;                  // flags
  96.  
  97. long SearchCurPos,                 // current position
  98.      SearchEndPos,                 // end position
  99.      SearchSize;                   // buffer size
  100.  
  101. // unit conversion macros
  102. int  ResX;                         // pixels per inch in x direction
  103. int  ResY;                         // pixels per inch in y direction
  104.  
  105. #define    PixelToMmX(x)          MulDiv(x,25,ResX)
  106. #define    PixelToMmY(x)          MulDiv(x,25,ResY)
  107.