home *** CD-ROM | disk | FTP | other *** search
/ Programming Languages Suite / ProgramD2.iso / Visual Database / Visual Foxpro 6.0 (Ent. Edition) / Vf6ent Extractor.EXE / TOOLS / CONVERT / CONVERT.H < prev    next >
Encoding:
C/C++ Source or Header  |  1998-05-26  |  28.8 KB  |  759 lines

  1. #DEFINE C_CONVERSION_LOC    "Microsoft Visual FoxPro Converter Utility Version 6.00a 01/01/98)"
  2.  
  3. *- CONVERT.H
  4. *-
  5. *- Header file for Convert.PRG
  6. *- (c) Microsoft Corporation 1995
  7.  
  8. *- debug #DEFINES -- no need to localize these
  9. #DEFINE L_SHOWVERSION    .F.
  10. #DEFINE L_DEBUG         .F.
  11. #DEFINE L_USEVCX        .F.
  12. #DEFINE L_DEBUGSUSPEND    .F.
  13.  
  14. #DEFINE    C_LATESTVER        "06.00.8000.00"
  15.  
  16. *- current version numbers
  17. #DEFINE C_SCXVERSTAMP    "VERSION =  3.00"
  18. #DEFINE C_PJXVERSTAMP    260                    && 1.3
  19.  
  20. *- various common special chars
  21. #DEFINE    C_CRLF            CHR(13)+CHR(10)    && return/linefeed
  22. #DEFINE    C_CR            CHR(13)            && return
  23. #DEFINE    C_LF            CHR(10)            && linefeed
  24. #DEFINE    C_TAB            CHR(9)            && tab
  25. #DEFINE    C_TAB2            CHR(9)+CHR(9)    && 2 tabs
  26. #DEFINE C_NULL            CHR(0)            && null char
  27.  
  28. *- error messages (need localizing)
  29. #DEFINE E_INVALIDFILE_LOC     "Invalid file selected."
  30. #DEFINE    E_INVALPJX_LOC        "Invalid Project file selected."
  31. #DEFINE    E_INVALFPC_LOC        "Invalid Catalog file selected."
  32. #DEFINE E_INVALDBF_LOC         "Invalid file format."
  33. #DEFINE    E_WRONGFMT_LOC        "Screen file is an unknown format."
  34. #DEFINE    E_WRONGFMT2_LOC        "Report or label file is an unknown format."
  35. #DEFINE    E_NOSCX_LOC            "You must select an SCX file."
  36. #DEFINE    E_NOOPEN_LOC        "Cannot open "
  37. #DEFINE    E_NOCLOSE_LOC        "Cannot close "
  38. #DEFINE E_FILE_LOC            "File "
  39. #DEFINE E_NOSCXFILE_LOC     "Cannot use converter - missing TAZMAIN.SCX file."
  40. #DEFINE E_HAS20FILE_LOC        "You have selected a FoxPro 2.0 file. The Transporter must first convert it to a 2.6 format."
  41. #DEFINE E_NOTRANS_LOC        "The transporter program could not be found. Conversion cancelled."
  42. #DEFINE E_NOPLATOBJS_LOC    "You have selected a FoxPro screen without any current platform objects. The Transporter must first convert it."
  43. #DEFINE E_NODIR_LOC            "Error creating backup directory. Operation cancelled."
  44. #DEFINE E_NOFILE_LOC        "Could not locate file listed in "
  45. #DEFINE E_OPCANC_LOC        ". Operation cancelled."
  46. #DEFINE E_NOCONVERT_LOC        "It was not converted."
  47. #DEFINE E_NOCONVERT1_LOC    " not found. " + E_NOCONVERT_LOC
  48. #DEFINE E_NOCONVERT2_LOC    " could not be opened. " + E_NOCONVERT_LOC
  49. #DEFINE E_NOCONVERT3_LOC    " is read-only. " + E_NOCONVERT_LOC
  50. #DEFINE E_NOCONVERT4_LOC    " is hidden or is a system file. " + E_NOCONVERT_LOC
  51. #DEFINE E_NOBACKUP_LOC        ". Not backed up."
  52. #DEFINE E_NOSTART_LOC        "There was a problem starting the Converter."
  53. #DEFINE E_BADFOX1_LOC        "You must be using FoxPro version "
  54. #DEFINE E_BADFOX2_LOC        " or later to run converter."
  55. #DEFINE E_NOOPENSRC_LOC        "Cannot open source file "
  56. #DEFINE E_FILENOEXIST_LOC    "File @1 does not exist."
  57. #DEFINE E_BADCODEPAGE_LOC    "Code page @1 is invalid."
  58. #DEFINE E_BADCALL_LOC        "The wrong parameters were passed to the converter. To convert files, open them from the File menu."
  59. #DEFINE E_FILEOPEN_LOC        "File is already open."
  60. #DEFINE E_NA_LOC            "Feature not available yet."
  61. #DEFINE E_NOCREATE_LOC        "Error creating "
  62. #DEFINE E_NOWRITE_LOC        "Error writing to "
  63. #DEFINE E_NOFINDS_LOC        "Some files are missing or could not be located. They will not be converted. Continue?"
  64. #DEFINE E_FATAL_LOC            "An error occurred in the Converter and it cannot continue."
  65. #DEFINE E_FATAL2_LOC        " The error has been logged in "
  66. #DEFINE E_FATAL3_LOC        ". Open the logfile?"
  67. #DEFINE E_FATAL1_LOC        "Fatal Error in Converter: "
  68. #DEFINE E_ERR1_LOC            "Error: "
  69. #DEFINE E_ERR2_LOC            "Error Number: "
  70. #DEFINE E_ERR3_LOC            "Method: "
  71. #DEFINE E_ERR4_LOC            "Line: "
  72. #DEFINE E_ERR5_LOC            "Offending Code: "
  73. #DEFINE E_ERR6_LOC            "File being processed: "
  74. #DEFINE E_ERR7_LOC            "Not recorded"
  75. #DEFINE E_NOMIG_LOC            "Unable to migrate file."
  76. #DEFINE E_MIGSTART_LOC        "Begin migration to FoxPro 2.x format."
  77. #DEFINE E_MIGEND_LOC        "Successfully completed migration to FoxPro 2.x format."
  78. #DEFINE E_MACROEXPR1_LOC    "Cannot process macro expression in generator directive."
  79. #DEFINE E_PROPTOOLONG_LOC    "Expression too long at Record # "
  80. #DEFINE E_WARNING_LOC        "WARNING"
  81. #DEFINE E_EXPRNOCONV_LOC    "The expression was not converted. "
  82. #DEFINE E_SEELOGFILE_LOC    "See the log file for details."
  83. #DEFINE E_DISKFULL_LOC        "The disk is full, and the converter cannot continue. The log file cannot be saved to disk."
  84. #DEFINE E_NOINCLUDE_LOC        "The file could not be compiled. Check the .ERR file for details and compile manually."
  85. #DEFINE E_NOINCLUDE1_LOC    "The file "
  86. #DEFINE E_NOINCLUDE2_LOC     " could not be compiled. Check the .ERR file for details and compile manually."
  87.     
  88. *- Other strings to localize
  89. #DEFINE C_CONVERT1_LOC        "Do you want to convert the screen "
  90. #DEFINE C_CONVERT2_LOC        " to Visual FoxPro 6.0 format?" && (The original file will still be available)."
  91. #DEFINE C_CONVERT3_LOC        "Do you want to convert the "
  92. #DEFINE C_CONVERT3p_LOC        "project "
  93. #DEFINE C_CONVERT3c_LOC        "catalog "
  94. #DEFINE C_CONVERT3r_LOC        "report "
  95. #DEFINE C_CONVERT3l_LOC        "label "
  96. #DEFINE C_CONVERT4_LOC        " (and all of the forms and reports within it) to Visual FoxPro 6.0 format?" && (The original files will still be available)."
  97. #DEFINE    C_GETP1_LOC            "Select Screen File:"
  98. #DEFINE C_INSMESS1_LOC        "*- Start of #INSERT directive - "
  99. #DEFINE C_INSMESS2_LOC        "*- End of #INSERT directive"
  100. #DEFINE C_INSMESS3_LOC        "*- Could not find #INSERT directive file"
  101. #DEFINE    C_PROCESS_LOC        "Processing: "
  102. #DEFINE C_SSETS_LOC            " screen sets."
  103. #DEFINE C_NEWFORM_LOC         "New Form: "
  104. #DEFINE C_OF_LOC             " of "
  105. #DEFINE C_PROJSTAT_LOC        "Project Status"
  106. #DEFINE C_PROJNAME_LOC        "Project: "
  107. #DEFINE C_COMPLETE_LOC        "Completed: "
  108. #DEFINE    C_PERCHAR_LOC        "%"
  109. #DEFINE    C_BACKFILES_LOC        "Backing up project files..."
  110. #DEFINE C_MAXFILES_LOC        " files."
  111. #DEFINE C_OVERWRITE_LOC        " exists. Overwrite it?"
  112. #DEFINE C_SAYSCOMMENT_LOC    "*- 2.6 SAYs that need to be refreshed"
  113. #DEFINE C_THERMMSG1_LOC        "Converting project "
  114. #DEFINE C_THERMMSG2_LOC        "Converting screen "
  115. #DEFINE C_THERMMSG3_LOC        "Converting format file "
  116. #DEFINE C_THERMMSG4_LOC        "Converting catalog file "
  117. #DEFINE C_THERMMSG5_LOC        "Converting file "
  118. #DEFINE C_THERMMSG6_LOC        "Transporting project "
  119. #DEFINE C_THERMMSG7_LOC        "Transporting screen "
  120. #DEFINE C_THERMMSG8_LOC        "Converting report "
  121. #DEFINE C_THERMMSG9_LOC        "Transporting report "
  122. #DEFINE C_THERMMSG10_LOC    "Updating report "
  123. #DEFINE C_THERMMSG11_LOC    "Migrating screen "
  124. #DEFINE C_THERMMSG12_LOC    "Migrating report "
  125. #DEFINE C_THERMMSG13_LOC    "Migrating format file "
  126. #DEFINE C_THERMTITLE_LOC    ""
  127. #DEFINE C_PROJTASK1_LOC        "Converting screens..."
  128. #DEFINE C_PROJTASK2_LOC        "Converting other files..."
  129. #DEFINE C_PROJTASK3_LOC        "Migrating files..."
  130. #DEFINE C_PROJTASK4_LOC        "Converting project..."
  131. #DEFINE C_PROJTASK5_LOC        "Converting catalog..."
  132. #DEFINE C_PROJTASK6_LOC        "Setting 3.0 defaults..."
  133. #DEFINE C_CONVMSG_LOC        "Converted." + CHR(13)
  134. #DEFINE C_NOTCONVMSG_LOC    "Not converted."
  135. #DEFINE C_FILECONV_LOC        "File already converted"
  136. #DEFINE C_CREATMSG_LOC        ". SPR file created."
  137. #DEFINE C_NOCONVMSG_LOC        "No conversion necessary."
  138. #DEFINE C_CONVLOG_LOC        "Conversion Log for "
  139. #DEFINE C_CONVVERS_LOC        "Converter: "
  140. #DEFINE C_LOGEND_LOC        "*- end of log"
  141. #DEFINE C_CODESRC_LOC        "Miscellaneous code"
  142. #DEFINE C_CODEHDR_LOC        "*- Code from "
  143. #DEFINE C_CODEHDR1_LOC        "*----------------------------------------------" + C_CRLF
  144. #DEFINE C_LOCFILE_LOC        "Locate "
  145. #DEFINE C_LOCFILE2_LOC        "Locate file:"
  146. #DEFINE C_LOCFILE3_LOC        "The file " + JustFName(cTmpFname) + " could not be found. Would you like to try and locate the file?"
  147. #DEFINE C_ERRLOG_LOC        "Error"        && name of logfile in case of error and no logfile specified -- DON'T EXCEED 6 CHARACTERS
  148. #DEFINE C_BEGIN_LOC            "Begin Conversion"
  149. #DEFINE C_END_LOC            "End Conversion"
  150. #DEFINE C_SUCCESSCONV_LOC    "Successful conversion took "
  151. #DEFINE C_SECONDS_LOC        " seconds."
  152. #DEFINE C_COMPILE_LOC        "Compiling."
  153. #DEFINE C_ESCAPE_LOC        "Escape was pressed. Cancel conversion?"
  154. #DEFINE C_ESCLOGMSG_LOC        "Conversion cancelled at user's request."
  155. #DEFINE C_MIGRATEMSG_LOC    "Migrating file..."
  156. #DEFINE C_FILEFOUNDMSG_LOC    "File is already in this project. It was not converted or added to the project."
  157. #DEFINE C_MACLOGMSG_LOC    "(Macintosh version)"
  158. #DEFINE C_WHEREIS_LOC        "Where is "
  159. *- comments that will be inserted into code
  160. #DEFINE C_PARM1_CMMT_LOC    "*- [CONVERTER] Parameter statement generated by Converter" + CHR(13) + "*- [CONVERTER] Pass these values along to the new form" + CHR(13)
  161. #DEFINE C_PARM2_CMMT_LOC    "*- [CONVERTER] We need to add special code in case no parms are passed, so" + CHR(13) + "*- [CONVERTER] we don't pass on default parms that shouldn't be there" + CHR(13)
  162. #DEFINE C_OPENTAB_CMMT_LOC    "*- [CONVERTER] Open tables so that fields are available" + CHR(13)
  163. #DEFINE C_SETIDX_CMMT_LOC    "*- [CONVERTER] Open old-style IDX index file specified in screen environment" + CHR(13)
  164. #DEFINE C_PROCS_CMMT_LOC    "*- [CONVERTER] Begin CLEANUP and other procedures from 2.x Form" + CHR(13)
  165. #DEFINE C_PROCSEND_CMMT_LOC    "*- [CONVERTER] End CLEANUP and other procedures from 2.x Form" + CHR(13)
  166. #DEFINE C_VALID_CMMT_LOC    "*- [CONVERTER] Begin VALID/WHEN procedures from 2.x Form" + CHR(13)
  167. #DEFINE C_VALIDEND_CMMT_LOC    "*- [CONVERTER] End VALID/WHEN procedures from 2.x Form" + CHR(13)
  168. #DEFINE C_INCLUDE_CMMT_LOC    "*- [CONVERTER] New INCLUDE file, with #DEFINEs" + CHR(13)
  169. #DEFINE C_EXTERN_CMMT_LOC    "*- [CONVERTER] Declare arrays" + CHR(13)
  170. #DEFINE C_SYS16_CMMT_LOC    "*- [CONVERTER] SYS(16) replacement to accommodate relocated code" + CHR(13)
  171. #DEFINE C_SYS16END_CMMT_LOC    "*- [CONVERTER] End of SYS(16) replacement" + CHR(13)
  172. #DEFINE C_RETVAL_CMMT_LOC    "*- [CONVERTER] _rval will hold return value" + CHR(13)
  173. #DEFINE C_SETUP_CMMT_LOC    "*- [CONVERTER] Remember environment" + CHR(13)
  174. #DEFINE C_CLEANUP_CMMT_LOC    "*- [CONVERTER] Restore environment" + CHR(13)
  175. #DEFINE C_MACRO_CMMT_LOC    "*- [CONVERTER] Cannot process macro in generator directive" + CHR(13)
  176. #DEFINE C_H_CMMT_LOC        "*- [CONVERTER] Header File for "
  177. #DEFINE C_SETSKIP_CMMT_LOC    "*- [CONVERTER] set SET SKIP TO" + CHR(13)
  178. #DEFINE C_FRXDESTROY_LOC    "*- [CONVERTER] Reset tables for compatibility" + CHR(13)
  179. #DEFINE C_CONV_CMMT_LOC        "*- [CONVERTER] "
  180. #DEFINE C_GOTO1_CMMT_LOC    "*- [CONVERTER] Reset record pointers" + CHR(13)
  181. #DEFINE C_GOTO2_CMMT_LOC    "*- [CONVERTER] Remember record pointers" + CHR(13)
  182. #DEFINE C_GOTOVAR1_CMMT_LOC    "*- [CONVERTER] Declare variables for record pointers" + CHR(13)
  183. #DEFINE C_GOTOVAR2_CMMT_LOC    "*- [CONVERTER] Release variables for record pointers" + CHR(13)
  184.  
  185. #DEFINE C_SELECTFILE_LOC    "Select the file or directory to update."
  186.  
  187. *- These #defines are used by the LOCWORD procedure
  188. #DEFINE C_TABLE_LOC            "Table"
  189. #DEFINE C_QUERY_LOC            "Query"
  190. #DEFINE C_FORM_LOC            "Screen"
  191. #DEFINE C_REPORT_LOC        "Report"
  192. #DEFINE C_LABEL_LOC            "Label"
  193. #DEFINE C_PROGRAM_LOC        "Program"
  194. #DEFINE C_CATALOG_LOC        "Catalog"
  195.  
  196.  
  197. *- file type parameters that will be passed to converter
  198. *- do not localize
  199. #DEFINE C_SCREENTYPEPARM    "SCREEN"
  200. #DEFINE C_PROJECTTYPEPARM    "PROJECT"
  201. #DEFINE C_CATALOGTYPEPARM    "CATALOG"
  202. #DEFINE C_REPORTTYPEPARM    "REPORT"
  203. #DEFINE C_MENUTYPEPARM        "MENU"
  204. #DEFINE C_LABELTYPEPARM        "LABEL"
  205. #DEFINE C_DB4QUERYTYPEPARM    "DB4QUERY"
  206. #DEFINE C_DB4FORMTYPEPARM    "DB4FORM"
  207. #DEFINE C_DB4REPORTTYPEPARM    "DB4REPORT"
  208. #DEFINE C_DB4LABELTYPEPARM    "DB4LABEL"
  209. #DEFINE C_DB4VERSIONPARM    "DBASE"
  210. #DEFINE C_FOXVERSIONPARM    "FOX"
  211. #DEFINE C_FMTTYPEPARM        "FORMAT"
  212. #DEFINE C_FPLUSFRXTYPEPARM    "FB+FRX"
  213.  
  214. *- SCX Array numbers
  215. #DEFINE    A_PLATFORM        1
  216. #DEFINE    A_UNIQUEID        2
  217. #DEFINE    A_TIMESTAMP        3
  218. #DEFINE    A_OBJTYPE        4
  219. #DEFINE    A_OBJCODE        5
  220. #DEFINE    A_NAME            6
  221. #DEFINE    A_EXPR            7
  222. #DEFINE    A_VPOS            8
  223. #DEFINE    A_HPOS            9
  224. #DEFINE    A_HEIGHT        10
  225. #DEFINE    A_WIDTH            11
  226. #DEFINE    A_STYLE            12
  227. #DEFINE    A_PICTURE        13
  228. #DEFINE    A_ORDER            14
  229. #DEFINE    A_UNIQUE        15
  230. #DEFINE    A_COMMENT        16
  231. #DEFINE    A_ENVIRON        17
  232. #DEFINE    A_BOXCHAR        18
  233. #DEFINE    A_FILLCHAR        19
  234. #DEFINE    A_TAG            20
  235. #DEFINE    A_TAG2            21
  236. #DEFINE    A_PENRED        22
  237. #DEFINE    A_PENGREEN        23
  238. #DEFINE    A_PENBLUE        24
  239. #DEFINE    A_FILLRED        25
  240. #DEFINE    A_FILLGREEN        26
  241. #DEFINE    A_FILLBLUE        27
  242. #DEFINE    A_PENSIZE        28
  243. #DEFINE    A_PENPAT        29
  244. #DEFINE    A_FILLPAT        30
  245. #DEFINE    A_FONTFACE        31
  246. #DEFINE    A_FONTSTYLE        32
  247. #DEFINE    A_FONTSIZE        33
  248. #DEFINE    A_MODE            34
  249. #DEFINE    A_RULER            35
  250. #DEFINE    A_RULERLINES    36
  251. #DEFINE    A_GRID            37
  252. #DEFINE    A_GRIDV            38
  253. #DEFINE    A_GRIDH            39
  254. #DEFINE    A_SCHEME        40
  255. #DEFINE    A_SCHEME2        41
  256. #DEFINE    A_COLORPAIR        42
  257. #DEFINE    A_LOTYPE        43
  258. #DEFINE    A_RANGELO        44
  259. #DEFINE    A_HITYPE        45
  260. #DEFINE    A_RANGEHI        46
  261. #DEFINE    A_WHENTYPE        47
  262. #DEFINE    A_WHEN            48
  263. #DEFINE    A_VALIDTYPE        49
  264. #DEFINE    A_VALID            50
  265. #DEFINE    A_ERRORTYPE        51
  266. #DEFINE    A_ERROR            52
  267. #DEFINE    A_MESSTYPE        53
  268. #DEFINE    A_MESSAGE        54
  269. #DEFINE    A_SHOWTYPE        55
  270. #DEFINE    A_SHOW            56
  271. #DEFINE    A_ACTIVTYPE        57
  272. #DEFINE    A_ACTIVATE        58
  273. #DEFINE    A_DEACTTYPE        59
  274. #DEFINE    A_DEACTIVATE    60
  275. #DEFINE    A_PROCTYPE        61
  276. #DEFINE    A_PROCCODE        62
  277. #DEFINE    A_SETUPTYPE        63
  278. #DEFINE    A_SETUPCODE        64
  279. #DEFINE    A_FLOAT            65
  280. #DEFINE    A_CLOSE            66
  281. #DEFINE    A_MINIMIZE        67
  282. #DEFINE    A_BORDER        68
  283. #DEFINE    A_SHADOW        69
  284. #DEFINE    A_CENTER        70
  285. #DEFINE    A_REFRESH        71
  286. #DEFINE    A_DISABLED        72
  287. #DEFINE    A_SCROLLBAR        73
  288. #DEFINE    A_ADDALIAS        74
  289. #DEFINE    A_TAB            75
  290. #DEFINE    A_INITIALVAL    76
  291. #DEFINE    A_INITIALNUM    77
  292. #DEFINE    A_SPACING        78
  293. #DEFINE    A_CURPOS        79
  294.  
  295. *- PJX Array numbers
  296. #DEFINE    A_OPENFILES        1
  297. #DEFINE    A_CLOSEFILES    2
  298. #DEFINE    A_DEFWINDOWS    3
  299. #DEFINE    A_RELWINDOWS    4
  300. #DEFINE    A_READMODAL        5
  301. #DEFINE    A_GETBORDERS    6
  302. #DEFINE    A_READCYCLE        7
  303. #DEFINE    A_READNOLOCK    8
  304. #DEFINE    A_MULTIREADS    9
  305. #DEFINE    A_ASSOCWINDS    10
  306.  
  307. *- SCX/PJX Array property mappings
  308. #DEFINE    M_READONLY        "ReadOnly"
  309. #DEFINE    M_READCYCLE        "ReadCycle"
  310. #DEFINE    M_READNOLOCK    "ReadLock"
  311. #DEFINE    M_READNOMOUSE    "ReadNoMouse"
  312. #DEFINE    M_READSAVE        "ReadSave"
  313. #DEFINE    M_READTIME        "ReadTimeout"
  314. #DEFINE    M_READOBJ        "ReadObject"
  315. #DEFINE    M_ASSOCWINDS    "WindowList"
  316. #DEFINE    M_NAME            "Name"
  317. #DEFINE    M_DATASOURCE    "ControlSource"
  318. #DEFINE    M_CAPTION        "Caption"
  319. #DEFINE    M_EXPR            "RowSource"
  320. #DEFINE    M_VPOS            "Top"
  321. #DEFINE    M_HPOS            "Left"
  322. #DEFINE    M_HEIGHT        "Height"
  323. #DEFINE    M_WIDTH            "Width"
  324. #DEFINE    M_LSTYLE        "RowSourceType"
  325. #DEFINE    M_STYLE            "Style"
  326. #DEFINE    M_PICTURE        ""
  327. #DEFINE    M_FPICTURE        "Picture"    && "Bitmap" Wallpaper
  328. #DEFINE    M_ICON            "Icon"        && Icon (Windows)
  329. #DEFINE    M_UNIQUE        ""
  330. #DEFINE    M_ENVIRON        ""
  331. #DEFINE    M_BOXCHAR        ""
  332. #DEFINE    M_FILLCHAR        "DataType"
  333. #DEFINE    M_TAG            ""
  334. #DEFINE    M_TAGD            "BottomCaption"  && DOS Only
  335. #DEFINE    M_TAG2            ""
  336. #DEFINE    M_PEN            "ForeColor"
  337. #DEFINE    M_BACKCOLOR        "BackColor"
  338. #DEFINE M_FILLCOLOR        "FillColor"
  339. #DEFINE    M_PENSIZE        "BorderWidth"
  340. #DEFINE    M_PENPAT        "BorderStyle"
  341. #DEFINE M_BORDERCOLOR    "BorderColor"
  342. #DEFINE    M_FILLPAT        "FillStyle"
  343. #DEFINE    M_FONTFACE        "FontName"
  344. #DEFINE    M_FONTSIZE        "FontSize"
  345. #DEFINE    M_FONTBOLD        "FontBold"
  346. #DEFINE    M_FONTITAL        "FontItalic"
  347. #DEFINE    M_FONTUNDER        "FontUnderline"
  348. #DEFINE M_FONTSHADOW    "FontShadow"
  349. #DEFINE M_FONTOUTLINE    "FontOutline"
  350. #DEFINE M_FONTCONDENSE    "FontCondense"
  351. #DEFINE M_FONTEXTEND    "FontExtend"
  352. #DEFINE    M_FONTOPAQ        "FontOpaque"
  353. #DEFINE    M_FONTTRANS        "FontTransparent"
  354. #DEFINE    M_MODE            "BackStyle"
  355. #DEFINE    M_RULER            ""
  356. #DEFINE    M_RULERLINES    ""
  357. #DEFINE    M_GRID            ""
  358. #DEFINE    M_GRIDV            ""
  359. #DEFINE    M_GRIDH            ""
  360. #DEFINE    M_SCHEME        "ColorScheme"
  361. #DEFINE    M_SCHEME2        ""
  362. #DEFINE    M_COLORPAIR        ""
  363. #DEFINE    M_RANGELO        "LowValue"
  364. #DEFINE    M_RANGEHI        "HighValue"
  365. #DEFINE    M_RANGE2LO        "RangeLow"
  366. #DEFINE    M_RANGE2HI        "RangeHigh"
  367. #DEFINE    M_1STELEMENT    "FirstElement"
  368. #DEFINE    M_NUMELEMENTS    "NumberOfElements"
  369. #DEFINE    M_WHEN            "ReadWhen"
  370. #DEFINE    M_WHEN2            "When"
  371. #DEFINE    M_VALID            "ReadValid"
  372. #DEFINE    M_VALID2        "Valid"
  373. #DEFINE    M_ERROR            "ErrorMessage"        && Error method
  374. #DEFINE    M_MESSAGE        "Message"              && "StatusBarText"
  375. #DEFINE    M_SHOW            "ReadShow"
  376. #DEFINE    M_ACTIVATE        "ReadActivate"
  377. #DEFINE    M_DEACTIVATE    "ReadDeactivate"
  378. #DEFINE    M_PROCCODE        ""
  379. #DEFINE M_CLEANUP        "Unload"
  380. #DEFINE    M_SETUP1        "Load"
  381. #DEFINE    M_SETUP2        "Load"                &&??? may change
  382. #DEFINE    M_FLOAT            "Movable"
  383. #DEFINE    M_CLOSE            "Closable"
  384. #DEFINE    M_MINIMIZE        "MinButton"
  385. #DEFINE M_MAXIMIZE        "MaxButton"
  386. #DEFINE M_CONTROLBOX    "ControlBox"
  387. #DEFINE M_GROW            "Sizable"
  388. #DEFINE M_MDI            "MDIChild"
  389. #DEFINE M_DESKTOP        "Desktop"
  390. #DEFINE M_WINDOW        "Window"
  391. #DEFINE    M_BORDER        "BorderStyle"
  392. #DEFINE    M_SHADOW        "Shadow"
  393. #DEFINE    M_CENTER        "AutoCenter"
  394. #DEFINE    M_HALF            "HalfHeightCaption"
  395. #DEFINE    M_REFRESH        ""
  396. #DEFINE    M_ENABLED        "Enabled"
  397. #DEFINE    M_SCROLLBAR        "ScrollBars"
  398. #DEFINE    M_ADDALIAS        ""
  399. #DEFINE    M_TAB            "AllowTabs"
  400. #DEFINE    M_FORMTABS        "Tabs"
  401. #DEFINE    M_FORMPAGES        "PageCount"
  402. #DEFINE    M_INITIALVAL    ""
  403. #DEFINE    M_INITIALNUM    ""
  404. #DEFINE    M_BUTTONS        "ButtonCount"
  405. #DEFINE    M_SPACING        "ButtonSpacing"
  406. #DEFINE    M_CURPOS        ""
  407. #DEFINE    M_READ            "WindowType"
  408. #DEFINE    M_ALIGN            "Alignment"
  409. #DEFINE M_VALUE            "Value"
  410. #DEFINE M_INIT            "Init"
  411. #DEFINE M_SHAPE            "Shape"
  412. #DEFINE M_CURVE            "Curvature"
  413. #DEFINE M_FORMAT        "Format"
  414. #DEFINE M_INPUTMSK        "InputMask"
  415. #DEFINE M_MAXLEN        "MaxLength"
  416. #DEFINE M_SPINLO        "SpinnerLowValue"
  417. #DEFINE M_SPINHI        "SpinnerHighValue"
  418. #DEFINE M_KEYLO            "KeyboardLowValue"
  419. #DEFINE M_KEYHI            "KeyboardHighValue"
  420. #DEFINE M_SPININC        "Increment"
  421. #DEFINE M_SPECIAL        "SpecialEffect"
  422. #DEFINE M_ERASEPAGE        "ErasePage"
  423. #DEFINE M_DRAWFRAME        "DrawFrame"
  424. #DEFINE M_RELEASEWIND    "ReleaseWindows"
  425. #DEFINE M_RELEASEERASE    "ReleaseErase"
  426. #DEFINE M_TERMINATEREAD    "TerminateRead"
  427. #DEFINE M_STRETCH        "Stretch"
  428. #DEFINE M_COLORSOURCE    "ColorSource"
  429. #DEFINE M_MARGIN        "Margin"
  430. #DEFINE M_READSIZE        "ReadSize"        && property for listboxes
  431. #DEFINE M_TABSTOP        "TabStop"        && use for SAYs (read-only textboxes)
  432. #DEFINE M_SCALEMODE        "ScaleMode"
  433. #DEFINE M_DISFORECOLOR    "DisabledForeColor"
  434. #DEFINE M_DISBACKCOLOR    "DisabledBackColor"
  435. #DEFINE M_ITEMFORECOLOR    "ItemForeColor"
  436. #DEFINE M_ITEMBACKCOLOR    "ItemBackColor"
  437. #DEFINE M_DISITEMFORECOLOR    "DisabledItemForeColor"
  438. #DEFINE M_DISITEMBACKCOLOR    "DisabledItemBackColor"
  439. #DEFINE M_SELITEMBACKCOLOR    "SelectedItemBackColor"
  440. #DEFINE M_WORDWRAP        "WordWrap"
  441. #DEFINE M_DEFAULT        "Default"
  442. #DEFINE M_CANCEL        "Cancel"        && new Cancel property
  443. #DEFINE M_FORMACTIVATE    "Activate"        && Form activate
  444. #DEFINE M_AUTOACTIVATE    "AutoActivate"
  445. #DEFINE M_ZOOMBOX        "ZoomBox"
  446.  
  447. *- DataNav properties
  448. #DEFINE M_AUTOLOADENV        "AutoOpenTables"
  449. #DEFINE M_AUTOUNLOADENV        "AutoCloseTables"
  450. #DEFINE M_ALIAS                "Alias"
  451. #DEFINE M_WORKAREA            "WorkArea"
  452. #DEFINE M_CURSORSRC            "CursorSource"
  453. #DEFINE M_SOURCETYPE        "SourceType"
  454. #DEFINE M_ORDER                "Order"
  455. #DEFINE M_FILTER            "Filter"
  456. #DEFINE M_EXCLUSIVE            "Exclusive"
  457. #DEFINE M_CHILDALIAS        "ChildAlias"
  458. #DEFINE M_CHILDINDEXTAG        "ChildOrder"
  459. #DEFINE M_PARENTALIAS        "ParentAlias"
  460. #DEFINE M_PARENTINDEXEXPR    "RelationalExpr"
  461. #DEFINE M_RELATIONTYPE        "RelationType"
  462. #DEFINE M_ONETOMANY            "OneToMany"
  463. #DEFINE M_INITIALALIAS        "InitialSelectedAlias"
  464.  
  465.  
  466. *- 3.0 Form Controls Classes - don't localize
  467. #DEFINE    T_FSET        "formset"
  468. #DEFINE    T_FORM        "form"
  469. #DEFINE    T_LABEL        "label"
  470. #DEFINE    T_LINE        "line"
  471. #DEFINE    T_SHAPE        "shape"
  472. #DEFINE    T_LIST        "listbox"
  473. #DEFINE    T_BTN        "commandgroup"
  474. #DEFINE    T_BTNGRP    "commandgroup"
  475. #DEFINE    T_RADIO        "optionbutton"
  476. #DEFINE    T_RADIOGRP    "optiongroup"
  477. #DEFINE    T_CBOX        "checkbox"
  478. #DEFINE    T_SAY        "textbox"
  479. #DEFINE    T_GET        "textbox"
  480. #DEFINE    T_EDIT        "editbox"
  481. #DEFINE    T_POPUP        "combobox"
  482. #DEFINE    T_SPIN        "spinner"
  483. #DEFINE    T_OLE        "oleboundcontrol"
  484. #DEFINE    T_PICT        "image"
  485. #DEFINE    T_INV        "commandgroup"
  486. #DEFINE    T_INVGRP    "commandgroup"
  487. #DEFINE    T_PAGE        "pageframe"
  488. #DEFINE T_DATANAV    "dataenvironment"
  489. #DEFINE T_CURSOR    "cursor"
  490. #DEFINE T_RELATION    "relation"
  491. #DEFINE    T_SUBCLASS    "????"
  492.  
  493. *- Misc things
  494. #DEFINE C_TRUE            .T.                && 1=1
  495. #DEFINE C_FALSE            .F.                && 1=2
  496. #DEFINE    C_SCXEXT        "SCX"            && 2.x screen extension
  497. #DEFINE    C_SCTEXT        "SCT"            && 2.x screen memo extension
  498. #DEFINE    C_SPREXT        "SPR"            && 2.x screen gen extension
  499. #DEFINE    C_VCXEXT        "VCX"            && 3.0 visual class extension
  500. #DEFINE    C_VCTEXT        "VCT"            && 3.0 visual class extension
  501. #DEFINE C_MACEXT        "_MAC"            && extension to add for Mac files
  502.  
  503. #DEFINE C_SEP            " = "            && property separator
  504. #DEFINE C_WINFONT        "MS SANS SERIF"    && FPW default font
  505. #DEFINE C_WINFSIZE        8                && FPW default font size
  506. #DEFINE C_MAXWINDS        25
  507. #DEFINE C_MAXPLATFORMS    4    
  508. #DEFINE C_MAXSCREENS    5
  509. #DEFINE C_20SCXFLDS        57
  510. #DEFINE C_30SCXFLDS        23
  511. #DEFINE C_SCXFLDS        79
  512. #DEFINE C_PJX40FLDS        28
  513. #DEFINE C_PJX30FLDS        26
  514. #DEFINE C_PJX25FLDS        31
  515. #DEFINE C_PJX20FLDS        33
  516. #DEFINE C_FPCFLDS        10
  517. #DEFINE C_20FRXFLDS        36
  518. #DEFINE C_FRXFLDS        74
  519. #DEFINE C_30FRXFLDS        75
  520. #DEFINE C_20LBXFLDS        17
  521. #DEFINE C_30DBCFLDS        8                && field count for DBCs -- need to be recompiled in 5.0
  522. #DEFINE C_FILELEN        30
  523. #DEFINE C_DOS             "DOS"
  524. #DEFINE C_WINDOWS         "WINDOWS"
  525. #DEFINE C_MAC             "MAC"
  526. #DEFINE C_UNIX            "UNIX"
  527. #DEFINE C_All            "ALL"
  528. #DEFINE C_DEFSET        "Formset"
  529. #DEFINE C_PAGEFRAME        "PageFrame1"
  530. #DEFINE C_DEFPAGE        "Page1"
  531. #DEFINE C_DEFDATANAV    "DataEnvironment"
  532. #DEFINE C_DEFCURSOR        "Cursor1"
  533. #DEFINE C_BACKDIR        "OLD"
  534. #DEFINE C_FORMCLASS        "form"
  535. #DEFINE C_THERMCLASS1    "thermometer"        && single progress bar
  536. #DEFINE C_THERMCLASS2    "therm2"            && double progress bar
  537. #DEFINE N_THERM2X        .80                    && portion of second bar devoted to converting project files -- must be < .097
  538. #DEFINE N_THERM3X        .90                    && portion of second bar devoted to converting project files -- must be < .097
  539. #DEFINE C_SELITEMCOLOR    "164,200,240"        && color for selected item in list
  540. #DEFINE C_DELOAD_METH    "Init"                && DataEnvironment method where IDX files are opened
  541. #DEFINE C_SEPARATOR        "*----- "
  542. #DEFINE K_TIMEOUT_FACTOR    1000            && VFP seems to measure READTIMEOUT in milliseconds
  543. #DEFINE N_BLOCKSZ        0                    && block size for newly created scx files
  544. #DEFINE N_BUFFSZ        1024                && amount to read at one time from compiled FRX code
  545.  
  546. * Definitions for Objtype fields in screens/reports/labels
  547. #DEFINE N_OTHEADER         1
  548.  
  549. #DEFINE N_MAXTRANFILETYPES    3                && number of file types that transporter can handle (All,PJX, SCX, FRX)
  550. #DEFINE N_TRANFILE_PJX    1
  551. #DEFINE N_TRANFILE_SCX    2
  552. #DEFINE N_TRANFILE_FRX    3
  553.  
  554. #DEFINE C_CURSSOURCTYPE        1
  555. #DEFINE N_PIXELMODE            1                && scalemode type
  556. #DEFINE I_DEFCOLORSOURCE    3                && default color source
  557. #DEFINE I_WINCPCOLORSOURCE    5                && Windows Control Panel / Window Colors
  558.  
  559. #DEFINE I_DISKFULLERR        56                && disk full error number
  560.  
  561. #DEFINE C_LOGEXT        "LOG"                && extension for log file
  562.  
  563. #DEFINE C_CONTROLS        "CTL"
  564. #DEFINE C_DNO            "DNO"
  565. #DEFINE C_VCX            "VCX"
  566. #DEFINE N_VCXTYPE        99
  567. #DEFINE C_30VERS        "3.0"
  568.  
  569. #DEFINE C_TRANSPORT        "transprt"            && transport program to use, if _transport is empty
  570.                                             && it is passed the following parms:
  571.                                             && m.g_scrndbf        file to transport (C)
  572.                                             && m.tp_filetype    file type (N) see transprt.prg for possible values
  573.                                             && m.dummy            not used
  574.                                             && m.gAShowMe        3 X 6 array
  575.                                             && m.gOTherm        ref to thermometer object
  576.                                             && m.cRealName        name of file to display in dialogs
  577.                                             && m.lPJX            called as part of a project?
  578.  
  579. #DEFINE C_DATANAVLOAD    "THIS.DataEnvironment.OpenTables"
  580. #DEFINE C_SETSKIP        "SET SKIP TO "        && don;t localize -- for SET SKIP to in DataEnvironment
  581. #DEFINE C_SELECT        C_SETSKIP_CMMT_LOC + ;
  582.                         "SELECT "            && don;t localize -- for SET SKIP to in DataEnvironment
  583. #DEFINE C_DATANAVOPEN    "PROCEDURE Init" + C_CR
  584. #DEFINE C_FRXDEDESTROY    C_CR + "PROCEDURE Destroy" + C_CR + ;
  585.                         C_FRXDESTROY_LOC + ;
  586.                         "THIS.OpenTables" + C_CR + ;
  587.                         "THIS.Init" + C_CR
  588. #DEFINE C_GOTOVARPRE    "_iconv"
  589. #DEFINE C_GOTOVAREXT    "GoToPlaceHolder"
  590. #DEFINE C_GOTO1             C_CR + C_GOTO1_CMMT_LOC + ;
  591.                         [LOCAL aTbl, iLen, i, iRec, cVar, iPrev] + C_CR + ;
  592.                         [iPrev = SELECT()] + C_CR + ;
  593.                         "DIMENSION aTbl[1,2]" + C_CR + ;
  594.                         [iLen = AUSED(aTbl)] + C_CR + ;
  595.                         [FOR i = 1 TO iLen] + C_CR + ;
  596.                         C_TAB + "cVar = '_iconv' + PROPER(aTbl[i,1]) + 'GoToPlaceHolder'" + C_CR +;
  597.                         C_TAB + [IF TYPE(cVar) # 'N'] + C_CR + ;
  598.                         C_TAB + C_TAB + [iRec = -2] + C_CR + ;
  599.                         C_TAB + [ELSE] + C_CR + ;
  600.                         C_TAB + C_TAB + [iRec = EVAL(cVar)] + C_CR + ;
  601.                         C_TAB + [ENDIF] + C_CR + ;
  602.                         C_TAB + "IF USED(aTbl[i,1])" + C_CR + ;
  603.                         C_TAB + C_TAB + "SELECT (aTbl[i,1])" + C_CR + ;
  604.                         C_TAB + C_TAB + [DO CASE] + C_CR + ;
  605.                         C_TAB + C_TAB + C_TAB + [CASE BETWEEN(iRec, 1, RECCOUNT())] + C_CR + ;
  606.                         C_TAB + C_TAB + C_TAB + C_TAB + [GOTO iRec] + C_CR + ;
  607.                         C_TAB + C_TAB + C_TAB + [CASE iRec = 0] + C_CR + ;
  608.                         C_TAB + C_TAB + C_TAB + C_TAB + [GO TOP] + C_CR + ;
  609.                         C_TAB + C_TAB + C_TAB + C_TAB + [SKIP IIF(!BOF(),-1,0)] + C_CR + ;
  610.                         C_TAB + C_TAB + C_TAB + [CASE iRec = -1] + C_CR + ;
  611.                         C_TAB + C_TAB + C_TAB + C_TAB + [GO BOTTOM] + C_CR + ;
  612.                         C_TAB + C_TAB + C_TAB + C_TAB + [SKIP IIF(!EOF(),1,0)] + C_CR + ;
  613.                         C_TAB + C_TAB + C_TAB + [OTHERWISE] + C_CR + ;
  614.                         C_TAB + C_TAB + C_TAB + C_TAB + [GO TOP] + C_CR + ;
  615.                         C_TAB + C_TAB + [ENDCASE] + C_CR + ;
  616.                         C_TAB + [ENDIF] + C_CR + ;
  617.                         [NEXT] + C_CR + ;
  618.                         [IF iPrev > 0] + C_CR + ;
  619.                         C_TAB + [IF USED(iPrev)] + C_CR + ;
  620.                         C_TAB + C_TAB + [SELECT (iPrev)] + C_CR + ;
  621.                         C_TAB + [ENDIF] + C_CR + ;
  622.                         [ENDIF] + C_CR + ;
  623.                         [RELEASE aTbl, iLen, i, iRec, cVar, iPrev] + C_CR
  624.  
  625. #DEFINE C_GOTO2A        [IF USED("]
  626. #DEFINE C_GOTO2            [")] + C_CR + C_TAB + [SELECT ]
  627. #DEFINE C_GOTO3            [ = IIF(BOF(), 0, IIF(EOF(), -1, RECNO()))] + C_CR + ;
  628.                         [ENDIF] + C_CR
  629.  
  630. *- code for setup and cleanup in SCX files
  631. #DEFINE C_SETUP_CODE        C_SETUP_CMMT_LOC + ;
  632.                             [PRIVATE m.compstat, m.currarea, m.rborder, m.talkstat] + C_CRLF + ;
  633.                             [IF SET("TALK") = "ON"] + C_CRLF + ;
  634.                             C_TAB + [SET TALK OFF] + C_CRLF + ;
  635.                             C_TAB + [m.talkstat = "ON"] + C_CRLF + ;
  636.                             [ELSE] + C_CRLF + ;
  637.                             C_TAB + [m.talkstat = "OFF"] + C_CRLF + ;
  638.                             [ENDIF] + C_CRLF + ;
  639.                             [m.compstat = SET("COMPATIBLE")] + C_CRLF + ;
  640.                             [SET COMPATIBLE FOXPLUS] + C_CRLF + ;
  641.                             C_CRLF + ;
  642.                             [m.rborder = SET("READBORDER")] + C_CRLF + ;
  643.                             [SET READBORDER ON] + C_CRLF + ;
  644.                             C_CRLF + ;
  645.                             [m.currarea = SELECT()] + C_CRLF + ;
  646.                             C_CRLF
  647.  
  648. #DEFINE C_CLEANUP_CODE        C_CLEANUP_CMMT_LOC + ;
  649.                             [IF TYPE("rborder") == 'C'] + C_CRLF + ;
  650.                             C_TAB + [SET READBORDER &rborder] + C_CRLF + ;
  651.                             [ENDIF] + C_CRLF + ;
  652.                             C_CRLF + ;
  653.                             [IF TYPE("talkstat") == 'C'] + C_CRLF + ;
  654.                             C_TAB + [IF m.talkstat = "ON"] + C_CRLF + ;
  655.                             C_TAB + C_TAB + [SET TALK ON] + C_CRLF + ;
  656.                             C_TAB + [ENDIF] + C_CRLF + ;
  657.                             [ENDIF] + C_CRLF + ;
  658.                             C_CRLF + ;
  659.                             [IF TYPE("compstat") == 'C'] + C_CRLF + ;
  660.                             C_TAB + [IF m.compstat = "ON"] + C_CRLF + ;
  661.                             C_TAB + C_TAB + [SET COMPATIBLE ON] + C_CRLF + ;
  662.                             C_TAB + [ENDIF] + C_CRLF + ;
  663.                             [ENDIF] + C_CRLF + C_CRLF
  664.  
  665. #DEFINE C_SCXBACKEXT    "S2X"
  666. #DEFINE C_SCTBACKEXT    "S2T"
  667. #DEFINE C_FPCBACKEXT    "C2C"
  668. #DEFINE C_FCTBACKEXT    "C2T"
  669. #DEFINE C_FRXBACKEXT    "F2X"
  670. #DEFINE C_FRTBACKEXT    "F2T"
  671. #DEFINE C_LBXBACKEXT    "L2X"
  672. #DEFINE C_LBTBACKEXT    "L2T"
  673. #DEFINE C_VCXBACKEXT    "V3X"
  674. #DEFINE C_VCTBACKEXT    "V3T"
  675.  
  676. #DEFINE N_3D            0
  677. #DEFINE N_PLAIN            1
  678. #DEFINE C_OPAQUE        1
  679. #DEFINE N_TRANSPARENT    0
  680. #DEFINE L_CONVERT        .T.
  681. #DEFINE L_NOCONVERT        .F.
  682.  
  683. #DEFINE C_IDBYTE30        CHR(48)
  684.  
  685. #DEFINE DT_DFLTTIME        "01/01/95 12:00"
  686. *- Project types that need to be converted
  687. #DEFINE C_SCREENSET        "s"
  688. #DEFINE C_SCREEN        "S"
  689. #DEFINE C_MENU            "M"
  690. #DEFINE C_QUERY            "Q"
  691. #DEFINE C_REPORT        "R"
  692. #DEFINE C_LABEL            "B"
  693. #DEFINE C_FORMAT        "F"
  694. #DEFINE C_HEADER        "H"
  695.  
  696. *- other (may be 3.0) project types
  697. #DEFINE C_SCXTYPE        "K"
  698. #DEFINE C_VCXTYPE        "V"
  699. #DEFINE C_PRGTYPE        "P"
  700. #DEFINE C_DBCTYPE        "d"            && 3.0 database
  701.  
  702. *- catalog manager file types
  703. #DEFINE C_FPCCATTYPE        "fpc"
  704. #DEFINE C_FPCSCREENTYPE        "scx"
  705. #DEFINE C_FPCLABELTYPE        "lbx"
  706. #DEFINE C_FPCCSQUERYTYPE    "csq"
  707. #DEFINE C_FPCUPQUERYTYPE    "fpq"
  708. #DEFINE C_FPCSQLQUERYTYPE    "qpr"
  709. #DEFINE C_FPCREPORTTYPE        "frx"
  710. #DEFINE C_FPCDBFTYPE        "dbf"
  711. #DEFINE C_FPCAPPTYPE        "app"
  712. #DEFINE C_FPCPRGTYPE        "prg"
  713.  
  714. #DEFINE C_DB4CATTYPE        "cat"
  715. #DEFINE C_DB4SCREENTYPE        "scr"
  716. #DEFINE C_DB4LABELTYPE        "lbl"
  717. #DEFINE C_DB4UPQUERYTYPE    "upd"
  718. #DEFINE C_DB4SQLQUERYTYPE    "qbe"
  719. #DEFINE C_DB4REPORTTYPE        "frm"
  720. #DEFINE C_DB4DBFTYPE        "dbf"
  721.  
  722. *- DBase IV values
  723. #DEFINE dbiv_lbl_type 11
  724. #DEFINE dbiv_scr_type 18
  725. #DEFINE dbiv_frm_type  7
  726.  
  727. *- FRX ObjType values for new DataEnvironment objects
  728. #DEFINE N_FRX_DATAENV    25
  729. #DEFINE N_FRX_CURSOR    26
  730. #DEFINE N_FRX_RELATION    26
  731.  
  732. *- these codes replicate FOXPRO.H #DEFINEs
  733.  
  734. *-- MessageBox parameters
  735. #DEFINE MB_OK                   0       && OK button only
  736. #DEFINE MB_OKCANCEL             1       && OK and Cancel buttons
  737. #DEFINE MB_ABORTRETRYIGNORE     2       && Abort, Retry, and Ignore buttons
  738. #DEFINE MB_YESNOCANCEL          3       && Yes, No, and Cancel buttons
  739. #DEFINE MB_YESNO                4       && Yes and No buttons
  740. #DEFINE MB_RETRYCANCEL          5       && Retry and Cancel buttons
  741.  
  742. *-- MsgBox return values
  743. #DEFINE IDOK            1       && OK button pressed
  744. #DEFINE IDCANCEL        2       && Cancel button pressed
  745. #DEFINE IDABORT         3       && Abort button pressed
  746. #DEFINE IDRETRY         4       && Retry button pressed
  747. #DEFINE IDIGNORE        5       && Ignore button pressed
  748. #DEFINE IDYES           6       && Yes button pressed
  749. #DEFINE IDNO            7       && No button pressed
  750.  
  751. *-- Low Level File Constants
  752. #DEFINE F_READONLY              0
  753. #DEFINE F_WRITEONLY             1
  754. #DEFINE F_READWRITE             2
  755. #DEFINE F_READONLY_UNBUFF       10
  756. #DEFINE F_WRITEONLY_UNBUFF      11
  757. #DEFINE F_READWRITE_UNBUFF      12
  758.  
  759. *- end of CONVERT.H