home *** CD-ROM | disk | FTP | other *** search
/ Microsoftware Monthly 19…2 Programming Power Tools / MASO9512.ISO / smart / smart.hlp (.txt) < prev    next >
Encoding:
OS/2 Help File  |  1995-05-16  |  185.3 KB  |  7,564 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. SMART On-Line Help ΓòÉΓòÉΓòÉ
  3.  
  4.    The SMART Toolset
  5.    Source Migration Analysis Reporting Toolset
  6.    Native 'C' and C++ Source Code Migration
  7.        Version 2.1B
  8.        May 1995
  9.  
  10.    (C) 1991, 1994, 1995 One Up Corporation
  11.      All Rights Reserved
  12.  
  13. Topic Sections: 
  14.  
  15.  One Up Products and Services 
  16.  Main Menu 
  17.  Dialog Panels 
  18.  Introduction/Tutorial 
  19.  Utilities 
  20.  Reference 
  21.  
  22.  
  23. ΓòÉΓòÉΓòÉ 2. One Up Products and Services ΓòÉΓòÉΓòÉ
  24.  
  25. One Up Corporation develops technical programming and end user OS/2 software 
  26. products, computer education and consulting services. 
  27.  
  28. SMART is the application you are currently running. This tool provides powerful 
  29. assistance in the process of migrating source code and migration analysis and 
  30. evaluation. 
  31.  
  32. SourceLink is an excellent general programming tool with an emphasis on 
  33. hyperlink source code access and source code editing. SourceLink is tightly 
  34. integrated into SMART to provide a highly productive programming environment. 
  35.  
  36. Window Washer is a screen saver with many animation features. 
  37.  
  38. Open Shutter creates screen captures and bitmap translation. 
  39.  
  40. Computer Education and Training is provided in formal classes at One Up's 
  41. educational facility. 
  42.  
  43. Consulting Services providing outsourcing of platform porting for your software 
  44. and porting workshops. 
  45.  
  46. For sales information regarding these products and services please contact: 
  47.  
  48.    One Up Corporation
  49.    Sales Department
  50.    1603 LBJ Freeway, Ste 200
  51.    Dallas, Texas 75234
  52.  
  53.    sales  (214) 620-1123
  54.    support (214) 620-6092
  55.    fax   (214) 620-9626
  56.  
  57. See Also: 
  58.  
  59.  SMART 
  60.  SourceLink 
  61.  Window Washer 
  62.  Open Shutter 
  63.  Computer Education and Training 
  64.  Consulting Services 
  65.  
  66.  SMART On-Line Help 
  67.  
  68.  
  69. ΓòÉΓòÉΓòÉ 2.1. SMART - Product Information ΓòÉΓòÉΓòÉ
  70.  
  71. SMART provides analysis and source code migration from one platform to another 
  72. or one version to another on a given platform. SMART - Source Code Migration, 
  73. Analysis, and Reporting Tool. 
  74.  
  75. Features 
  76.  
  77.    The SMART process provides native source code migration without the 
  78. requirement of emulation, and other run time modules by the completed 
  79. application as part of this process. 
  80.  
  81.    The current version supports Windows 16 bit -> OS/2 32 bit, OS/2 16 bit -> 
  82. OS/2 32 bit or Windows 32 bit -> OS/2 32 bit migration and analysis depending 
  83. upon the licensed migration tables that are installed with this application. 
  84.  
  85.    Source code analysis provides detailed report and display of items to be 
  86. ported. 
  87.  
  88.    Analysis indicates category of changes and relative effort for port. 
  89.  
  90.    Migration automatically changes many straight forward differences (Category 
  91. 010 items). All other items to be changed are flagged with in-line comments. 
  92.  
  93.    Migration code formats are user selectable. 
  94.  
  95.    Interface with SourceLink provides automatic hyperlink to points of change 
  96. and provides IDE support. 
  97.  
  98.    SMART Viewer provides on-line access to migration help. 
  99.  
  100. See Also: 
  101.  
  102.  SMART On-Line Help 
  103.  One Up Products 
  104.  
  105.  
  106. ΓòÉΓòÉΓòÉ 2.2. SourceLink - Product Information ΓòÉΓòÉΓòÉ
  107.  
  108. SourceLink is a feature rich programming development tool combining hyperlink 
  109. source code access, a fully functional editor, and many file manipulation 
  110. utility functions. 
  111.  
  112. Features 
  113.  
  114.    Build hyperlinks to key elements of your source code. 
  115.  
  116.    REXX Macro interface. 
  117.  
  118.    Full IBM Workframe interface. 
  119.  
  120.    Spawn Compiles directly from SourceLink and hyperlink to errors. 
  121.  
  122.    Context sensitivity to all IBM development help files (if installed). 
  123.  
  124.    Edit with multiple windows, any size files. 
  125.  
  126.    Create functional call tree and other documentation display - all hyperlink 
  127. sensitive. 
  128.  
  129.    Unsurpassed methods for navigating directories, drives and source code. 
  130.  
  131.    Hyperlink capabilities make learning new code a breeze. 
  132.  
  133.    Print SMART analysis and source code with format from within SourceLink. 
  134.  
  135.    Interface with SMART provides automatic hyperlink to all points of change. 
  136.  
  137. See Also: 
  138.  
  139.  SMART On-Line Help 
  140.  One Up Products 
  141.  
  142.  
  143. ΓòÉΓòÉΓòÉ 2.3. Open Shutter - Product Information ΓòÉΓòÉΓòÉ
  144.  
  145. This simple to use screen capture process allows you to select any rectangular 
  146. area, window, or the entire desktop, and capture it with a single user-defined 
  147. keystroke or mouse click. Rotate your image at any angle, map colors and modify 
  148. your color palette, and stretch or compress your image to any dimension you 
  149. need. 
  150.  
  151. Preview the modifications prior to output. Save your image as an OS/2 or 
  152. Windows BMP, ICO or metafile.  Also save as an OS/2 pointer, Windows Cursor, PC 
  153. Paint Brush (PCX), Tagged Image File Format (TIFF), Graphic Interchange Format 
  154. (GIF), Ventura Publisher image format (IMG), and MacPaint (MAC) formats. 
  155.  
  156. Features 
  157.  
  158.    Captures screen regions and windows for OS/2. 
  159.  
  160.    Output to printer, clipboard, or file. 
  161.  
  162.    Select any window or portion of a window for capture. 
  163.  
  164.    Set your own hotkey for quick save or print. 
  165.  
  166.    Save in 2, 4, 8 or 24 bit color or gray scales. 
  167.  
  168.    Flip horizontally/vertically and rotate to any angle. 
  169.  
  170.    View previously saved screen captures. 
  171.  
  172.    Stretch or compress captured area. 
  173.  
  174.    Gray shading and color mapping. 
  175.  
  176.    Preview prior to save or print. 
  177.  
  178. See Also: 
  179.  
  180.  SMART On-Line Help 
  181.  One Up Products 
  182.  
  183.  
  184. ΓòÉΓòÉΓòÉ 2.4. Window Washer - Product Information ΓòÉΓòÉΓòÉ
  185.  
  186. This latest addition of the best selling 32-bit screen saver for OS/2 now 
  187. provides the first FULL SCREEN keyboard monitoring feature for OS/2, along with 
  188. new effects and multimedia enhancements. Window Washer provides OS/2 users with 
  189. full password security of their personal computers as well as providing monitor 
  190. phosphor burn-in protection. 
  191.  
  192. Features 
  193.  
  194.    Provides screen saving and locking functionality. 
  195.  
  196.    Digital audio and video enabled. 
  197.  
  198.    Ability to use TIFF, GIF, BMP and PCX backgrounds for Window Washer Effect. 
  199.  
  200.    Ability to play CD's, or any Digital Audio supported by MMPM/2. 
  201.  
  202.    Hot Key activation. 
  203.  
  204.    Keyboard/Mouse password protection. 
  205.  
  206.    Keyboard monitoring of Full Screen sessions for inactivity. 
  207.  
  208.    Effects include: 
  209.  
  210.     Enhanced Window Washer 
  211.     Riding Mower 
  212.     Spot Light 
  213.     Slider 
  214.     PM Lines 
  215.     Messages 
  216.     Digital Movies 
  217.     Spinning Globe 
  218.  
  219. See Also: 
  220.  
  221.  SMART On-Line Help 
  222.  One Up Products 
  223.  
  224.  
  225. ΓòÉΓòÉΓòÉ 2.5. Computer Education and Training - Service Information ΓòÉΓòÉΓòÉ
  226.  
  227. One Up's educational services offer an unmatched curriculum delivered by OS/2 
  228. professionals. 
  229.  
  230. Features 
  231.  
  232.    Scheduled classes are taught at One Up corporate facility in Dallas, Texas. 
  233.    Courses include: 
  234.     OS/2 Basics for End Users 
  235.     Installing, Using and Customizing OS/2 
  236.     OS/2 Technical Support 
  237.     'C' Language Programming 
  238.     C++ Programming 
  239.     OS/2 PM Programming 
  240.     Advanced OS/2 PM Programming 
  241.     SOM Programming for OS/2 
  242.     OS/2 LAN Server Administration 
  243.     OS/2 Communications Manager 
  244.     SMART Tools and Migration Techniques 
  245.  
  246. See Also: 
  247.  
  248.  SMART On-Line Help 
  249.  One Up Products 
  250.  
  251.  
  252. ΓòÉΓòÉΓòÉ 2.6. Consulting Services - Service Information ΓòÉΓòÉΓòÉ
  253.  
  254. One Up provides complete application migration and porting services. Using the 
  255. One Up developed Tools - SMART and SourceLink, in conjunction with a migration 
  256. methodology and the expertise of trained and experienced professionals, One Up 
  257. will provide a native source code port for your application. 
  258.  
  259. Features 
  260.  
  261.    Custom outsourcing for the migration of your application across multiple 
  262. platforms. 
  263.    Use of professional with extensive experience in porting and multiple 
  264. platform issues. 
  265.    Reduction of effort and time through the use of highly productive tools and 
  266. methodologies. 
  267.  
  268. See Also: 
  269.  
  270.  SMART On-Line Help 
  271.  One Up Products 
  272.  
  273.  
  274. ΓòÉΓòÉΓòÉ 3. SMART Main Menu ΓòÉΓòÉΓòÉ
  275.  
  276. The SMART Main Menu includes the following selections: 
  277.  
  278.    File - File Functions. 
  279.    Analysis - Analysis Functions. 
  280.    Migration - Migration Functions. 
  281.    Resources - Resources Functions. 
  282.    Tables - Table Functions. 
  283.    Options - Setup and Configuration Functions. 
  284.    Help - On-line Help. 
  285.  
  286. See Also: 
  287.  
  288.  SMART On-Line Help 
  289.  
  290.  
  291. ΓòÉΓòÉΓòÉ 3.1. File Menu ΓòÉΓòÉΓòÉ
  292.  
  293. The File Menu contains selections dealing with SMART common file functions. 
  294.  
  295. Access  Alt-F 
  296.  
  297. The File Menu includes the following selections: 
  298.  
  299.    Open/View File(s) 
  300.    Maintain List-of-Files 
  301.    Maintain PreProc Variables File 
  302.    Select Current List-of-Files 
  303.    Print Analysis Report 
  304.    Printer Setup 
  305.    Exit 
  306.  
  307. See Also: 
  308.  
  309.  Main Menu 
  310.  SMART On-Line Help 
  311.  
  312.  
  313. ΓòÉΓòÉΓòÉ 3.1.1. Open/View File(s) ΓòÉΓòÉΓòÉ
  314.  
  315. This selection provides a dialog panel for selecting a files (or files) to edit 
  316. or view. 
  317.  
  318. Features 
  319.  
  320.  1. Files may be selected by navigating through the drives/directories and file 
  321.     list boxes. 
  322.  
  323.  2. You can display sets of files designated by a wildcard extension parameter. 
  324.  
  325.  3. The filenames selected will be sent to the editor/browser that has been 
  326.     defined in the Setup Options panel. 
  327.  
  328. Access 
  329.  
  330.   Alt-F, O (File Menu, Selection O) 
  331.  
  332. See Also: 
  333.  
  334.  Open File Dialog 
  335.  Setup Options Dialog 
  336.  
  337.  SMART On-Line Help 
  338.  Main Menu 
  339.  File Menu 
  340.  
  341.  
  342. ΓòÉΓòÉΓòÉ 3.1.2. Maintain List-of-Files ΓòÉΓòÉΓòÉ
  343.  
  344. This selection provides the functionality for creating or maintaining a 
  345. List-of-Files. 
  346.  
  347. A 'List-of-Files' is actually a text file containing fully qualified filenames 
  348. for The SMART Tool Analysis or Source Code Migration.  Typically these files 
  349. are ".C", ".CPP", "H", "HPP" source files for source analysis. A similiar 
  350. List-of-Files can be constructed to contain the .RC and .DLG files for Windows 
  351. resource analysis. 
  352.  
  353. This List-of-Files can also be created or maintained by SourceLink or a text 
  354. editor. 
  355.  
  356. Features 
  357.  
  358.  1. The 'List-of-Files' filename is first created or selected from the File 
  359.     Selection Dialog. 
  360.  
  361.  2. The Files List Dialog displays the current filenames in the 
  362.     'List-of-Files'. 
  363.  
  364.  3. You may add or delete files from this list. 
  365.  
  366.  4. The Add Files Dialog provides a quick method of selecting files to add to 
  367.     the list. 
  368.  
  369. Access 
  370.  
  371.   Alt-F, L (File Menu, Selection L) 
  372.  
  373. See Also: 
  374.  
  375.  File Selection Dialog 
  376.  Files List Dialog 
  377.  Add Files Dialog 
  378.  
  379.  SMART On-Line Help 
  380.  Main Menu 
  381.  File Menu 
  382.  
  383.  
  384. ΓòÉΓòÉΓòÉ 3.1.3. Maintain Preprocessor Variables File ΓòÉΓòÉΓòÉ
  385.  
  386. This selection provides the functionality for creating or maintaining a file 
  387. containing preprocessor (ifdef) variables. 
  388.  
  389. Preprocessor variables for both Analysis and/or Migration can be defined in a 
  390. text file using this process. 
  391.  
  392. Use of preprocessor variables in 'ifdefined' statements can be used to skip or 
  393. include source code to be processed by SMART. 
  394.  
  395. Features 
  396.  
  397.  1. A list of all preprocessor variables can be created using SLBUILD.EXE (from 
  398.     SourceLink). 
  399.  
  400.  2. You can specify variables and the processing value in this process. 
  401.  
  402.  3. The preprocessor variables file can also be created using a text editor. 
  403.  
  404. Access 
  405.  
  406.   Alt-F, P (File Menu, Selection P) 
  407.  
  408. See Also: 
  409.  
  410.  File Selection Dialog 
  411.  Preprocessor Dialog 
  412.  
  413.  SMART On-Line Help 
  414.  Main Menu 
  415.  File Menu 
  416.  
  417.  
  418. ΓòÉΓòÉΓòÉ 3.1.4. Select Current List-of-Files ΓòÉΓòÉΓòÉ
  419.  
  420. This selection provides the functionality selecting an existing List-of-Files 
  421. for processing Analysis or Migration. 
  422.  
  423. SMART projects are defined by unique List-of-Files. 
  424.  
  425. Features 
  426.  
  427.  1. The File Selection Dialog provides the method for navigating through your 
  428.     directories and selecting the List-of-Files filename. 
  429.  
  430.  2. The current list filename is displayed in the main title bar of SMART 
  431.  
  432. Access 
  433.  
  434.   Alt-F, S (File Menu, Selection S) 
  435.  
  436. See Also: 
  437.  
  438.  File Selection Dialog 
  439.  
  440.  SMART On-Line Help 
  441.  Main Menu 
  442.  File Menu 
  443.  
  444.  
  445. ΓòÉΓòÉΓòÉ 3.1.5. Print Analysis Files ΓòÉΓòÉΓòÉ
  446.  
  447. This selection provides the functionality to select an analysis file and 
  448. summary files to print. 
  449.  
  450. Features 
  451.  
  452.  1. Up to two summary files can be specified for printing in a single report. 
  453.  
  454.  2. The Print Analysis Dialog provides the method and entry fields to specify 
  455.     the report files to be printed, along with the name to appear on the report 
  456.     heading. 
  457.  
  458.  3. The print format dialog can be accessed from this panel. 
  459.  
  460. Access 
  461.  
  462.   Alt-F, A (File Menu, Selection A) 
  463.  
  464. See Also: 
  465.  
  466.  Print Analysis Dialog 
  467.  
  468.  SMART On-Line Help 
  469.  Main Menu 
  470.  File Menu 
  471.  
  472.  
  473. ΓòÉΓòÉΓòÉ 3.1.6. Printer Setup ΓòÉΓòÉΓòÉ
  474.  
  475. This selection provides the functionality to select and setup a printer for 
  476. printing. 
  477.  
  478. Features 
  479.  
  480.  1. You can choose from a list of installed printers. 
  481.  
  482.  2. By selecting 'Job Properties' on this panel the selected printer setup 
  483.     panels will appear. 
  484.  
  485. Access 
  486.  
  487.   Alt-F, U (File Menu, Selection U) 
  488.  
  489. See Also: 
  490.  
  491.  SMART On-Line Help 
  492.  Main Menu 
  493.  File Menu 
  494.  
  495.  
  496. ΓòÉΓòÉΓòÉ 3.1.7. Exit SMART ΓòÉΓòÉΓòÉ
  497.  
  498. This selection will terminate SMART. 
  499.  
  500. Features 
  501.  
  502.  1. Unless the option is checked to verify close, SMART will immediately 
  503.     terminate. 
  504.  
  505.  2. This option is maintained in the Setup Options Dialog. 
  506.  
  507. Access 
  508.  
  509.   Alt-F, X (File Menu, Selection X) 
  510.  
  511. See Also: 
  512.  
  513.  Setup Options Dialog 
  514.  
  515.  SMART On-Line Help 
  516.  Main Menu 
  517.  File Menu 
  518.  
  519.  
  520. ΓòÉΓòÉΓòÉ 3.2. Analysis Menu ΓòÉΓòÉΓòÉ
  521.  
  522. The Analysis Menu contains selections dealing with source code analysis. 
  523.  
  524. Access  Alt-A 
  525.  
  526. The Analysis Menu includes the following selections: 
  527.  
  528.    Analysis 
  529.    Analyze Resource Code 
  530.    Recreate Analysis Display 
  531.    Packup Analysis Files 
  532.    Remove Temp. Analysis Files 
  533.    Display Detail 
  534.    Display Recap 
  535.  
  536. See Also: 
  537.  
  538.  Main Menu 
  539.  SMART On-Line Help 
  540.  
  541.  
  542. ΓòÉΓòÉΓòÉ 3.2.1. Analyze Code ΓòÉΓòÉΓòÉ
  543.  
  544. This selection will display the Analysis Configuration Dialog. Analysis options 
  545. and parameters can be chosen. Subsequently, you can proceed through the source 
  546. code analysis to identify changes in code migration. 
  547.  
  548. If there is no List-of-Files currently selected, a selection dialog will 
  549. preceed this configuration panel. 
  550.  
  551. Features 
  552.  
  553.  1. Selection of List-of-Files, Exclude (keyword) file, Preprocessor variable 
  554.     file. 
  555.  
  556.  2. Selection of analysis display and report options. 
  557.  
  558. Access 
  559.  
  560.   Alt-A, A (Analysis Menu, Selection A) 
  561.  
  562. See Also: 
  563.  
  564.  Analysis Configuration Dialog 
  565.  
  566.  SMART On-Line Help 
  567.  Main Menu 
  568.  Analysis Menu 
  569.  
  570.  
  571. ΓòÉΓòÉΓòÉ 3.2.2. Analyze Resource Code ΓòÉΓòÉΓòÉ
  572.  
  573. This selection will display the Analyze Resources Dialog when you have selected 
  574. any migration table where Windows is the source platform. Resource Analysis 
  575. options and parameters can be chosen. Subsequently, you can proceed through the 
  576. source code analysis to identify changes in code migration. 
  577.  
  578. If there is no List-of-Files currently selected, a selection dialog will 
  579. preceed this configuration panel. 
  580.  
  581. The list-of-Files should only contain .RC and .DLG file names. 
  582.  
  583. Features 
  584.  
  585.  1. Selection of List-of-Files file. 
  586.  
  587.  2. Selection of analysis summary output filename. 
  588.  
  589.  3. Optional entry field for Effort Modifier. 
  590.  
  591. Access 
  592.  
  593.   Alt-A, S (Analysis Menu, Selection S) 
  594.  
  595. See Also: 
  596.  
  597.  Analyze Resources Dialog 
  598.  
  599.  SMART On-Line Help 
  600.  Main Menu 
  601.  Analysis Menu 
  602.  
  603.  
  604. ΓòÉΓòÉΓòÉ 3.2.3. Recreate Analysis Display ΓòÉΓòÉΓòÉ
  605.  
  606. This selection will display the Analysis Configuration Dialog Analysis options 
  607. and parameters can be chosen. Subsequently, you can proceed to re-create an 
  608. analysis display from existing temporary analysis files. 
  609.  
  610. You must have previously performed the source code analysis. 
  611.  
  612. Features 
  613.  
  614.  1. Skips the analysis phase of source code analysis process to rebuild the 
  615.     display report. 
  616.  
  617.  2. Can be used to regroup previously analyzed files for report display. 
  618.  
  619. Access 
  620.  
  621.   Alt-A, C (Analysis Menu, Selection C) 
  622.  
  623. See Also: 
  624.  
  625.  Analysis Configuration Dialog 
  626.  Analyze Code 
  627.  
  628.  SMART On-Line Help 
  629.  Main Menu 
  630.  Analysis Menu 
  631.  
  632.  
  633. ΓòÉΓòÉΓòÉ 3.2.4. Packup Analysis Files ΓòÉΓòÉΓòÉ
  634.  
  635. This selection will compress all temporary analysis files corresponding to the 
  636. List-of-Files files, and copy these compressed files to a floppy disk on the A: 
  637. drive. 
  638.  
  639. This process requires that you have a copy of "PKZIP2.EXE" from PKWARE, Inc. 
  640.  
  641. Features 
  642.  
  643.  1. Before processing, a Select List-of-Files Dialog panel will be displayed to 
  644.     verify or change the current List-of-Files. 
  645.  
  646.  2. Compresses and backs up analysis files for storage or transmission. 
  647.  
  648.  3. You may choose Remove Analysis  after successfully completing this process 
  649.     to delete all backed up  analysis files. 
  650.  
  651. Access 
  652.  
  653.   Alt-A, P (Analysis Menu, Selection P) 
  654.  
  655. See Also: 
  656.  
  657.  Remove Temp. Analysis Files 
  658.  Select List-of-Files Dialog 
  659.  
  660.  SMART On-Line Help 
  661.  Main Menu 
  662.  Analysis Menu 
  663.  
  664.  
  665. ΓòÉΓòÉΓòÉ 3.2.5. Remove Temp. Analysis Files ΓòÉΓòÉΓòÉ
  666.  
  667. This selection will delete all temporary analysis files corresponding to the 
  668. List-of-Files files. 
  669.  
  670. Features 
  671.  
  672.  1. Before processing, a Select List-of-Files Dialog panel will be displayed to 
  673.     verify or change the current List-of-Files. 
  674.  
  675.  2. Before removal you may want to backup the analysis files for future 
  676.     processing. See: Packup Analysis 
  677.  
  678. Access 
  679.  
  680.   Alt-A, T (Analysis Menu, Selection T) 
  681.  
  682. See Also: 
  683.  
  684.  Packup Analysis 
  685.  Select List-of-Files Dialog 
  686.  
  687.  SMART On-Line Help 
  688.  Main Menu 
  689.  Analysis Menu 
  690.  
  691.  
  692. ΓòÉΓòÉΓòÉ 3.2.6. Display Detail ΓòÉΓòÉΓòÉ
  693.  
  694. Choose this selection to flip the Analysis report display to show the analysis 
  695. detail. 
  696.  
  697. Features 
  698.  
  699.  1. This menu selection is only valid if the Analysis container display is 
  700.     present and the Recap portion of the display is showing. 
  701.  
  702.  2. The function key 'F5' will toggle the Recap and Detail analysis display. 
  703.  
  704. Access 
  705.  
  706.   Alt-A, D (Analysis Menu, Selection D) 
  707.   F5 
  708.   Click right mouse button 
  709.  
  710. See Also: 
  711.  
  712.  SMART On-Line Help 
  713.  Main Menu 
  714.  Analysis Menu 
  715.  
  716.  
  717. ΓòÉΓòÉΓòÉ 3.2.7. Display Recap ΓòÉΓòÉΓòÉ
  718.  
  719. Choose this selection to flip the Analysis report display to show the analysis 
  720. recap. 
  721.  
  722. Features 
  723.  
  724.  1. This menu selection is only valid if the Analysis container display is 
  725.     present and the Detail portion of the display is showing. 
  726.  
  727.  2. The function key 'F5' will toggle the Recap and Detail analysis display. 
  728.  
  729. Access 
  730.  
  731.   Alt-A, R (Analysis Menu, Selection R) 
  732.   F5 
  733.   Click right mouse button 
  734.  
  735. See Also: 
  736.  
  737.  SMART On-Line Help 
  738.  Main Menu 
  739.  Analysis Menu 
  740.  
  741.  
  742. ΓòÉΓòÉΓòÉ 3.3. Migration Menu ΓòÉΓòÉΓòÉ
  743.  
  744. The Migration Menu contains selections dealing with source code migration. 
  745.  
  746. This menu is only available with SMART licensed for Analysis and Migration. 
  747.  
  748. Access  Alt-M 
  749.  
  750. The Migration Menu includes the following selections: 
  751.  
  752.    Migrate Code 
  753.    Trace MiCL 
  754.    Comment-Out Code Lines 
  755.    Remove Tagged Code Lines 
  756.  
  757. See Also: 
  758.  
  759.  Main Menu 
  760.  SMART On-Line Help 
  761.  
  762.  
  763. ΓòÉΓòÉΓòÉ 3.3.1. Migrate Code ΓòÉΓòÉΓòÉ
  764.  
  765. This selection will display the Migration Configuration Dialog. Migration 
  766. options and parameters can be chosen. Subsequently, you can proceed through the 
  767. source code migration to generate the ported code. 
  768.  
  769. If there is no List-of-Files currently selected, a selection dialog will preced 
  770. this configuration panel. 
  771.  
  772. Features 
  773.  
  774.  1. Selection of List-of-Files, Exclude (keyword) file, Preprocessor variable 
  775.     file. 
  776.  
  777.  2. Selection of file generation options (overwrite, map to new filename, etc). 
  778.  
  779.  3. Define code insertion format (ifdef or commented code). 
  780.  
  781.  4. Selection of migration code formats by category code. 
  782.  
  783.  5. Processing options. 
  784.  
  785. Access 
  786.  
  787.   Alt-M, M (Migration Menu, Selection M) 
  788.  
  789. See Also: 
  790.  
  791.  Migration Configuration Dialog 
  792.  Map Extensions Dialog 
  793.  Link Database Options 
  794.  Migrate Format Options 
  795.  
  796.  SMART On-Line Help 
  797.  Main Menu 
  798.  Migration Menu 
  799.  
  800.  
  801. ΓòÉΓòÉΓòÉ 3.3.2. Trace MiCL ΓòÉΓòÉΓòÉ
  802.  
  803. This selection will create the MiCL Trace window to enable you to trace through 
  804. MiCL commands at run time that appear in a selected UDMD. 
  805.  
  806. This trace window must be active prior to the migration process in order to 
  807. trace the MiCL Commands in a UDMD. 
  808.  
  809. Documentation for programming UDMD with MiCL is in the SMART Programming Guide 
  810. On-Line Document in the SMART Folder. 
  811.  
  812. Features 
  813.  
  814.  1. Capable of line by line MiCL command tracing. 
  815.  
  816.  2. Trace a specific keyword or all keywords. 
  817.  
  818.  3. All variables and the results of each command are displayed. 
  819.  
  820. Access 
  821.  
  822.   Alt-M, T (Migration Menu, Selection T) 
  823.  
  824. See Also: 
  825.  
  826.  Trace Keyword Dialog 
  827.  
  828.  SMART On-Line Help 
  829.  Main Menu 
  830.  Migration Menu 
  831.  Trace Menu 
  832.  
  833.  
  834. ΓòÉΓòÉΓòÉ 3.4. Trace Menu ΓòÉΓòÉΓòÉ
  835.  
  836. The Trace Menu contains selections dealing with MiCL Tracing. 
  837.  
  838. The menu items on this window provide control for tracing MiCL commands. 
  839.  
  840. Access Migration Menu - Trace MiCL 
  841.  
  842. The Trace Menu includes the following selections: 
  843.  
  844.    Trace Keyword... 
  845.    Cancel Trace 
  846.    Terminate Process 
  847.    Clear Trace Display 
  848.    Close Trace 
  849.  
  850. See Also: 
  851.  
  852.  Trace MiCL 
  853.  Main Menu 
  854.  SMART On-Line Help 
  855.  
  856.  
  857. ΓòÉΓòÉΓòÉ 3.4.1. Trace Keyword ΓòÉΓòÉΓòÉ
  858.  
  859. This selection will display the Trace Keywordl Dialog. 
  860.  
  861. The trace facility will trace through the MiCL commands of a specified keyword 
  862. or trace through all keywords. 
  863.  
  864. This dialog allows you to enter the keyword to trace or specify all keywords. 
  865.  
  866. Features 
  867.  
  868.  1. Enter the keyword to trace. 
  869.  
  870.  2. Specify all keywords with MiCL Commands. 
  871.  
  872. Access 
  873.  
  874.   Alt-K, (Trace Menu) 
  875.  
  876. See Also: 
  877.  
  878.  Trace Keyword Dialog 
  879.  
  880.  SMART On-Line Help 
  881.  Main Menu 
  882.  Migration Menu 
  883.  Trace MiCL 
  884.  Trace Menu 
  885.  
  886.  
  887. ΓòÉΓòÉΓòÉ 3.4.2. Cancel Trace ΓòÉΓòÉΓòÉ
  888.  
  889. This selection will cancel the tracing of MiCL commands and the migration will 
  890. proceed. 
  891.  
  892. Access 
  893.  
  894.   Alt-C, (Trace Menu) 
  895.  
  896. See Also: 
  897.  
  898.  SMART On-Line Help 
  899.  Main Menu 
  900.  Migration Menu 
  901.  Trace MiCL 
  902.  Trace Menu 
  903.  
  904.  
  905. ΓòÉΓòÉΓòÉ 3.4.3. Terminate Process ΓòÉΓòÉΓòÉ
  906.  
  907. This selection will immediately terminate the migration process. 
  908.  
  909. Access 
  910.  
  911.   Alt-P, (Trace Menu) 
  912.  
  913. See Also: 
  914.  
  915.  SMART On-Line Help 
  916.  Main Menu 
  917.  Migration Menu 
  918.  Trace MiCL 
  919.  Trace Menu 
  920.  
  921.  
  922. ΓòÉΓòÉΓòÉ 3.4.4. Clear Trace Display ΓòÉΓòÉΓòÉ
  923.  
  924. This selection will clear the trace display window. 
  925.  
  926. Access 
  927.  
  928.   Alt-D, (Trace Menu) 
  929.  
  930. See Also: 
  931.  
  932.  SMART On-Line Help 
  933.  Main Menu 
  934.  Migration Menu 
  935.  Trace MiCL 
  936.  Trace Menu 
  937.  
  938.  
  939. ΓòÉΓòÉΓòÉ 3.4.5. Close Trace Window ΓòÉΓòÉΓòÉ
  940.  
  941. This selection will close the trace display window and cancel tracing any MiCL 
  942. commands. 
  943.  
  944. Access 
  945.  
  946.   Alt-C, (Main Trace Window) 
  947.  
  948. See Also: 
  949.  
  950.  SMART On-Line Help 
  951.  Main Menu 
  952.  Migration Menu 
  953.  Trace MiCL 
  954.  Trace Menu 
  955.  
  956.  
  957. ΓòÉΓòÉΓòÉ 3.4.6. Remove Tagged Code Lines ΓòÉΓòÉΓòÉ
  958.  
  959. This selection will display the Code Removal Dialog. Code removal options and 
  960. parameters can be chosen. Subsequently, you can proceed through the code 
  961. removal process.  You can also specify tags to be removed without the removal 
  962. of the source code prior to the tag. 
  963.  
  964. This function is used to remove migration comments at completion of porting 
  965. process. 
  966.  
  967. If there is no List-of-Files currently selected, a selection dialog will preced 
  968. this configuration panel. 
  969.  
  970. Features 
  971.  
  972.  1. Selection of List-of-Files. 
  973.  
  974.  2. Selection of file output options (overwrite, map to new filename, etc). 
  975.  
  976.  3. Define code tag types for removalof tags or tags and code lines. 
  977.  
  978. Access 
  979.  
  980.   Alt-M, R (Migration Menu, Selection R) 
  981.  
  982. See Also: 
  983.  
  984.  Code Removal Dialog 
  985.  
  986.  SMART On-Line Help 
  987.  Main Menu 
  988.  Migration Menu 
  989.  
  990.  
  991. ΓòÉΓòÉΓòÉ 3.4.7. Comment-Out Code Lines ΓòÉΓòÉΓòÉ
  992.  
  993. This selection will display the Comment-Out Dialog. Commenting and ifdef code 
  994. block removal options and parameters can be chosen. Subsequently, you can 
  995. proceed through the code removal or commenting process. 
  996.  
  997. This function is used to comment out or remove #ifdef blocks of code. 
  998.  
  999. If there is no List-of-Files currently selected, a selection dialog will 
  1000. preceed this configuration panel. 
  1001.  
  1002. Features 
  1003.  
  1004.  1. Provides for #ifdef block comments or uncomment (reversal). 
  1005.  
  1006.  2. Provides for #ifdef block code removal (non reversible). 
  1007.  
  1008.  3. Define code tag for comment-out. 
  1009.  
  1010. Access 
  1011.  
  1012.   Alt-M, C (Migration Menu, Selection C) 
  1013.  
  1014. See Also: 
  1015.  
  1016.  Comment-Out Dialog 
  1017.  
  1018.  SMART On-Line Help 
  1019.  Main Menu 
  1020.  Migration Menu 
  1021.  
  1022.  
  1023. ΓòÉΓòÉΓòÉ 3.5. Resources Menu ΓòÉΓòÉΓòÉ
  1024.  
  1025. The Resources Menu contains selections dealing with utility processes related 
  1026. to Resource Translation and Graphical Resource Conversion. 
  1027.  
  1028. This menu is only available with SMART licensed for Win 3.1-> OS/2 migration. 
  1029.  
  1030. Access  Alt-R 
  1031.  
  1032. The Migration Menu includes the following selections: 
  1033.  
  1034.    Convert Graphical Resource 
  1035.  
  1036. See Also: 
  1037.  
  1038.  Main Menu 
  1039.  SMART On-Line Help 
  1040.  
  1041.  
  1042. ΓòÉΓòÉΓòÉ 3.5.1. Translate Resources ΓòÉΓòÉΓòÉ
  1043.  
  1044. This selection provides a PM interface for options settings and spawns the 
  1045. Resource Translator utility program. 
  1046.  
  1047. This selection is only available with the selection of Windows Migration 
  1048. Tables. 
  1049.  
  1050. Features 
  1051.  
  1052.  1. This function provides a popup dialog panel to provide a PM interface to 
  1053.     the Resource Translator utility program "SMARTRC.EXE". 
  1054.  
  1055. Access 
  1056.  
  1057.   Alt-R, T (Resources Menu, Selection T) 
  1058.  
  1059. See Also: 
  1060.  
  1061.  Resource Translator Topics 
  1062.  Resource Translator Dialog 
  1063.  
  1064.  SMART On-Line Help 
  1065.  Main Menu 
  1066.  Resources Menu 
  1067.  
  1068.  
  1069. ΓòÉΓòÉΓòÉ 3.5.2. Convert Graphical Resources ΓòÉΓòÉΓòÉ
  1070.  
  1071. This selection provides a PM interface for options settings and spawns the 
  1072. Graphical Resource Converter utility program. 
  1073.  
  1074. (It is necessary to use this utility only when migrating from Windows to OS/2. 
  1075. Resource files do not require translating when migrating from one version of 
  1076. OS/2 to another.) 
  1077.  
  1078. Features 
  1079.  
  1080.  1. This function provides a popup dialog panel to provide a PM interface to 
  1081.     the Graphical Resource Converter utility program "SMARTCVT.EXE". 
  1082.  
  1083. Access 
  1084.  
  1085.   Alt-R, C (Resources Menu, Selection C) 
  1086.  
  1087. See Also: 
  1088.  
  1089.  Graphical Resource Converter Topics 
  1090.  Graphical Resource Converter Dialog 
  1091.  
  1092.  SMART On-Line Help 
  1093.  Main Menu 
  1094.  Resources Menu 
  1095.  
  1096.  
  1097. ΓòÉΓòÉΓòÉ 3.6. Tables Menu ΓòÉΓòÉΓòÉ
  1098.  
  1099. The Tables Menu contains selections dealing with utility processes related to 
  1100. SMART Primary and UDMD Table selection. 
  1101.  
  1102. Access  Alt-T 
  1103.  
  1104. The Tables Menu includes the following selections: 
  1105.  
  1106.    Select Tables 
  1107.    Current Table Info 
  1108.    Create UDMD 
  1109.    Dump UDMD 
  1110.  
  1111. See Also: 
  1112.  
  1113.  Main Menu 
  1114.  SMART On-Line Help 
  1115.  
  1116.  
  1117. ΓòÉΓòÉΓòÉ 3.6.1. Select Tables ΓòÉΓòÉΓòÉ
  1118.  
  1119. This selection provides a panel for selecting SMART Primary and/or a UDMD for 
  1120. processing Analysis and/or Migration. 
  1121.  
  1122. Access 
  1123.  
  1124.   Alt-T, C (Tables Menu, Selection S) 
  1125.  
  1126. See Also: 
  1127.  
  1128.  Select Tables Dialog 
  1129.  Set UDMD Directory Dialog 
  1130.  
  1131.  SMART On-Line Help 
  1132.  Main Menu 
  1133.  Tables Menu 
  1134.  
  1135.  
  1136. ΓòÉΓòÉΓòÉ 3.6.2. Current Tables Info ΓòÉΓòÉΓòÉ
  1137.  
  1138. This selection provides a panel for providing information related to the 
  1139. current selection of Analysis and Migration Tables. 
  1140.  
  1141. Access 
  1142.  
  1143.   Alt-T, I (Tables Menu, Selection I) 
  1144.  
  1145. See Also: 
  1146.  
  1147.  Tables Info Dialog 
  1148.  Select Tables Dialog 
  1149.  
  1150.  SMART On-Line Help 
  1151.  Main Menu 
  1152.  Tables Menu 
  1153.  
  1154.  
  1155. ΓòÉΓòÉΓòÉ 3.6.3. Create User UDMD ΓòÉΓòÉΓòÉ
  1156.  
  1157. This selection provides a panel for selecting the options to create a user 
  1158. UDMD. 
  1159.  
  1160. Access 
  1161.  
  1162.   Alt-T, C (Tables Menu, Selection C) 
  1163.  
  1164. See Also: 
  1165.  
  1166.  Create UDMD Dialog 
  1167.  Select Tables Dialog 
  1168.  
  1169.  SMART On-Line Help 
  1170.  Main Menu 
  1171.  Tables Menu 
  1172.  
  1173.  
  1174. ΓòÉΓòÉΓòÉ 3.6.4. Dump User UDMD ΓòÉΓòÉΓòÉ
  1175.  
  1176. This selection provides a panel for creating an ascii text file in the tagged 
  1177. format of a UDMD migration dictionary from a specified UDMD data base. 
  1178.  
  1179. Access 
  1180.  
  1181.   Alt-T, D (Tables Menu, Selection D) 
  1182.  
  1183. See Also: 
  1184.  
  1185.  Create UDMD Dialog 
  1186.  Select Tables Dialog 
  1187.  
  1188.  SMART On-Line Help 
  1189.  Main Menu 
  1190.  Tables Menu 
  1191.  
  1192.  
  1193. ΓòÉΓòÉΓòÉ 3.7. Options Menu ΓòÉΓòÉΓòÉ
  1194.  
  1195. The Options Menu contains selections dealing with SMART configuration options. 
  1196.  
  1197. Access  Alt-O 
  1198.  
  1199. The Options Menu includes the following selections: 
  1200.  
  1201.    Setup Options 
  1202.    Where is SMART 
  1203.    Notify Completion 
  1204.  
  1205. See Also: 
  1206.  
  1207.  Main Menu 
  1208.  SMART On-Line Help 
  1209.  
  1210.  
  1211. ΓòÉΓòÉΓòÉ 3.7.1. Setup Options ΓòÉΓòÉΓòÉ
  1212.  
  1213. This selection will display the Setup Options Dialog. Parameters for defining 
  1214. the default editor/browser and the migration table are entered in this panel. 
  1215.  
  1216. Features 
  1217.  
  1218.  1. Selection of default editor for sending analysis and filenames for 
  1219.     browsing. 
  1220.  
  1221.  2. Selection of migration table name. 
  1222.  
  1223.  3. Checkbox for verifying exit of this application. 
  1224.  
  1225. Access 
  1226.  
  1227.   Alt-O, S (Options Menu, Selection S) 
  1228.  
  1229. See Also: 
  1230.  
  1231.  Setup Options Dialog 
  1232.  
  1233.  SMART On-Line Help 
  1234.  Main Menu 
  1235.  Options Menu 
  1236.  
  1237.  
  1238. ΓòÉΓòÉΓòÉ 3.7.2. Where is SMART ΓòÉΓòÉΓòÉ
  1239.  
  1240. This selection will display the directory containing the executable of SMART 
  1241. and the location of the SMART configuration file. 
  1242.  
  1243. Access 
  1244.  
  1245.   Alt-O, W (Options Menu, Selection W) 
  1246.  
  1247. See Also: 
  1248.  
  1249.  Setup Options 
  1250.  
  1251.  SMART On-Line Help 
  1252.  Main Menu 
  1253.  Options Menu 
  1254.  
  1255.  
  1256. ΓòÉΓòÉΓòÉ 3.7.3. Notify Completion ΓòÉΓòÉΓòÉ
  1257.  
  1258. This selection will define whether or not an audible beep will be heard at the 
  1259. completion of the analysis or migration process. 
  1260.  
  1261. Access 
  1262.  
  1263.   Alt-O, N (Options Menu, Selection N) 
  1264.  
  1265. See Also: 
  1266.  
  1267.  Analysis Configuration Dialog 
  1268.  Migration Configuration Dialog 
  1269.  
  1270.  SMART On-Line Help 
  1271.  Main Menu 
  1272.  Options Menu 
  1273.  
  1274.  
  1275. ΓòÉΓòÉΓòÉ 3.8. Help Menu ΓòÉΓòÉΓòÉ
  1276.  
  1277. The Help Menu provides selections for help. 
  1278.  
  1279. Access  Alt-H 
  1280.  
  1281. For additional information select one of the following topics: 
  1282.  
  1283.    Help Index 
  1284.    Help Contents 
  1285.    General Help 
  1286.    Keys Help 
  1287.    Using Help 
  1288.    Product Information 
  1289.  
  1290. See Also: 
  1291.  
  1292.  Main Menu 
  1293.  SMART On-Line Help 
  1294.  
  1295.  
  1296. ΓòÉΓòÉΓòÉ 3.8.1. Using Help ΓòÉΓòÉΓòÉ
  1297.  
  1298. Help for Using the System Help Facility 
  1299.  
  1300.  
  1301. ΓòÉΓòÉΓòÉ 3.8.2. Help Index ΓòÉΓòÉΓòÉ
  1302.  
  1303. Alphabetical listing of all help topics in this application. 
  1304.  
  1305.  
  1306. ΓòÉΓòÉΓòÉ 3.8.3. Contents Help ΓòÉΓòÉΓòÉ
  1307.  
  1308. Table of Contents for SMART Help Topics. 
  1309.  
  1310.  
  1311. ΓòÉΓòÉΓòÉ 4. Dialog Panels ΓòÉΓòÉΓòÉ
  1312.  
  1313. The Dialog Panels includes the following dialogs: 
  1314.  
  1315.    File Open 
  1316.    Select Filename 
  1317.    Verify/Select Filename 
  1318.    List-of-Files List 
  1319.    List-of-Files Add 
  1320.    Link Db Options 
  1321.    Map File Extensions 
  1322.    PreProcessor Variables Maintenance 
  1323.    Setup Options 
  1324.    Analysis Configuration 
  1325.    Migrate Configuration 
  1326.    Migrate Format Options 
  1327.    Remove Tagged Code Configuration 
  1328.    Comment-Out Code Configuration 
  1329.    Configuration File Location 
  1330.    Resource Translator Interface 
  1331.    Graphical Resource Converter Interface 
  1332.    Win Help Translator Interface 
  1333.    Print Analysis Files 
  1334.    Resource Analysis 
  1335.    Set Tables 
  1336.    Tables Info 
  1337.    Create UDMD 
  1338.    Dump UDMD 
  1339.    Trace Keyword 
  1340.  
  1341. See Also: 
  1342.  
  1343.  SMART On-Line Help 
  1344.  
  1345.  
  1346. ΓòÉΓòÉΓòÉ 4.1. Open File Dialog Panel ΓòÉΓòÉΓòÉ
  1347.  
  1348. The Open File dialog displays file information, provides selection of one or 
  1349. more existing files for viewing or editing. 
  1350.  
  1351. You must specify the name of the files to be opened or created by entering the 
  1352. filename or selecting the path and filename through the use of the list boxes. 
  1353.  
  1354. Features 
  1355.  
  1356.  1. When a file is selected, and 'Open' is selected, the filename is passed to 
  1357.     the default configured editor. 
  1358.  
  1359.  2. You can change the current directory by the following actions: 
  1360.  
  1361.     You can double-click on a directory in the directory listbox, or you can 
  1362.     type in the directory name (followed by a back-slash) in the file data 
  1363.     entry box and choose the Open button. 
  1364.  
  1365.     When you enter the directory name in the file data entry box, you can type 
  1366.     in the full path terminated by a back-slash; e.g. C:\OS2\SUBDIR\. When you 
  1367.     type in the directory name without being preceded by the drive, however, 
  1368.     you do not have to terminate the name with a back-slash; e.g. if you are 
  1369.     positioned at C:\OS2\CURRDIR and you want to go to the next higher 
  1370.     directory, you can type in '..' or 'OS2'. 
  1371.  
  1372.     When you click on a file in the files listbox or type in the filename and 
  1373.     choose the Select button, the size and date of the file are displayed. 
  1374.  
  1375.  3. You can select which files appear in the Filenames listbox by using a 
  1376.     wildcard. 
  1377.  
  1378.     You can choose the *.* button and all files within the current directory 
  1379.     will be displayed. You can choose the *.C* button and all files with a C* 
  1380.     extension will be displayed. You can type in your own wildcard in the 
  1381.     Wildcard data entry box and choose the Display button and only those files 
  1382.     satisfying your wildcard will be displayed. 
  1383.  
  1384.     You can choose one of the default Wildcard masks by selecting from the list 
  1385.     of Wildcards. 
  1386.  
  1387.  4. You can open multiple files. 
  1388.  
  1389.     Select the files to be opened from the Files listbox and then press Open. 
  1390.     All files will be opened in the specified edit and word wrap mode. 
  1391.  
  1392. Access 
  1393.  
  1394.  Alt-F, O (File Menu, Option O) 
  1395.  
  1396. Controls 
  1397.  
  1398.     Dir: 
  1399.  
  1400.       The current directory is displayed. 
  1401.  
  1402.     File: 
  1403.  
  1404.       You may type in a new directory path; if you type in the full path, this 
  1405.       must end with a \ (e.g. C:\NEWDIR\). When you choose the Open button, the 
  1406.       directories listbox and files listbox are updated. 
  1407.  
  1408.       You may type in the name of the file to be opened or whose size and date 
  1409.       will be displayed (e.g. NEWFILE.C). 
  1410.  
  1411.       You may type in the full path, drive, directory, and filename (e.g. 
  1412.       C:\NEWDIR\NEWFILE.C) of the file to be opened or created or whose size 
  1413.       and date will be displayed. 
  1414.  
  1415.     Size: 
  1416.  
  1417.       The size of the selected filename is displayed. 
  1418.  
  1419.     Date/Time: 
  1420.  
  1421.       The Date/Time stamp of the selected filename is displayed. 
  1422.  
  1423.     Drives 
  1424.  
  1425.       This listbox contains drives. You may select the current drive from this 
  1426.       list. 
  1427.  
  1428.     Directories 
  1429.  
  1430.       This listbox contains directories. You may select the current directory 
  1431.       from this list. 
  1432.  
  1433.     Filenames 
  1434.  
  1435.       This listbox contains a list of files satisfying the current wildcard 
  1436.       (usually *.*) which are contained within the selected drive and 
  1437.       directory. You may select the filename of the file to be opened or 
  1438.       viewed. 
  1439.  
  1440.     Display (D) 
  1441.  
  1442.       The Display button updates the Filenames listbox according to the current 
  1443.       wildcard which is displayed in the Wildcard data entry box. 
  1444.  
  1445.       You either choose the *.* button, the *.C button, type in your own 
  1446.       wildcard in the Wildcard data entry box or select from the list of 
  1447.       wildcards and then choose the Display button. 
  1448.  
  1449.     Wildcard: 
  1450.  
  1451.       The Wildcard data entry box allows you to type in your own filenames 
  1452.       wildcard. When you choose the Display button, the Filenames listbox is 
  1453.       updated. 
  1454.  
  1455.       When you press the arrow to the right of the Wildcard data entry box, a 
  1456.       list of wildcards appear; you can select from this list. 
  1457.  
  1458.     *.* (*) 
  1459.  
  1460.       The *.* button updates the Filenames wildcard. When you choose this 
  1461.       button, the Filenames listbox displays all of the files in the current 
  1462.       directory. 
  1463.  
  1464.     *.C* (C) 
  1465.  
  1466.       The *.C* button updates the Filenames wildcard. When you choose this 
  1467.       button, the Filenames listbox displays all of the files in the current 
  1468.       directory satisfying the *.C wildcard. 
  1469.  
  1470.        Open (O) 
  1471.  
  1472.       When you choose the Open button, the selected filenames sent to the 
  1473.       default configured editor. If a file does not exist, you will be 
  1474.       notified. If the file data entry box contains a directory name, the 
  1475.       directory is changed when you choose this button. 
  1476.  
  1477.     Cancel 
  1478.  
  1479.       When you choose the Cancel button, the current command is canceled. 
  1480.  
  1481.     Clear (E) 
  1482.  
  1483.       When you choose the Clear button, the selections from the files listbox 
  1484.       are cleared. 
  1485.  
  1486.     Help (H) 
  1487.  
  1488.       When you choose the Help button, the corresponding on-line help is 
  1489.       displayed. 
  1490.  
  1491.  See Also: 
  1492.  
  1493.   Setup Options 
  1494.   Dialog Panels 
  1495.   SMART On-Line Help 
  1496.  
  1497.  
  1498. ΓòÉΓòÉΓòÉ 4.2. Select File Dialog Panel ΓòÉΓòÉΓòÉ
  1499.  
  1500. The Select File dialog provides selection of a file for specification in an 
  1501. entry field when you would rather navigate through your directories and select 
  1502. a file rather than type the filename into the entry field. 
  1503.  
  1504. You can specify the name of the file selecting the path and filename through 
  1505. the use of the list boxes. 
  1506.  
  1507. Features 
  1508.  
  1509.   1. You can change the current directory by the following actions: 
  1510.  
  1511.      You can double-click on a directory in the directory listbox, or you can 
  1512.      type in the directory name in the file data entry box and choose the Ok 
  1513.      button. 
  1514.  
  1515.      When you enter the directory name in the file data entry box, you can type 
  1516.      in the full path terminated by a slash; e.g. C:\OS2\SUBDIR\. When you type 
  1517.      in the directory name without being preceded by the drive, however, you do 
  1518.      not have to terminate the name with a slash; e.g. if you are positioned at 
  1519.      C:\OS2\CURRDIR and you want to go to the next higher directory, you can 
  1520.      type in '..' or 'OS2'. 
  1521.  
  1522.      When you click on a file in the files listbox or type in the filename and 
  1523.      choose the Select button, the size and date of the file are displayed. 
  1524.  
  1525.   2. You can select which files appear in the Filenames listbox by using a 
  1526.      wildcard. 
  1527.  
  1528.      You can choose the *.* button and all files within the current directory 
  1529.      will be displayed. You can choose the *.C* button and all files with a C* 
  1530.      extension will be displayed. You can type in your own wildcard in the 
  1531.      Wildcard data entry box and choose the Display button and only those files 
  1532.      satisfying your wildcard will be displayed. 
  1533.  
  1534.      You can choose one of the default Wildcard masks by selecting from the 
  1535.      list of Wildcards. 
  1536.  
  1537.   3. You can only select a single file. 
  1538.  
  1539.  Access 
  1540.  
  1541.   Alt-F, O (File Menu, Option O) 
  1542.  
  1543.  Controls 
  1544.  
  1545.     Dir: 
  1546.  
  1547.       The current directory is displayed. 
  1548.  
  1549.     File: 
  1550.  
  1551.       You may type in a new directory path; if you type in the full path, this 
  1552.       must end with a \ (e.g. C:\NEWDIR\). When you choose the Ok button, the 
  1553.       directories listbox and files listbox are updated. 
  1554.  
  1555.       You may type in the name of the file to be opened or whose size and date 
  1556.       will be displayed (e.g. NEWFILE.C). 
  1557.  
  1558.       You may type in the full path, drive, directory, and filename (e.g. 
  1559.       C:\NEWDIR\NEWFILE.C) of the file to be opened or created or whose size 
  1560.       and date will be displayed. 
  1561.  
  1562.     Size: 
  1563.  
  1564.       The size of the selected filename is displayed. 
  1565.  
  1566.     Drives 
  1567.  
  1568.       This listbox contains drives. You may select the current drive from this 
  1569.       list. 
  1570.  
  1571.     Directories 
  1572.  
  1573.       This listbox contains directories. You may select the current directory 
  1574.       from this list. 
  1575.  
  1576.     Filenames 
  1577.  
  1578.       This listbox contains a list of files satisfying the current wildcard 
  1579.       (usually *.*) which are contained within the selected drive and 
  1580.       directory. You may select the filename of the file to be opened or 
  1581.       viewed. 
  1582.  
  1583.     Display (D) 
  1584.  
  1585.       The Display button updates the Filenames listbox according to the current 
  1586.       wildcard which is displayed in the Wildcard data entry box. 
  1587.  
  1588.       You either choose the *.* button, the *.C button, type in your own 
  1589.       wildcard in the Wildcard data entry box or select from the list of 
  1590.       wildcards and then choose the Display button. 
  1591.  
  1592.     Wildcard: 
  1593.  
  1594.       The Wildcard data entry box allows you to type in your own filenames 
  1595.       wildcard. When you choose the Display button, the Filenames listbox is 
  1596.       updated. 
  1597.  
  1598.       When you press the arrow to the right of the Wildcard data entry box, a 
  1599.       list of wildcards appear; you can select from this list. 
  1600.  
  1601.     *.* (*) 
  1602.  
  1603.       The *.* button updates the Filenames wildcard. When you choose this 
  1604.       button, the Filenames listbox displays all of the files in the current 
  1605.       directory. 
  1606.  
  1607.     *.C* (C) 
  1608.  
  1609.       The *.C* button updates the Filenames wildcard. When you choose this 
  1610.       button, the Filenames listbox displays all of the files in the current 
  1611.       directory satisfying the *.C wildcard. 
  1612.  
  1613.        Open (O) 
  1614.  
  1615.     *.LST (L) 
  1616.  
  1617.       The *.LST button updates the Filenames wildcard. When you choose this 
  1618.       button, the Filenames listbox displays all of the files in the current 
  1619.       directory. 
  1620.  
  1621.       When you choose the Open button, the selected filenames sent to the 
  1622.       default configured editor. If a file does not exist, you will be 
  1623.       notified. If the file data entry box contains a directory name, the 
  1624.       directory is changed when you choose this button. 
  1625.  
  1626.     Ok 
  1627.  
  1628.       Pressing 'Ok' or [Enter] will choose the filename as specified in the 
  1629.       Dir: and File: entry boxes. 
  1630.  
  1631.     Cancel 
  1632.  
  1633.       When you choose the Cancel button, the current command is canceled. 
  1634.  
  1635.     Help (H) 
  1636.  
  1637.       When you choose the Help button, the corresponding on-line help is 
  1638.       displayed. 
  1639.  
  1640.  See Also: 
  1641.  
  1642.   Setup Options 
  1643.   Dialog Panels 
  1644.   SMART On-Line Help 
  1645.  
  1646.  
  1647. ΓòÉΓòÉΓòÉ 4.3. Verify/Select Filename ΓòÉΓòÉΓòÉ
  1648.  
  1649. The Verify/Select Filename Dialog Panel prompts you to verify the use of the 
  1650. displayed filename or select another filename. 
  1651.  
  1652. Access 
  1653.  
  1654.   Verify/Select Filename Dialog Panel 
  1655.  
  1656.  Controls 
  1657.  
  1658.     Select (S) 
  1659.  
  1660.       Press this button to display the Select Filename dialog panel. 
  1661.  
  1662.     Filename entry 
  1663.  
  1664.       You may type in the full path, drive, directory, and filename (e.g. 
  1665.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  1666.  
  1667.     Ok [Enter] 
  1668.  
  1669.       Pressing 'Ok' or [Enter] will accept the displayed filename. 
  1670.  
  1671.     Help (H) 
  1672.  
  1673.       When you choose the Help button, the corresponding on-line help is 
  1674.       displayed. 
  1675.  
  1676.  See Also: 
  1677.  
  1678.   Select Filename Dialog Panel 
  1679.   Dialog Panels 
  1680.   SMART On-Line Help 
  1681.  
  1682.  
  1683. ΓòÉΓòÉΓòÉ 4.4. Setup Options ΓòÉΓòÉΓòÉ
  1684.  
  1685. The Setup Options Dialog Panel provides you with application configuration 
  1686. setup options and parameters. 
  1687.  
  1688. Access 
  1689.  
  1690.   Setup Options Dialog Panel 
  1691.  
  1692.  Controls 
  1693.  
  1694.     Editor/BrowserSelect 
  1695.  
  1696.       Press this button to display the Select Filename dialog panel. 
  1697.  
  1698.     Editor/Browser Filename entry 
  1699.  
  1700.       You may type in the full path, drive, directory, and filename (e.g. 
  1701.       C:\SLINK2\SLSTART.EXE) of the editor to be used. 
  1702.  
  1703.       Note: if using SourceLink, specify SLSTART.EXE in this entry field. 
  1704.  
  1705.     Editor/Browser Parameters 
  1706.  
  1707.       Enter any desired parameters to pass to the editor. 
  1708.  
  1709.       Note: if using SLSTART.EXE you may wish to specify "/F" to force the file 
  1710.       sent to SourceLink to be immediately displayed. 
  1711.  
  1712.     Confirm Exit SMART 
  1713.  
  1714.       If this box is checked, you will be prompted to confirm exit upon closure 
  1715.       of this application. 
  1716.  
  1717.     Save 
  1718.  
  1719.       Pressing Save will accept changes to this panel. 
  1720.  
  1721.     Cancel 
  1722.  
  1723.       Pressing Cancel will ignore changes to this panel. 
  1724.  
  1725.     Help (H) 
  1726.  
  1727.       When you choose the Help button, the corresponding on-line help is 
  1728.       displayed. 
  1729.  
  1730.  See Also: 
  1731.  
  1732.   Select Filename Dialog Panel 
  1733.   Dialog Panels 
  1734.   SMART On-Line Help 
  1735.  
  1736.  
  1737. ΓòÉΓòÉΓòÉ 4.5. Files List Dialog Panel ΓòÉΓòÉΓòÉ
  1738.  
  1739. The Files List Dialog Panel enables you to add and delete files contained in a 
  1740. List-of-Files. 
  1741.  
  1742. Access 
  1743.  
  1744.   Link Menu: Maintain A List Of Files 
  1745.  
  1746.  Controls 
  1747.  
  1748.     Files List Filename 
  1749.  
  1750.       The List-of-Files filename is displayed. 
  1751.  
  1752.     Filenames Count 
  1753.  
  1754.       The number of files contained in the List-of-Files is displayed. 
  1755.  
  1756.     Filenames listbox 
  1757.  
  1758.       The Filenames listbox displays each entry contained in the List-of-Files 
  1759.       file. You may select one or more files from this list, then choose the 
  1760.       Delete button and the selected files will be deleted from the 
  1761.       List-of-Files. 
  1762.  
  1763.     Save [S] 
  1764.  
  1765.       The Save button saves the contents of the list-of-files in the 
  1766.       List-of-Files file. 
  1767.  
  1768.     Cancel 
  1769.  
  1770.       When you choose the Cancel button, the current command is canceled. 
  1771.  
  1772.     Add [A] 
  1773.  
  1774.       The Add button displays the Add Files To List where you can add files to 
  1775.       the List-of-Files. 
  1776.  
  1777.     Delete [D] 
  1778.  
  1779.       The Delete button removes all files selected in the Filenames listbox 
  1780.       from the List-of-Files file. 
  1781.  
  1782.     Delete All [L] 
  1783.  
  1784.       The Delete All button removes all files from the List-of-Files file. 
  1785.  
  1786.     Help (H) 
  1787.  
  1788.       When you choose the Help button, the corresponding on-line help is 
  1789.       displayed. 
  1790.  
  1791.  See Also: 
  1792.  
  1793.   List-of-Files Add 
  1794.   Dialog Panels 
  1795.   SMART On-Line Help 
  1796.  
  1797.  
  1798. ΓòÉΓòÉΓòÉ 4.6. Add Files To List Dialog Panel ΓòÉΓòÉΓòÉ
  1799.  
  1800. The Add Files To List Dialog Panel prompts you for the name of the files to add 
  1801. to the List-of-Files. 
  1802.  
  1803. Access 
  1804.  
  1805.   List-Of-Files Files List Dialog Panel 
  1806.  
  1807.  Controls 
  1808.  
  1809.     Dir: 
  1810.  
  1811.       The current directory is displayed. 
  1812.  
  1813.     Filename: 
  1814.  
  1815.       You may type in a new directory path; this must end with a \ (e.g. 
  1816.       C:\NEWDIR\). The directories listbox and files listbox are updated. 
  1817.  
  1818.       You may type in the name of the file to be added (e.g. NEWFILE.C). 
  1819.  
  1820.       You may type in the full path, drive, directory, and filename (e.g. 
  1821.       C:\NEWDIR\NEWFILE.C) of the file to be added. 
  1822.  
  1823.     Directories 
  1824.  
  1825.       This listbox contains drives and directories. You may select the current 
  1826.       drive or directory from this list. 
  1827.  
  1828.     Filenames 
  1829.  
  1830.       This listbox contains a list of files satisfying the current wildcard 
  1831.       (usually *.*) which are contained within the selected drive and 
  1832.       directory. You may select multiple filenames. 
  1833.  
  1834.     Display (D) 
  1835.  
  1836.       The Display button updates the Filenames listbox according to the current 
  1837.       wildcard which is displayed in the Wildcard data entry box. 
  1838.  
  1839.     Wildcard: 
  1840.  
  1841.       The Wildcard data entry box allows entry of a new filenames wildcard. 
  1842.       When you choose the Display button, the Filenames listbox is updated. 
  1843.  
  1844.     *.* (*) 
  1845.  
  1846.       The *.* button updates the Filenames wildcard. When you choose this 
  1847.       button, the Filenames listbox displays all of the files in the current 
  1848.       directory. 
  1849.  
  1850.     *.C (C) 
  1851.  
  1852.       The *.C* button updates the Filenames wildcard. When you choose this 
  1853.       button, the Filenames listbox displays all of the files in the current 
  1854.       directory satisfying the *.C wildcard. 
  1855.  
  1856.     Add [A] 
  1857.  
  1858.       When you choose the Add button, all selected files will be added to the 
  1859.       previously defined List-of-Files listbox. 
  1860.  
  1861.     Close [C] 
  1862.  
  1863.       When you choose the Close button, you are returned to the List-of-files 
  1864.       Files List Dialog panel. 
  1865.  
  1866.     Select All [S] 
  1867.  
  1868.       When you choose the Select All button, all displayed files will be 
  1869.       selected. 
  1870.  
  1871.     Help (H) 
  1872.  
  1873.       When you choose the Help button, the corresponding on-line help is 
  1874.       displayed. 
  1875.  
  1876.  See Also: 
  1877.  
  1878.   (List-of-)Files List 
  1879.   Dialog Panels 
  1880.   SMART On-Line Help 
  1881.  
  1882.  
  1883. ΓòÉΓòÉΓòÉ 4.7. Preproc Variables Maintenance ΓòÉΓòÉΓòÉ
  1884.  
  1885. The Preproc Variables Maintenance Dialog Panel provides you with the capability 
  1886. to maintain a file containing preprocessor "ifdef" variables for the analysis 
  1887. and migration processes. 
  1888.  
  1889. Prior to this panel you will select the name of the variables file by using the 
  1890. Select Filename dialog panel. 
  1891.  
  1892. You can create variable names that match the "ifdef" statements in the source 
  1893. code and set the variables to 1 or 0 for processing. 
  1894.  
  1895. These variables are used for manipulating blocks of code in the migration 
  1896. process. 
  1897.  
  1898. Variables not specified in this list will be ignored and the block of code will 
  1899. be processed as if no preprocessor statement was encountered. 
  1900.  
  1901. The file format created in this process is compatible with the variables file 
  1902. format created and used in the SLBUILD for SourceLink 
  1903.  
  1904. Access 
  1905.  
  1906.   Preproc Variables Maintenance 
  1907.  
  1908.  Controls 
  1909.  
  1910.     Variable Name Entry Field 
  1911.  
  1912.       The selected variable name from the list box will be displayed here. You 
  1913.       may also enter a new variable name in this field. 
  1914.  
  1915.     Value  Entry Field 
  1916.  
  1917.       The selected variable name value from the list box will be displayed 
  1918.       here. You may also enter a new or changed variable name value in this 
  1919.       field. 
  1920.  
  1921.     Variable Listbox 
  1922.  
  1923.       The List Box displays the current contents of the Preprocessor variables 
  1924.       file.  Selecting any line in this box will result in its display in the 
  1925.       "Variable" entry fields. 
  1926.  
  1927.     Add (A) 
  1928.  
  1929.       The item entered in the "Variable name" entry field and "Value" entry 
  1930.       field will be added to the list of variables. 
  1931.  
  1932.     Change (C) 
  1933.  
  1934.       A line item in the list box must be selected.  Any change to the Variable 
  1935.       name or value as entered in the entry field will replace the item in the 
  1936.       list box. 
  1937.  
  1938.     Delete (D) 
  1939.  
  1940.       The selected item in the list box will be deleted. 
  1941.  
  1942.     Set '1' (1) 
  1943.  
  1944.       The currently selected item will be set to "1" in both the entry field 
  1945.       and the list box. 
  1946.  
  1947.     Set '0' (0) 
  1948.  
  1949.       The currently selected item will be set to "0" in both the entry field 
  1950.       and the list box. 
  1951.  
  1952.     Save 
  1953.  
  1954.       Pressing Save will accept changes to this panel and save the variables in 
  1955.       the specified filename. 
  1956.  
  1957.     Cancel 
  1958.  
  1959.       Pressing Cancel will ignore changes to this panel and return to the main 
  1960.       menu. 
  1961.  
  1962.     Help (H) 
  1963.  
  1964.       When you choose the Help button, the corresponding on-line help is 
  1965.       displayed. 
  1966.  
  1967.  See Also: 
  1968.  
  1969.   Select Filename Dialog Panel 
  1970.   Dialog Panels 
  1971.   SMART On-Line Help 
  1972.  
  1973.  
  1974. ΓòÉΓòÉΓòÉ 4.8. Map File Extensions ΓòÉΓòÉΓòÉ
  1975.  
  1976. The Map File Extensions Dialog Panel provides you with the capability to 
  1977. maintain a file containing the file extension map for the migration processes. 
  1978.  
  1979. This file is saved as MAPEXT.DAT in the installed directory for SMART. 
  1980.  
  1981. This text file contains pairs of file extensions to be used when the migration 
  1982. process creates migrated source code files. 
  1983.  
  1984. Although a set of extension mapping pairs are supplied in the SMART 
  1985. installation you may wish to change the extensions to meet your specific 
  1986. requirements. 
  1987.  
  1988. This dialog panel is invoked from the "Extension Mapping" push-button on the 
  1989. Migrate Configuration.  dialog panel. 
  1990.  
  1991. Access 
  1992.  
  1993.   Map File Extensions 
  1994.  
  1995.  Controls 
  1996.  
  1997.   Extensions/Mapped Listbox 
  1998.  
  1999.       This listbox displays the current file extension mapping pairs. 
  2000.       Selecting any line in this box will result in its display in the 
  2001.       "Extension"  and "Map" entry fields.  The filenames with extensions shown 
  2002.       in the first column will be mapped to the extensions in the second column 
  2003.       during the Migration process if the "Create files using mapped 
  2004.       extensions" options is chosen. 
  2005.  
  2006.     Extension Entry Field 
  2007.  
  2008.       The selected extension from the list box will be displayed here. You may 
  2009.       also enter a new extension in this field. 
  2010.  
  2011.     Map  Entry Field 
  2012.  
  2013.       The corresponding mapped extension from the list box will be displayed 
  2014.       here. You may also enter a new or changed mapped extension in this field. 
  2015.  
  2016.     Add (A) 
  2017.  
  2018.       The item entered in the "Extension" entry field and "Map" entry field 
  2019.       will be added to the list of extension pairs. 
  2020.  
  2021.     Change (C) 
  2022.  
  2023.       A line item in the list box must be selected.  Any change to the 
  2024.       Extension or Map as entered in the entry fields will replace the item in 
  2025.       the list box. 
  2026.  
  2027.     Delete (D) 
  2028.  
  2029.       The selected item in the list box will be deleted. 
  2030.  
  2031.     Save 
  2032.  
  2033.       Pressing Save will accept changes to this panel and save the extension 
  2034.       mapping parameters. 
  2035.  
  2036.     Cancel 
  2037.  
  2038.       Pressing Cancel will terminate this process without change and return to 
  2039.       the Migration panel. 
  2040.  
  2041.     Help (H) 
  2042.  
  2043.       When you choose the Help button, the corresponding on-line help is 
  2044.       displayed. 
  2045.  
  2046.  See Also: 
  2047.  
  2048.   Migrate Configuration. 
  2049.   Dialog Panels 
  2050.   SMART On-Line Help 
  2051.  
  2052.  
  2053. ΓòÉΓòÉΓòÉ 4.9. Link DB Options ΓòÉΓòÉΓòÉ
  2054.  
  2055. The Link DB Options Dialog Panel provides you with the capability to specify 
  2056. Link options when creating a hyperlink database from the data in the Analysis 
  2057. Procedure or Migration Procedure. 
  2058.  
  2059. These options are only applicable when SMART is used with SourceLink. 
  2060.  
  2061. SourceLink can be a very effective and productive tool in the migration of 
  2062. source code. This option panel provides the configuration settings for using 
  2063. SourceLink to automatically create hyperlink source code access to all points 
  2064. of change in the source code for migration. Using this facility you can easily 
  2065. access all keywords that require migration. SourceLink allows you to 
  2066. mouse-click to each change throughout your source base to provide a systematic 
  2067. method of checking or making migration code changes. 
  2068.  
  2069. Refer to "Utilities", SLBUILD in the SourceLink Technical Manual. 
  2070.  
  2071. This dialog panel is invoked from the "Build Options..." push-button on the 
  2072. Migrate Configuration and the Analysis Configuration  dialog panel. 
  2073.  
  2074. Access 
  2075.  
  2076.   Build Options 
  2077.  
  2078.  Controls 
  2079.  
  2080.     Link with migration link list 
  2081.  
  2082.       If this radio button is selected the hyperlink database will be created 
  2083.       with user optional links from the list of keywords encountered in the 
  2084.       Analysis or Migration process (xxxx.LNK file). 
  2085.  
  2086.     Link all possible code words 
  2087.  
  2088.       If this radio button is selected the hyperlink database will be created 
  2089.       with all possible links.  This is equivalent to creating a user link list 
  2090.       with a single character wildcard "*". 
  2091.  
  2092.     Select... (Custom Response File) 
  2093.  
  2094.       Press this button to display the Select Filename dialog panel. 
  2095.  
  2096.     Path and filename entry 
  2097.  
  2098.       You may type in the full path, drive, directory, and filename (e.g. 
  2099.       C:\NEWDIR\NEWFILE.C) of the file to be used if you have created a custom 
  2100.       response file to create the link database. 
  2101.  
  2102.     Create Function Call Tree 
  2103.  
  2104.       Check this checkbox to create a function call tree as a part of the 
  2105.       hyperlink build. If this option is checked a valid root function must be 
  2106.       entered in the following entry field. 
  2107.  
  2108.     Enter name of root function (A) 
  2109.  
  2110.       Requires the name of the root function for the call tree (most likely 
  2111.       will be WinMain for Windows, or simply "main" for OS/2 applications. 
  2112.  
  2113.     Ok 
  2114.  
  2115.       Pressing Ok will accept changes to this panel and return to the 
  2116.       applicable configuration panel. 
  2117.  
  2118.     Help (H) 
  2119.  
  2120.       When you choose the Help button, the corresponding on-line help is 
  2121.       displayed. 
  2122.  
  2123.  See Also: 
  2124.  
  2125.   Migrate Configuration 
  2126.   Analysis Configuration 
  2127.   Dialog Panels 
  2128.   SMART On-Line Help 
  2129.  
  2130.  
  2131. ΓòÉΓòÉΓòÉ 4.10. Migrate Format Options ΓòÉΓòÉΓòÉ
  2132.  
  2133. The Migrate Format Options Dialog Panel provides you with the capability to 
  2134. specify migration format options for each of the category types encountered in 
  2135. the migration process. 
  2136.  
  2137. It is highly recommended that you try various option selections for all of the 
  2138. categories on a set of sample code prior to migration of your source code.  The 
  2139. latitude of options produce widely varied results in the migrated code. 
  2140.  
  2141. This dialog panel is invoked from any one of the 'Migration Code - Category 
  2142. Options'  push-buttons on the Migrate Configuration dialog panel. 
  2143.  
  2144. Access 
  2145.  
  2146.   Cat. 000, Cat.010, Cat.020, Cat. 030, Cat. 040, Cat.050, Cat. 999 
  2147.  
  2148.  Controls 
  2149.  
  2150.     Category Name 
  2151.  
  2152.       This display box contains the currently selected Migration Keyword 
  2153.       Category. 
  2154.  
  2155.     Migration Comment 
  2156.  
  2157.       The group box contains the three selections for the general migration 
  2158.       comment related to the keyword. 
  2159.  
  2160.     Short 
  2161.  
  2162.       Press this button to select the short migration comment for any keyword 
  2163.       encountered in this category. 
  2164.  
  2165.     Long 
  2166.  
  2167.       Press this button to select the Long migration comment for any keyword 
  2168.       encountered in this category. 
  2169.  
  2170.     None 
  2171.  
  2172.       Press this button to suppress insertion of any comment for this category. 
  2173.  
  2174.     Template 
  2175.  
  2176.       Press this button to select the insertion of a migration template (if 
  2177.       exists) for this category. Highly recommended for categories above 010. 
  2178.  
  2179.     Prototype 
  2180.  
  2181.       Press this button to select the insertion of a migration prototype (if 
  2182.       exists) for this category. 
  2183.  
  2184.     Example Code 
  2185.  
  2186.       Press this button to select the insertion of a migration Example Code (if 
  2187.       exists) for this category. 
  2188.  
  2189.     Restate Original Code 
  2190.  
  2191.       Press this button to select the insertion of a restatement of the 
  2192.       original source code (tagged for later removal). This option is highly 
  2193.       recommended for all categories above 010 in order to provide migration 
  2194.       progess analysis during the porting process.  These lines should be 
  2195.       removed as each migration line is completed. 
  2196.  
  2197.     Ignore Migration 
  2198.  
  2199.       Press this button to ignore migration for this category.  This option 
  2200.       should be chosen only with full understanding that no migration for this 
  2201.       category will be affected and all items encountered for this category 
  2202.       will be ignored during the migration process. 
  2203.  
  2204.     Ok 
  2205.  
  2206.       Pressing Ok will accept changes to this panel and return to the migration 
  2207.       configuration panel. 
  2208.  
  2209.     Cancel 
  2210.  
  2211.       Pressing Cancel will ignore changes to this panel and return to the 
  2212.       migration configuration panel. 
  2213.  
  2214.     Default 
  2215.  
  2216.       Pressing Default will set the options on this panel to this panel to the 
  2217.       system default values. 
  2218.  
  2219.     Help (H) 
  2220.  
  2221.       When you choose the Help button, the corresponding on-line help is 
  2222.       displayed. 
  2223.  
  2224.  See Also: 
  2225.  
  2226.   Migrate Configuration 
  2227.   Dialog Panels 
  2228.   SMART On-Line Help 
  2229.  
  2230.  
  2231. ΓòÉΓòÉΓòÉ 4.11. Analysis Configuration Dialog ΓòÉΓòÉΓòÉ
  2232.  
  2233. The Analysis Configuration Dialog Panel allows you to specify options and 
  2234. parameters for the Analysis Procedure. 
  2235.  
  2236. If a default List-of-Files has not been previously chosen, this panel will be 
  2237. preceded by the Select Filename Dialog Panel 
  2238.  
  2239. Access 
  2240.  
  2241.   Analysis Configuration Dialog 
  2242.  
  2243.  Controls 
  2244.  
  2245.     Select List-of-Files 
  2246.  
  2247.       Press this button to display the Select Filename dialog panel. 
  2248.  
  2249.     List-of-Files Filename entry 
  2250.  
  2251.       You may type in the full path, drive, directory, and filename (e.g. 
  2252.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  2253.  
  2254.       The default path and filename for the List-of-Files file is automatically 
  2255.       displayed in this entry field. 
  2256.  
  2257.     Select List-of-Files 
  2258.  
  2259.       Press this button to display the Select Filename dialog panel. 
  2260.  
  2261.     List-of-Files Filename entry 
  2262.  
  2263.       You may type in the full path, drive, directory, and filename (e.g. 
  2264.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  2265.  
  2266.       The default path and filename for the List-of-Files file is automatically 
  2267.       displayed in this entry field. 
  2268.  
  2269.     Select Exclude File 
  2270.  
  2271.       Press this button to display the Select Filename dialog panel. 
  2272.  
  2273.     Exclude Filename entry 
  2274.  
  2275.       You may type in the full path, drive, directory, and filename (e.g. 
  2276.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  2277.  
  2278.       This file is not required. If used, it must be a text file and contain 
  2279.       the names of keywords that are to be ignored in the SMART Analysis or 
  2280.       Migration This list would contain keywords that are in the SMART 
  2281.       dictionary table that need to be excluded from processing. 
  2282.  
  2283.     Process #if 
  2284.  
  2285.       If this checkbox is checked the Analysis or Migration Process will 
  2286.       recognize preprocessor "ifdef" and "ifndef" statements to include or 
  2287.       exclude blocks of code.  If this option is selected, the name of the 
  2288.       preprocessor variables file must be included in the following entry 
  2289.       field. Refer to Maintain PreProc Variables File. 
  2290.  
  2291.     Select Preprocessor Variables File 
  2292.  
  2293.       Press this button to display the Select Filename dialog panel. 
  2294.  
  2295.     Preprocessor Variables Filename entry 
  2296.  
  2297.       You may type in the full path, drive, directory, and filename (e.g. 
  2298.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  2299.  
  2300.     Suppress Recap 
  2301.  
  2302.       Check this option to suppress creation of the Recap section of the 
  2303.       Analysis display and report. Refer to Analysis Display and Report Layout 
  2304.       Description 
  2305.  
  2306.     Suppress File Detail 
  2307.  
  2308.       Check this option to suppress creation of the File Detail section of the 
  2309.       Analysis display and report. 
  2310.  
  2311.     Send Analysis Output to Editor 
  2312.  
  2313.       Check this option to automatically send a text copy of the Analysis 
  2314.       display to the editor/browser that has been specified in the setup 
  2315.       options dialog panel. 
  2316.  
  2317.     Start Link DB Build 
  2318.  
  2319.       Check this option to automatically start the hyperlink DB build process 
  2320.       (only available if used with SourceLink).  When used in conjunction with 
  2321.       SourceLink you will have the ability to mouse-click to each keyword to be 
  2322.       changed in the migration with the hyperlink database created within 
  2323.       SourceLink 
  2324.  
  2325.     Build Options... 
  2326.  
  2327.       Press this push-button to open the Link Db Options dialog panel in order 
  2328.       to set the link options. (Available only with SourceLink). 
  2329.  
  2330.     Cat 020 - Auto Pcnt: 
  2331.  
  2332.       This checkbox and entry field will modify the effort calculations in the 
  2333.       Analysis evaluation. 
  2334.  
  2335.       The percentage entered in this field should indicate the amount of 
  2336.       Category 020 encountered that SMART can automatically process. 
  2337.  
  2338.     Effort Modifier: 
  2339.  
  2340.       This checkbox and entry field with modify the effort calculations in the 
  2341.       Analysis evaluation. 
  2342.  
  2343.       If the checkbox is checked this modifier will be used in the 
  2344.       calculations, otherwise it will be ignored. 
  2345.  
  2346.       The value entered in the entry field will be used as a modifier for all 
  2347.       of the effort calculations. 
  2348.  
  2349.       This number can be a mixed whole and decimal fraction.  The number can be 
  2350.       greater or less than 1.0, but not zero (0) if the checkbox is checked. 
  2351.  
  2352.     Process [Enter] 
  2353.  
  2354.       Pressing Process will proceed to the Analysis process. 
  2355.  
  2356.     Save 
  2357.  
  2358.       Pressing Save will store the settings of this panel without proceeding to 
  2359.       the Analysis process. 
  2360.  
  2361.     Cancel [Esc] 
  2362.  
  2363.       Pressing Cancel will terminate this process without starting the Analysis 
  2364.       Process. 
  2365.  
  2366.     Help (H) 
  2367.  
  2368.       When you choose the Help button, the corresponding on-line help is 
  2369.       displayed. 
  2370.  
  2371.  See Also: 
  2372.  
  2373.   Select Filename Dialog Panel 
  2374.   Maintain PreProc Variables File 
  2375.   Analysis Display and Report Layout Description 
  2376.   Link Db Build Options 
  2377.   Dialog Panels 
  2378.   SMART On-Line Help 
  2379.  
  2380.  
  2381. ΓòÉΓòÉΓòÉ 4.12. Migrate Configuration Dialog ΓòÉΓòÉΓòÉ
  2382.  
  2383. The Migrate Configuration Dialog Panel allows you to specify options and 
  2384. parameters for the Migration Procedure. 
  2385.  
  2386. The migration process will not automatically provide a new Analysis of the 
  2387. source code. 
  2388.  
  2389. If a default List-of-Files has not been previously chosen, this panel will be 
  2390. preceded by the Select Filename Dialog Panel 
  2391.  
  2392. Access 
  2393.  
  2394.   Migrate Configuration Dialog 
  2395.  
  2396.  Controls 
  2397.  
  2398.     Select List-of-Files 
  2399.  
  2400.       Press this button to display the Select Filename dialog panel. 
  2401.  
  2402.     List-of-Files Filename entry 
  2403.  
  2404.       You may type in the full path, drive, directory, and filename (e.g. 
  2405.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  2406.  
  2407.       The default path and filename for the List-of-Files file is automatically 
  2408.       displayed in this entry field. 
  2409.  
  2410.     Select Exclude File 
  2411.  
  2412.       Press this button to display the Select Filename dialog panel. 
  2413.  
  2414.     Exclude Filename entry 
  2415.  
  2416.       You may type in the full path, drive, directory, and filename (e.g. 
  2417.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  2418.  
  2419.       This file is not required. If used, it must be a text file and contain 
  2420.       the names of keywords that are to be ignored in the SMART Analysis or 
  2421.       Migration This list would contain keywords that are in the SMART 
  2422.       dictionary that need to be excluded from processing. 
  2423.  
  2424.     Process #if 
  2425.  
  2426.       If this checkbox is checked the Migration Process will recognize 
  2427.       preprocessor "ifdef" and "ifndef" statements to include or exclude blocks 
  2428.       of code.  If this option is selected, the name of the preprocessor 
  2429.       variables file must be included in the following entry field. Refer to 
  2430.       Maintain PreProc Variables File. 
  2431.  
  2432.     Select Preprocessor Variables File 
  2433.  
  2434.       Press this button to display the Select Filename dialog panel. 
  2435.  
  2436.     Preprocessor Variables Filename entry 
  2437.  
  2438.       You may type in the full path, drive, directory, and filename (e.g. 
  2439.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  2440.  
  2441.     Overwrite Original File 
  2442.  
  2443.       Check this option to overwrite original source file with migrated file 
  2444.       output. 
  2445.  
  2446.       NOT RECOMMENDED - see following option. 
  2447.  
  2448.     Create Files using mapped extensions 
  2449.  
  2450.       Check this option and use mapping file extensions to create migrated 
  2451.       files. 
  2452.  
  2453.     Extension Mapping 
  2454.  
  2455.       Press this push-button to display the Map File Extensions dialog panel. 
  2456.  
  2457.     Verify File Overwrite 
  2458.  
  2459.       Check this checkbox to have a verification box displayed any time a new 
  2460.       file is about to overwrite an existing file. 
  2461.  
  2462.     Use '#ifndef' variable: 
  2463.  
  2464.       Check this option to create code blocks using ifndef preprocessor 
  2465.       statements to maintain both the source and target code after the 
  2466.       migration process. If this option is chosen, the variable in the 
  2467.       following entry field must be entered.  If 'ifdef' code blocking is not 
  2468.       specified, the original source must be commented out (refer to the 'Use 
  2469.       Commented code' option below). 
  2470.  
  2471.     Preprocessor variable entry field 
  2472.  
  2473.       Enter the variable to be used in the migration process to block out the 
  2474.       migration code. 
  2475.  
  2476.     Use Commented code 
  2477.  
  2478.       Check this option to specify that the migration process will comment out 
  2479.       the original source code that is migrated. 
  2480.  
  2481.     Tag at Column: entry field 
  2482.  
  2483.       Enter that column number for insertion of SMART coding tags.  The default 
  2484.       is column 76. 
  2485.  
  2486.     No Comment Tags 
  2487.  
  2488.       Check this option to prevent the creation of line comment tags. 
  2489.  
  2490.       NOT RECOMMENDED.  If the migration tags are not inserted, automatic 
  2491.       comment removal will not be possible. Refer to Remove Code Configuration 
  2492.  
  2493.     Format //... 
  2494.  
  2495.       Check this option to specify slash-slash comment symbols. 
  2496.  
  2497.     Format /*...*/. 
  2498.  
  2499.       Check this option to specify slash-asterisk comment symbols. 
  2500.  
  2501.     Migration Code - Category Options 
  2502.  
  2503.       This gorup box contains the access buttons to set the format options for 
  2504.       each keyword category. Refer to Migration Format Options 
  2505.  
  2506.     Category 000... 
  2507.  
  2508.       Press this button to access the options panel for this category. 
  2509.  
  2510.     Category 010... 
  2511.  
  2512.       Press this button to access the options panel for this category. 
  2513.  
  2514.     Category 020... 
  2515.  
  2516.       Press this button to access the options panel for this category. 
  2517.  
  2518.     Category 030... 
  2519.  
  2520.       Press this button to access the options panel for this category. 
  2521.  
  2522.     Category 040... 
  2523.  
  2524.       Press this button to access the options panel for this category. 
  2525.  
  2526.     Category 050... 
  2527.  
  2528.       Press this button to access the options panel for this category. 
  2529.  
  2530.     Category 999... 
  2531.  
  2532.       Press this button to access the options panel for this category. 
  2533.  
  2534.     Start Link DB Build 
  2535.  
  2536.       Check this option to automatically start the hyperlink DB build process 
  2537.       (only available if used with SourceLink). When used in conjunction with 
  2538.       SourceLink you will have the ability to mouse-click to each keyword to be 
  2539.       changed in the migration with the hyperlink database created within 
  2540.       SourceLink. 
  2541.  
  2542.     Build Options... 
  2543.  
  2544.       Press this push-button to open the Link Db Options dialog panel in order 
  2545.       to set the link options. (Available only with SourceLink). 
  2546.  
  2547.     Output Tabs to Spaces 
  2548.  
  2549.       Check this option to automatically replace tabs to the specificed number 
  2550.       of spaces in the migrated output code. If unchecked, tabs may create 
  2551.       uneven spacing in the inserted tags at the end of code lines in the 
  2552.       migrated output code. 
  2553.  
  2554.     Process [Enter] 
  2555.  
  2556.       Pressing Process will proceed to the Migration process. 
  2557.  
  2558.     Save 
  2559.  
  2560.       Pressing Save will store the settings of this panel without proceeding to 
  2561.       the Migration process. 
  2562.  
  2563.     Cancel [Esc] 
  2564.  
  2565.       Pressing Cancel will terminate this process and return to the main menu. 
  2566.  
  2567.     Help (H) 
  2568.  
  2569.       When you choose the Help button, the corresponding on-line help is 
  2570.       displayed. 
  2571.  
  2572.  See Also: 
  2573.  
  2574.   Select Filename Dialog Panel 
  2575.   Maintain PreProc Variables File 
  2576.   Map File Extensions 
  2577.   Link Db Build Options 
  2578.   Migrate Format Options 
  2579.   Dialog Panels 
  2580.   SMART On-Line Help 
  2581.  
  2582.  
  2583. ΓòÉΓòÉΓòÉ 4.13. Remove Tagged Code Configuration ΓòÉΓòÉΓòÉ
  2584.  
  2585. The Remove Code Configuration Dialog Panel allows you to specify options and 
  2586. parameters for the Code Removal Procedure. 
  2587.  
  2588. If a default List-of-Files has not been previously chosen, this panel will be 
  2589. preceded by the Verify/Select Filename. 
  2590.  
  2591. Access 
  2592.  
  2593.   Remove Code Configuration Dialog 
  2594.  
  2595.  Controls 
  2596.  
  2597.     Select List-of-Files 
  2598.  
  2599.       Press this button to display the Select Filename dialog panel. 
  2600.  
  2601.     List-of-Files Filename entry 
  2602.  
  2603.       You may type in the full path, drive, directory, and filename (e.g. 
  2604.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  2605.  
  2606.       The default path and filename for the List-of-Files file is automatically 
  2607.       displayed in this entry field. 
  2608.  
  2609.     Overwrite Original File 
  2610.  
  2611.       Check this option to overwrite original source file with migrated file 
  2612.       output. 
  2613.  
  2614.       NOT RECOMMENDED - see following option. 
  2615.  
  2616.     Create Files using mapped extensions 
  2617.  
  2618.       Check this option and use mapping file extensions to create migrated 
  2619.       files. 
  2620.  
  2621.     Extension Mapping 
  2622.  
  2623.       Press this push-button to display the Map File Extensions dialog panel. 
  2624.  
  2625.     Verify File Overwrite 
  2626.  
  2627.       Check this checkbox to have a verification box displayed any time a new 
  2628.       file is about to overwrite an existing file. 
  2629.  
  2630.     Remove Code with the Following Tags 
  2631.  
  2632.       The group box contains options for code removal based on tagged code (// 
  2633.       followed by a single space and the specified tag ID). 
  2634.  
  2635.     Informational - SM$:I 
  2636.  
  2637.       Informational comment lines associated with Category 000 keyword 
  2638.       migration. 
  2639.  
  2640.     Keyword - SM$:K 
  2641.  
  2642.       Keyword heading comment containing Keyword, Category, Type, and Area 
  2643.       identification. 
  2644.  
  2645.     Prototype Code - SM$:P 
  2646.  
  2647.       Prototype definitions of the source and migrated code, if applicable. 
  2648.  
  2649.     Short Comments - SM$:S 
  2650.  
  2651.       Short comments for migration of the keyword. 
  2652.  
  2653.     Long Comments - SM$:L 
  2654.  
  2655.       Long, more detailed explanation regarding the migrated keyword. 
  2656.  
  2657.     Code Examples - SM$:X 
  2658.  
  2659.       Code examples, if available, for the migrated code. 
  2660.  
  2661.     Original Code - SM$:O 
  2662.  
  2663.       Original source code lines before migration. 
  2664.  
  2665.     Restated Code - SM$:R 
  2666.  
  2667.       Original source code lines restated with a tag. 
  2668.  
  2669.     Comments - SM$:C 
  2670.  
  2671.       General comments. 
  2672.  
  2673.     Cat 000 Comments - SM$:0 
  2674.  
  2675.       Comments related to Category 000 keyword migration. 
  2676.  
  2677.     Cat 010 Comments - SM$:1 
  2678.  
  2679.       Comments related to Category 010 keyword migration. 
  2680.  
  2681.     Cat 999 Comments - SM$:9 
  2682.  
  2683.       Comments related to Category 999 keyword migration. 
  2684.  
  2685.     Other tagged Lines 
  2686.  
  2687.       Check this checkbox to remove additional tags as identified in the 
  2688.       following entry fields. 
  2689.  
  2690.     SM: Entry Fields 
  2691.  
  2692.       Specify unique tag identifiers to be removed.  These may be identity 
  2693.       characters that you have used in the process of the code migration. 
  2694.  
  2695.     Remove Comment Tags and Spaces at End of Lines 
  2696.  
  2697.       The group box contains options for tag removal based on tagged code (// 
  2698.       followed by a single space and the specified tag ID). Note that this 
  2699.       option removed only the specified tags and any trailing tabs or spaces. 
  2700.       This option does not remove source code. 
  2701.  
  2702.     Tags begining with... 
  2703.  
  2704.       This checkbox will cause removal of the end-of-line tags for the 
  2705.       specified tags entered in the entry boxes following the checkbox. 
  2706.  
  2707.     Process [Enter] 
  2708.  
  2709.       Pressing Process will proceed to the Removal process. 
  2710.  
  2711.     Save 
  2712.  
  2713.       Pressing Save will store the settings of this panel without proceeding to 
  2714.       the Analysis process. 
  2715.  
  2716.     Cancel [Esc] 
  2717.  
  2718.       Pressing Cancel will terminate this process and return to the main menu. 
  2719.  
  2720.     Help (H) 
  2721.  
  2722.       When you choose the Help button, the corresponding on-line help is 
  2723.       displayed. 
  2724.  
  2725.  See Also: 
  2726.  
  2727.   Verify/Select Filename 
  2728.   Maintain PreProc Variables File 
  2729.   Map File Extensions 
  2730.   Dialog Panels 
  2731.   SMART On-Line Help 
  2732.  
  2733.  
  2734. ΓòÉΓòÉΓòÉ 4.14. Comment-Out Dialog Panel ΓòÉΓòÉΓòÉ
  2735.  
  2736. The Comment-Out Dialog Panel allows you to specify options and parameters for 
  2737. the Comment-Out #ifdef Procedure. 
  2738.  
  2739. If a default List-of-Files has not been previously chosen, this panel will be 
  2740. preceded by the Verify/Select Filename. 
  2741.  
  2742. Processing from this panel provides three different functions: #ifdef code 
  2743. block commenting, reversal of block comments from this process, complete code 
  2744. removal of #ifdef blocks (not reversible). 
  2745.  
  2746. The #if processing follows conventions for preprocessor variable processing. 
  2747.  
  2748. Access 
  2749.  
  2750.   Comment-Out Code Dialog 
  2751.  
  2752.  Controls 
  2753.  
  2754.     Select List-of-Files 
  2755.  
  2756.       Press this button to display the Select Filename dialog panel. 
  2757.  
  2758.     List-of-Files Filename entry 
  2759.  
  2760.       You may type in the full path, drive, directory, and filename (e.g. 
  2761.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  2762.  
  2763.       The default path and filename for the List-of-Files file is automatically 
  2764.       displayed in this entry field. 
  2765.  
  2766.     #ifdef list 
  2767.  
  2768.       If this checkbox is checked the Comment-Out Process will process #ifdef 
  2769.       blocks according to the variables provided in the list. If this option is 
  2770.       selected, the name of the preprocessor variables file must be included in 
  2771.       the following entry field. Refer to Maintain PreProc Variables File. 
  2772.  
  2773.     Select #ifdef Variables File 
  2774.  
  2775.       Press this button to display the Select Filename dialog panel. 
  2776.  
  2777.     Preprocessor Variables Filename entry 
  2778.  
  2779.       You may type in the full path, drive, directory, and filename (e.g. 
  2780.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  2781.  
  2782.     Overwrite Original File 
  2783.  
  2784.       Check this option to overwrite original source file with the processed 
  2785.       file output. 
  2786.  
  2787.       NOT RECOMMENDED - see following option. 
  2788.  
  2789.     Create Files using mapped extensions 
  2790.  
  2791.       Check this option and use mapping file extensions to create migrated 
  2792.       files. 
  2793.  
  2794.     Extension Mapping 
  2795.  
  2796.       Press this push-button to display the Map File Extensions dialog panel. 
  2797.  
  2798.     Verify File Overwrite 
  2799.  
  2800.       Check this checkbox to have a verification box displayed any time a new 
  2801.       file is about to overwrite an existing file. 
  2802.  
  2803.     Comment Line Tagging 
  2804.  
  2805.       The group box contains options for inserting a tag at the end of each 
  2806.       commented code line defined by the #ifdef block. 
  2807.  
  2808.     Comment Line Tag 
  2809.  
  2810.       Check this checkbox to have a tag inserted at the end of the commented 
  2811.       code line. 
  2812.  
  2813.     SM: Tag Entry Field 
  2814.  
  2815.       Specify a unique tag identifier.  Please insure that the tag that you use 
  2816.       is not one used by SMART in the Migration Process, or by you for any 
  2817.       other reason.  Refer to Comment Tags 
  2818.  
  2819.     Tag at Column Column Entry Field 
  2820.  
  2821.       Specify a column number for the begining of the tag. 
  2822.  
  2823.     Convert Tabs to spaces in all lines 
  2824.  
  2825.       Check this checkbox to have all tabs in the processed files converted to 
  2826.       spaces. 
  2827.  
  2828.     Tab Spacing Entry Field 
  2829.  
  2830.       Specify the number of spaces to replace tab characters in all lines of 
  2831.       the files. 
  2832.  
  2833.     Process [Enter] 
  2834.  
  2835.       Pressing Process will proceed to comment-out the code represented by the 
  2836.       #ifdef variables. 
  2837.  
  2838.     Cancel [Esc] 
  2839.  
  2840.       Pressing Cancel will terminate this process and return to the main menu. 
  2841.  
  2842.     Help (H) 
  2843.  
  2844.       When you choose the Help button, the corresponding on-line help is 
  2845.       displayed. 
  2846.  
  2847.     Clear Comments 
  2848.  
  2849.       Pressing this button will process the files reversing out all commented 
  2850.       code within the #ifdef code blocks identified by the #ifdef variable 
  2851.       list. 
  2852.  
  2853.     Remove Blocks 
  2854.  
  2855.       Pressing this button will process the files REMOVING all code (including 
  2856.       the #if statements) represented by the #ifdef variables.  This processing 
  2857.       step is not reversible. 
  2858.  
  2859.  See Also: 
  2860.  
  2861.   Verify/Select Filename 
  2862.   Maintain PreProc Variables File 
  2863.   Map File Extensions 
  2864.   Dialog Panels 
  2865.   SMART On-Line Help 
  2866.  
  2867.  
  2868. ΓòÉΓòÉΓòÉ 4.15. Locate Configuration File ΓòÉΓòÉΓòÉ
  2869.  
  2870. The Locate Configuration File Dialog Panel prompts you for the path and 
  2871. filename of the SMART configuration file. 
  2872.  
  2873. This panel will only appear at application startup when the configuration file 
  2874. cannot be located. 
  2875.  
  2876. The location of the SMART configuration file is stored in OS2.INI during the 
  2877. installation of SMART  If OS/2 has been reinstalled and you have rebuilt the 
  2878. OS2.INI file or the SMART configuration file has been move or deleted, this 
  2879. panel will appear. 
  2880.  
  2881. Access 
  2882.  
  2883.   Locate Configuration File 
  2884.  
  2885.  Controls 
  2886.  
  2887.     Select (S) 
  2888.  
  2889.       Press this button to display the Select Filename dialog panel. 
  2890.  
  2891.     Filename entry 
  2892.  
  2893.       You may type in the full path, drive, directory, and filename (e.g. 
  2894.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  2895.  
  2896.       The default path and filename for the configuration file is [the 
  2897.       installed directory for SMART]\SMART.CFG. 
  2898.  
  2899.     Ok [Enter] 
  2900.  
  2901.       Pressing 'Ok' or [Enter] will accept the displayed filename. 
  2902.  
  2903.     Cancel [Esc] 
  2904.  
  2905.       Pressing Cancel will terminate this process without starting SMART. 
  2906.  
  2907.     Help (H) 
  2908.  
  2909.       When you choose the Help button, the corresponding on-line help is 
  2910.       displayed. 
  2911.  
  2912.  See Also: 
  2913.  
  2914.   Select Filename Dialog Panel 
  2915.   Dialog Panels 
  2916.   SMART On-Line Help 
  2917.  
  2918.  
  2919. ΓòÉΓòÉΓòÉ 4.16. Graphical Resource Converter Dialog Panel ΓòÉΓòÉΓòÉ
  2920.  
  2921. The Graphical Resource Dialog Panel allows you to specify options and 
  2922. parameters along with spawning the Graphical Resource Converter (SMARTCVT.EXE). 
  2923.  
  2924. SMARTCVT.EXE can also be executed from a command line or batch program.  Refer 
  2925. to Graphical Resource Converter for additional details. 
  2926.  
  2927. Access 
  2928.  
  2929.   Graphical Resource Dialog 
  2930.  
  2931.  Controls 
  2932.  
  2933.     Select Source File(s) 
  2934.  
  2935.       Press this button to display the Select Filename dialog panel. 
  2936.  
  2937.     Source Files entry 
  2938.  
  2939.       You may type in the full path, drive, directory, and filename (e.g. 
  2940.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  2941.  
  2942.       Normal wildcard characters can be used in this field to specify a set of 
  2943.       source files. 
  2944.  
  2945.     Select Target File(s) 
  2946.  
  2947.       Press this button to display the Select Filename dialog panel. 
  2948.  
  2949.     Target File(s) entry 
  2950.  
  2951.       You may type in the full path, drive, directory, and filename (e.g. 
  2952.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  2953.  
  2954.       Normal wildcard characters can be used in this field to specify a set of 
  2955.       Target (converted) files. 
  2956.  
  2957.     Select Error File 
  2958.  
  2959.       Press this button to display the Select Filename dialog panel. 
  2960.  
  2961.     Error File entry 
  2962.  
  2963.       You may type in the full path, drive, directory, and filename (e.g. 
  2964.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  2965.  
  2966.     Send Error File to Editor 
  2967.  
  2968.       Check this option to automatically send the error file generated from 
  2969.       this process to the editor/browser that has been specified in the setup 
  2970.       options dialog panel. 
  2971.  
  2972.     Process [Enter] 
  2973.  
  2974.       Pressing Process will proceed to spawn the Graphical Resource Utility 
  2975.       program with the options specified in this panel. 
  2976.  
  2977.     Cancel [Esc] 
  2978.  
  2979.       Pressing Cancel will terminate this process and return to the main menu. 
  2980.  
  2981.     Help (H) 
  2982.  
  2983.       When you choose the Help button, the corresponding on-line help is 
  2984.       displayed. 
  2985.  
  2986.  See Also: 
  2987.  
  2988.   Verify/Select Filename 
  2989.   Graphical Resource Converter 
  2990.   Dialog Panels 
  2991.   SMART On-Line Help 
  2992.  
  2993.  
  2994. ΓòÉΓòÉΓòÉ 4.17. Resource Translator Dialog Panel ΓòÉΓòÉΓòÉ
  2995.  
  2996. The Resource Translator Dialog Panel allows you to specify options and 
  2997. parameters along with spawning the Resource Translator (SMARTRC.EXE). 
  2998.  
  2999. It is necessary to use this utility only when migrating from Windows to OS/2. 
  3000. Resource files do not require translating when migrating from one version of 
  3001. OS/2 to another. 
  3002.  
  3003. SMARTRC.EXE can also be executed from a command line or batch program.  Refer 
  3004. to Resource Translator for additional details. 
  3005.  
  3006. Access 
  3007.  
  3008.   Resource Translator Dialog 
  3009.  
  3010.  Controls 
  3011.  
  3012.     Select Resource Filename 
  3013.  
  3014.       Press this button to display the Select Filename dialog panel. 
  3015.  
  3016.     Resource Filename entry 
  3017.  
  3018.       You may type in the full path, drive, directory, and filename (e.g. 
  3019.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  3020.  
  3021.       Normal wildcard characters can be used in this field to specify a set of 
  3022.       resource files. If you use a wildcard resource filename, then you MUST 
  3023.       explicitly name the error filr, header file and summary file (see below). 
  3024.  
  3025.     Error File 
  3026.  
  3027.       Check this to specify that the error file is to be user specified 
  3028.       (otherwise the default (resource).err will be used). 
  3029.  
  3030.     Select Error File 
  3031.  
  3032.       Press this button to display the Select Filename dialog panel. 
  3033.  
  3034.     Error File entry 
  3035.  
  3036.       You may type in the full path, drive, directory, and filename (e.g. 
  3037.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  3038.  
  3039.     Header File 
  3040.  
  3041.       Check this to specify that the header file is to be user specified 
  3042.       (otherwise the default (resource).HHH will be used). 
  3043.  
  3044.     Select Header File 
  3045.  
  3046.       Press this button to display the Select Filename dialog panel. 
  3047.  
  3048.     Header File entry 
  3049.  
  3050.       You may type in the full path, drive, directory, and filename (e.g. 
  3051.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  3052.  
  3053.     Summary File 
  3054.  
  3055.       Check this to specify that the summary file is to be user specified 
  3056.       (otherwise the default (resource).SUM will be used). 
  3057.  
  3058.     Select Summary File 
  3059.  
  3060.       Press this button to display the Select Filename dialog panel. 
  3061.  
  3062.     Summary File entry 
  3063.  
  3064.       You may type in the full path, drive, directory, and filename (e.g. 
  3065.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  3066.  
  3067.     Define File 
  3068.  
  3069.       Check this to specify that the define file is to be user specified 
  3070.       (otherwise no define will be used). 
  3071.  
  3072.     Select Define File 
  3073.  
  3074.       Press this button to display the Select Filename dialog panel. 
  3075.  
  3076.     Define File entry 
  3077.  
  3078.       You may type in the full path, drive, directory, and filename (e.g. 
  3079.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  3080.  
  3081.     Font Map File 
  3082.  
  3083.       Check this to specify that the font map file is to be user specified 
  3084.       (otherwise no define will be used). 
  3085.  
  3086.     Select Font Map File 
  3087.  
  3088.       Press this button to display the Select Filename dialog panel. 
  3089.  
  3090.     Font Map File entry 
  3091.  
  3092.       You may type in the full path, drive, directory, and filename (e.g. 
  3093.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  3094.  
  3095.     Include Paths 
  3096.  
  3097.       Check this to specify that additional include paths are to be user 
  3098.       specified (otherwise no additional paths will be used). 
  3099.  
  3100.     Include Paths entry 
  3101.  
  3102.       You may type in additional paths that will be included in the environment 
  3103.       for this process. 
  3104.  
  3105.     Define Symbols 
  3106.  
  3107.       Check this to specify that define symbols are to be user specified 
  3108.       (otherwise no additional symbols will be used). 
  3109.  
  3110.     Define Symbols entry 
  3111.  
  3112.       You may type in symbol definitions that will be included in this process. 
  3113.  
  3114.     Target Screen Height 
  3115.  
  3116.       Check this to specify that the processing target screen height is to be 
  3117.       user specified (otherwise the current screen will be used). 
  3118.  
  3119.     Target Screen Height entry 
  3120.  
  3121.       You may type in a screen height to be used in this process. 
  3122.  
  3123.        Max. Symbols entry 
  3124.  
  3125.       You may change the table processing size to be used in this process (8192 
  3126.       is the default). 
  3127.  
  3128.        Target[,Source] Code Pages entry 
  3129.  
  3130.       You may specify the target (and source) code pages to be used in this 
  3131.       process (850,1004 is the default). 
  3132.  
  3133.     Translated Filename 
  3134.  
  3135.       The group box contains the option for the translated file(s) from this 
  3136.       process. In either case, the mapping mask is required. Either the 
  3137.       original file will be written to this mapped filename, or the translated 
  3138.       filename will be written to this mapped file. 
  3139.  
  3140.     Overwrite Original 
  3141.  
  3142.       Check this to specify that the translated file(s) will overwrite the 
  3143.       original filenames and the original files will be written to the mapped 
  3144.       filename. 
  3145.  
  3146.     Use Mapping Mask 
  3147.  
  3148.       Check this to specify that the translated filename will be created using 
  3149.       the mapping mask and the original file will remain untouched. 
  3150.  
  3151.        Mapping Mask entry 
  3152.  
  3153.       You must specify the filename mapping mask to be used in this process 
  3154.       (*.??X is the default). 
  3155.  
  3156.     Send Error File to Editor 
  3157.  
  3158.       Check this option to automatically send the error file generated from 
  3159.       this process to the editor/browser that has been specified in the setup 
  3160.       options dialog panel. 
  3161.  
  3162.     Process [Enter] 
  3163.  
  3164.       Pressing Process will proceed to spawn the Resource Translator Utility 
  3165.       program with the options specified in this panel. 
  3166.  
  3167.     Cancel [Esc] 
  3168.  
  3169.       Pressing Cancel will terminate this process and return to the main menu. 
  3170.  
  3171.     Help (H) 
  3172.  
  3173.       When you choose the Help button, the corresponding on-line help is 
  3174.       displayed. 
  3175.  
  3176.  See Also: 
  3177.  
  3178.   Verify/Select Filename 
  3179.   Resource Translator 
  3180.   Dialog Panels 
  3181.   SMART On-Line Help 
  3182.  
  3183.  
  3184. ΓòÉΓòÉΓòÉ 4.18. Print Analysis Reports Dialog Panel ΓòÉΓòÉΓòÉ
  3185.  
  3186. This panel allows you to specify and configure the print format for printing 
  3187. the SMART Analysis Reports generated from the analysis processes. 
  3188.  
  3189. Access 
  3190.  
  3191.   Print Dialog 
  3192.  
  3193.  Controls 
  3194.  
  3195.     Incl SMART Summary Report Filename 
  3196.  
  3197.       Check this option to include the Analysis summary in the printed report. 
  3198.  
  3199.     Select SMART Summary Report Filename 
  3200.  
  3201.       Press this button to display the Select Filename dialog panel. 
  3202.  
  3203.     SMART Summary Report Filename entry 
  3204.  
  3205.       You may type in the full path, drive, directory, and filename (e.g. 
  3206.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  3207.  
  3208.       Normally this will be the same filename as your List-of-Files with an 
  3209.       extension of SUM. 
  3210.  
  3211.     Incl SMART Additional Summary Report Filename 
  3212.  
  3213.       Check this option to include an additional Analysis summary in the 
  3214.       printed report. 
  3215.  
  3216.       Typically this will be a resource analysis (Windows Only). 
  3217.  
  3218.     Select SMART Additional Summary Report Filename 
  3219.  
  3220.       Press this button to display the Select Filename dialog panel. 
  3221.  
  3222.     SMART Additional Summary Report Filename entry 
  3223.  
  3224.       You may type in the full path, drive, directory, and filename (e.g. 
  3225.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  3226.  
  3227.       Normally this will be the same filename as your Resource List-of-Files 
  3228.       with an extension of SUM. 
  3229.  
  3230.     Select Analysis Report Filename 
  3231.  
  3232.       Press this button to display the Select Filename dialog panel. 
  3233.  
  3234.     Analysis Report Filename Entry 
  3235.  
  3236.       You may type in the full path, drive, directory, and filename (e.g. 
  3237.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  3238.  
  3239.       Normally this will be the same filename as your List-of-Files with an 
  3240.       extension of RPT. 
  3241.  
  3242.     Report Title Lines 
  3243.  
  3244.       Three Report Title line entry fields are available for your use. 
  3245.  
  3246.       All Three lines will appear on the report cover page. 
  3247.  
  3248.       The first line will appear at the top of each printed page in the report. 
  3249.  
  3250.     Print Copies entry 
  3251.  
  3252.       You may type in the number of copies to be printed for this report. 
  3253.  
  3254.     Print [Enter] 
  3255.  
  3256.       Pressing Print will process the specified files to create a print file to 
  3257.       the specified printer. 
  3258.  
  3259.     Cancel [Esc] 
  3260.  
  3261.       Pressing Cancel will terminate this process and return to the main menu. 
  3262.  
  3263.     Format... [Esc] 
  3264.  
  3265.       Pressing Format will create a popup panel to specify font and margins for 
  3266.       the report. 
  3267.  
  3268.       To maintain column spacing - Courier font should be chosen. 
  3269.  
  3270.       The font size should be as small as readable to prevent wraping in 
  3271.       landscape mode. 
  3272.  
  3273.     Printer Setup... [Esc] 
  3274.  
  3275.       Pressing this button will create a popup panel for the selection of a 
  3276.       printer and for setting the job properties of the printer to obtain 
  3277.       lanscape mode printing. 
  3278.  
  3279.     Help (H) 
  3280.  
  3281.       When you choose the Help button, the corresponding on-line help is 
  3282.       displayed. 
  3283.  
  3284.  See Also: 
  3285.  
  3286.   Print Analysis Report Menu 
  3287.   Dialog Panels 
  3288.   SMART On-Line Help 
  3289.  
  3290.  
  3291. ΓòÉΓòÉΓòÉ 4.19. Resource Analysis Dialog ΓòÉΓòÉΓòÉ
  3292.  
  3293. The Resource Analysis Dialog Panel allows you to specify options and parameters 
  3294. for the Resource Analysis Procedure. (Windows Resources Only). 
  3295.  
  3296. Access 
  3297.  
  3298.   Resource Analysis Dialog 
  3299.  
  3300.  Controls 
  3301.  
  3302.     Select List-of-Resource-Files 
  3303.  
  3304.       Press this button to display the Select Filename dialog panel. 
  3305.  
  3306.     List-of-Resource-Files Filename entry 
  3307.  
  3308.       You may type in the full path, drive, directory, and filename (e.g. 
  3309.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  3310.  
  3311.       The resource List-of-Files should contain all of the .RC and .DLG 
  3312.       resource files that are to be analyzed. Typically these files will 
  3313.       contain Menu Templates, Dialog Templates, String Tables and Accelerator 
  3314.       Tables. 
  3315.  
  3316.     Select Output Resource Summary File 
  3317.  
  3318.       Press this button to display the Select Filename dialog panel. 
  3319.  
  3320.     Output Resource Summary Filename entry 
  3321.  
  3322.       You may type in the full path, drive, directory, and filename (e.g. 
  3323.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  3324.  
  3325.       The typical path and filename for this file is the same as the 
  3326.       Lis-of-Resource-Filname with an extension of SUM. 
  3327.  
  3328.     Process #if 
  3329.  
  3330.       If this checkbox is checked the Resource AnalysisProcess will recognize 
  3331.       preprocessor "ifdef" and "ifndef" statements to include or exclude blocks 
  3332.       of code.  If this option is selected, the name of the preprocessor 
  3333.       variables file must be included in the following entry field. Refer to 
  3334.       Maintain PreProc Variables File. 
  3335.  
  3336.     Select Preprocessor Variables File 
  3337.  
  3338.       Press this button to display the Select Filename dialog panel. 
  3339.  
  3340.     Preprocessor Variables Filename entry 
  3341.  
  3342.       You may type in the full path, drive, directory, and filename (e.g. 
  3343.       C:\NEWDIR\NEWFILE.C) of the file to be used. 
  3344.  
  3345.     Send Analysis Output to Editor 
  3346.  
  3347.       Check this option to automatically send a text copy of the Analysis 
  3348.       display to the editor/browser that has been specified in the setup 
  3349.       options dialog panel. 
  3350.  
  3351.     Effort Modifier: 
  3352.  
  3353.       This checkbox and entry field with modify the effort calculations in the 
  3354.       Analysis evaluation. 
  3355.  
  3356.       If the checkbox is checked this modifier will be used in the 
  3357.       calculations, otherwise it will be ignored. 
  3358.  
  3359.       The value entered in the entry field will be used as a modifier for all 
  3360.       of the effort calculations. 
  3361.  
  3362.       This number can be a mixed whole and decimal fraction.  The number can be 
  3363.       greater or less than 1.0, but not zero (0) if the checkbox is checked. 
  3364.  
  3365.     Process [Enter] 
  3366.  
  3367.       Pressing Process will proceed to the Analysis process. 
  3368.  
  3369.     Cancel [Esc] 
  3370.  
  3371.       Pressing Cancel will terminate this process without starting the Analysis 
  3372.       Process. 
  3373.  
  3374.     Help (H) 
  3375.  
  3376.       When you choose the Help button, the corresponding on-line help is 
  3377.       displayed. 
  3378.  
  3379.  See Also: 
  3380.  
  3381.   Select Filename Dialog Panel 
  3382.   Maintain PreProc Variables File 
  3383.   Dialog Panels 
  3384.   SMART On-Line Help 
  3385.  
  3386.  
  3387. ΓòÉΓòÉΓòÉ 4.20. Select Tables Dialog Panel ΓòÉΓòÉΓòÉ
  3388.  
  3389. This panel allows you to specify and select Migration Data Base Tables for 
  3390. processing Analysis and/or Migration. 
  3391.  
  3392. One Primary (Application supplied) Tables is chosen.  One additional User 
  3393. Defined Migration Data Base (UDMD) can be chosen, if required. 
  3394.  
  3395. You can specify to use the UDMD or not, and even specify that the UDMD will be 
  3396. the only Table processed in the run, or simply be an override of the Primary 
  3397. Table. 
  3398.  
  3399. Access 
  3400.  
  3401.   Set Tables Dialog 
  3402.  
  3403.  Controls 
  3404.  
  3405.     Select1... SMART Primary Table Filename 
  3406.  
  3407.       Press this button to display the Select Filename dialog panel. 
  3408.  
  3409.     SMART Primary Table Filename entry 
  3410.  
  3411.       You may type in the full path, drive, directory, and filename (e.g. 
  3412.       C:\NEWDIR) of the file to be used. 
  3413.  
  3414.       This field will contain the Primary Table filename selected.  In the 
  3415.       following three display lines the header information for this table will 
  3416.       be shown. 
  3417.  
  3418.     Select2... UDMD Data Base Directory 
  3419.  
  3420.       Press this button to display the Select Directory dialog panel. 
  3421.  
  3422.       Note: you will be selecting the directory containing the UDMD Data Base 
  3423.       files and NOT the Table filename.  Only one UDMD Table and associated 
  3424.       files may be contained within a single directory 
  3425.  
  3426.       This control is disabled if you have chosen not to include a UDMD (see 
  3427.       radio button below). 
  3428.  
  3429.     UDMD Data Base Directory entry 
  3430.  
  3431.       You may type in the full path, drive, directory (e.g. C:\NEWDIR) of the 
  3432.       file to be used. 
  3433.  
  3434.     Do Not Use UDMD Button 
  3435.  
  3436.       Press this radio button to chose not to use a UDMD in your processing. 
  3437.  
  3438.     Use UDMD with Primary Table - Button 
  3439.  
  3440.       Press this radio button to chose to have UDMD in your processing to 
  3441.       override matching keyword entries with entries in your UDMD. 
  3442.  
  3443.     Use UDMD Instead of Primary Table - Button 
  3444.  
  3445.       Press this radio button to chose to have UDMD in your processing to 
  3446.       disable the Primary Table. 
  3447.  
  3448.       A Primary Table must always be specified for processing that is 
  3449.       consistent with the migration direction.  If the UDMD migrates from 
  3450.       Windows version 3.1 source to OS/2 version 2.1, then the Windows 3.1 to 
  3451.       OS/2 2.1 table must be the Primary Table. If it is not the Primary Table, 
  3452.       the Category, Type, and Area data will be inconsistent with the target 
  3453.       platform.  Selecting this button will disable all references to keywords 
  3454.       in the Primary table and only use the Category, Type, and Area data from 
  3455.       the Primary Table. 
  3456.  
  3457.     Set [Enter] 
  3458.  
  3459.       Pressing Set will load the newly selected tables and configuration into 
  3460.       SMART to ready processing.. 
  3461.  
  3462.     Cancel [Esc] 
  3463.  
  3464.       Pressing Cancel will terminate this process and return to the main menu. 
  3465.  
  3466.     Help (H) 
  3467.  
  3468.       When you choose the Help button, the corresponding on-line help is 
  3469.       displayed. 
  3470.  
  3471.  See Also: 
  3472.  
  3473.   Select Tables Menu 
  3474.   Create User UDMD Menu 
  3475.   Dialog Panels 
  3476.   SMART On-Line Help 
  3477.  
  3478.  
  3479. ΓòÉΓòÉΓòÉ 4.21. Current Table Information  Dialog Panel ΓòÉΓòÉΓòÉ
  3480.  
  3481. This panel Displays the header data for the tables that you have chosen for 
  3482. processing Analysis or Migration. 
  3483.  
  3484. If a User UDMD has be chosen for processing with the Primary Migration Table 
  3485. the name of the table directory and the header data will be displayed. 
  3486.  
  3487. You can change the selection of the tables with the menu item Select Tables 
  3488. Menu using the Select Tables Dialog Panel 
  3489.  
  3490. Access 
  3491.  
  3492.   Tables Info Dialog 
  3493.  
  3494.  Controls 
  3495.  
  3496.     Ok [Enter] 
  3497.  
  3498.       Pressing Ok will close this panel and return processing to the main menu. 
  3499.  
  3500.  See Also: 
  3501.  
  3502.   Select Tables Menu 
  3503.   Create User UDMD Menu 
  3504.   Dialog Panels 
  3505.   SMART On-Line Help 
  3506.  
  3507.  
  3508. ΓòÉΓòÉΓòÉ 4.22. Create UDMD Dialog Panel ΓòÉΓòÉΓòÉ
  3509.  
  3510. This panel allows you to specify and select a User create Migration Data Base 
  3511. Distionary and create both the Migration Table and Data Base files for Analysis 
  3512. or Migration processing. 
  3513.  
  3514. Please refer to the SMART Programming Guide Document found in the SMART2 Folder 
  3515. on your desktop for complete programming and format information regarding your 
  3516. UDMD. 
  3517.  
  3518. Access 
  3519.  
  3520.   Set Create UDMD Dialog 
  3521.  
  3522.  Controls 
  3523.  
  3524.     Select1... UDMD Data Base Directory 
  3525.  
  3526.       Press this button to display the Select Directory dialog panel. 
  3527.  
  3528.       Note: you will be selecting the directory to store the UDMD Data Base 
  3529.       files and NOT the Table filename.  Only one UDMD Table and associated 
  3530.       files may be contained within a single directory 
  3531.  
  3532.     UDMD Data Base Directory entry 
  3533.  
  3534.       You may type in the full path, drive, directory (e.g. C:\NEWDIR) of the 
  3535.       file to be used. 
  3536.  
  3537.     Select2... Input Dictionary Filename 
  3538.  
  3539.       Press this button to display the Select Filename dialog panel. 
  3540.  
  3541.     SMART Primary Table Filename entry 
  3542.  
  3543.       You may type in the full path, drive, directory, and filename (e.g. 
  3544.       C:\NEWDIR\TABLE.DCT) of the file to be used. 
  3545.  
  3546.       This field will contain the ascii text dictionary filename selected. 
  3547.       This file does not have to be in the same directory as the generated data 
  3548.       based files, but is most logically put in the same directory. 
  3549.  
  3550.        Select3... Output Log Filename 
  3551.  
  3552.       Press this button to display the Select Filename dialog panel. 
  3553.  
  3554.     Output Log Filename entry 
  3555.  
  3556.       You may type in the full path, drive, directory, and filename (e.g. 
  3557.       C:\NEWDIR\TABLE.log) of the file to be used. 
  3558.  
  3559.       The log file will indicate the number of keywords created in the table 
  3560.       and will show any errors encountered. 
  3561.  
  3562.     Send Log File to Editor 
  3563.  
  3564.       Check this option to automatically send a text copy of the Analysis 
  3565.       display to the editor/browser that has been specified in the setup 
  3566.       options dialog panel. 
  3567.  
  3568.     Process [Enter] 
  3569.  
  3570.       Pressing Process will create the UDMD from the information specified on 
  3571.       this panel. 
  3572.  
  3573.       At the conclusion of the processing, The Select Tables Dialog will 
  3574.       automatically appear, assuming that you wish to select the newly created 
  3575.       table for processing. 
  3576.  
  3577.     Cancel [Esc] 
  3578.  
  3579.       Pressing Cancel will terminate this process and return to the main menu. 
  3580.  
  3581.     Help (H) 
  3582.  
  3583.       When you choose the Help button, the corresponding on-line help is 
  3584.       displayed. 
  3585.  
  3586.  See Also: 
  3587.  
  3588.   Select Tables Menu 
  3589.   Create User UDMD Menu 
  3590.   Dialog Panels 
  3591.   SMART On-Line Help 
  3592.  
  3593.  
  3594. ΓòÉΓòÉΓòÉ 4.23. Dump UDMD Dialog Panel ΓòÉΓòÉΓòÉ
  3595.  
  3596. This panel allows you to specify and select a User create Migration Data Base 
  3597. Distionary and produce an ascii text dictionary file. 
  3598.  
  3599. This is a convenience utility to protect you from the loss of your dictionary 
  3600. file. 
  3601.  
  3602. Please refer to the SMART Programming Guide Document found in the SMART2 Folder 
  3603. on your desktop for complete programming and format information regarding your 
  3604. UDMD. 
  3605.  
  3606. Access 
  3607.  
  3608.   Set Dump UDMD Dialog 
  3609.  
  3610.  Controls 
  3611.  
  3612.     Select1... UDMD Data Base Directory 
  3613.  
  3614.       Press this button to display the Select Directory dialog panel. 
  3615.  
  3616.       Note: you will be selecting the directory to the UDMD Data Base files and 
  3617.       NOT the Table filename.  Only one UDMD Table and associated files may be 
  3618.       contained within a single directory 
  3619.  
  3620.     UDMD Data Base Directory entry 
  3621.  
  3622.       You may type in the full path, drive, directory (e.g. C:\NEWDIR) of the 
  3623.       file to be used. 
  3624.  
  3625.     Select2... Input Dictionary Filename 
  3626.  
  3627.       Press this button to display the Select Filename dialog panel. 
  3628.  
  3629.     SMART Primary Table Filename entry 
  3630.  
  3631.       You may type in the full path, drive, directory, and filename (e.g. 
  3632.       C:\NEWDIR\TABLE.DCT) of the file to be used. 
  3633.  
  3634.       This field will contain the ascii text dictionary filename selected. 
  3635.       This file does not have to be in the same directory as the generated data 
  3636.       based files, but is most logically put in the same directory. 
  3637.  
  3638.        Select2... Output Dictionary Filename 
  3639.  
  3640.       Press this button to display the Select Filename dialog panel. 
  3641.  
  3642.     Output Dictionary Filename entry 
  3643.  
  3644.       You may type in the full path, drive, directory, and filename (e.g. 
  3645.       C:\NEWDIR\TABLE.log) of the file to be used. 
  3646.  
  3647.     Overwrite if existing Filename 
  3648.  
  3649.       Check this option if you wish to automatically overwrite any existing 
  3650.       file with a name matching the specified Dictionary Filename.  Otherwise 
  3651.       you will be prompted for overwrite verification. 
  3652.  
  3653.     Send Output Dictionary to Editor 
  3654.  
  3655.       Check this option to automatically send a text copy of the Analysis 
  3656.       display to the editor/browser that has been specified in the setup 
  3657.       options dialog panel. 
  3658.  
  3659.     Ok [Enter] 
  3660.  
  3661.       Pressing Ok will recreate the dictionary from the information specified 
  3662.       on this panel. 
  3663.  
  3664.     Cancel [Esc] 
  3665.  
  3666.       Pressing Cancel will terminate this process and return to the main menu. 
  3667.  
  3668.     Help (H) 
  3669.  
  3670.       When you choose the Help button, the corresponding on-line help is 
  3671.       displayed. 
  3672.  
  3673.  See Also: 
  3674.  
  3675.   Dump UDMD Menu 
  3676.   Select Tables Menu 
  3677.   Create User UDMD Menu 
  3678.   Dialog Panels 
  3679.   SMART On-Line Help 
  3680.  
  3681.  
  3682. ΓòÉΓòÉΓòÉ 4.24. Trace Keyword Dialog Panel ΓòÉΓòÉΓòÉ
  3683.  
  3684. This panel allows you to specify the keyword to trace MiCL Commands or specify 
  3685. to trace ALL keywords. 
  3686.  
  3687. You can change the keyword to trace at any point during the migration process. 
  3688.  
  3689. Access 
  3690.  
  3691.   Trace Menu 
  3692.  
  3693.  Controls 
  3694.  
  3695.   Enter Keyword to Trace entry 
  3696.  
  3697.       You may type in nmae of the keyword to trace.  This entry is ignored if 
  3698.       you select the 'Trace ALL' processing button. 
  3699.  
  3700.     Trace Keyword [Enter] 
  3701.  
  3702.       Processing will proceed to trace the MiCL commands for the specified 
  3703.       keyword as encountered in the source code currently being migrated. 
  3704.  
  3705.     Trace ALL 
  3706.  
  3707.       Processing will proceed to trace all MiCL commands encountered in the 
  3708.       source code currently being migrated. 
  3709.  
  3710.     Cancel [Esc] 
  3711.  
  3712.       Pressing Cancel will terminate this process and return to the trace menu. 
  3713.  
  3714.     Help (H) 
  3715.  
  3716.       When you choose the Help button, the corresponding on-line help is 
  3717.       displayed. 
  3718.  
  3719.  See Also: 
  3720.  
  3721.   Trace Keyword... 
  3722.   Trace MiCL 
  3723.   Trace Menu 
  3724.   SMART On-Line Help 
  3725.  
  3726.  
  3727. ΓòÉΓòÉΓòÉ 4.25. Set UDMD Directory Dialog Panel ΓòÉΓòÉΓòÉ
  3728.  
  3729. The Set UDMD Directory Dialog provides selection of a directory for your UDMD 
  3730. database. 
  3731.  
  3732. You can specify the name of the directory selecting the drive and path through 
  3733. the use of the list boxes. 
  3734.  
  3735. Features 
  3736.  
  3737.   1. You can change the current directory by the following actions: 
  3738.  
  3739.      You can double-click on a directory in the directory listbox, or you can 
  3740.      type in the directory name in the file data entry box and choose the Ok 
  3741.      button. 
  3742.  
  3743.      When you enter the directory name in the file data entry box, you can type 
  3744.      in the full path terminated by a slash; e.g. C:\OS2\SUBDIR\. When you type 
  3745.      in the directory name without being preceded by the drive, however, you do 
  3746.      not have to terminate the name with a slash; e.g. if you are positioned at 
  3747.      C:\OS2\CURRDIR and you want to go to the next higher directory, you can 
  3748.      type in '..' or 'OS2'. 
  3749.  
  3750.      When you click on a file in the files listbox or type in the filename and 
  3751.      choose the Select button, the size and date of the file are displayed. 
  3752.  
  3753.   2. The files list box displaying the files in the selected directory is for 
  3754.      your reference only. Files cannot be selected in this panel. 
  3755.  
  3756.   3.  You may also create a new directory path from this panel. 
  3757.  
  3758.   4.  This panel is only active when you choose to select a UDMD. 
  3759.  
  3760.  Access 
  3761.  
  3762.   Alt-T, S, 2 (Tables Menu, Select Tables, Select 2 ) 
  3763.  
  3764.  Controls 
  3765.  
  3766.     Current: 
  3767.  
  3768.       The current directory is displayed. 
  3769.  
  3770.     New Path: 
  3771.  
  3772.       You may type in a new directory path; if you type in the full path, this 
  3773.       must end with a \ (e.g. C:\NEWDIR\). When you choose the Ok button, the 
  3774.       directories listbox and files listbox are updated. 
  3775.  
  3776.       You may type in the name of the file to be opened or whose size and date 
  3777.       will be displayed (e.g. NEWFILE.C). 
  3778.  
  3779.       You may type in the full path, drive, directory, and filename (e.g. 
  3780.       C:\NEWDIR\NEWFILE.C) of the file to be opened or created or whose size 
  3781.       and date will be displayed. 
  3782.  
  3783.     Drives 
  3784.  
  3785.       This listbox contains drives. You may select the current drive from this 
  3786.       list. 
  3787.  
  3788.     Directories 
  3789.  
  3790.       This listbox contains directories. You may select the current directory 
  3791.       from this list. 
  3792.  
  3793.     Filenames 
  3794.  
  3795.       This listbox contains a list of fileswhich are contained within the 
  3796.       selected drive and directory. You may not select any filename. Filename 
  3797.       selection is not required. 
  3798.  
  3799.     Ok 
  3800.  
  3801.       Pressing 'Ok' or [Enter] will choose the directory as specified in the 
  3802.       entry panel. 
  3803.  
  3804.     Cancel 
  3805.  
  3806.       When you choose the Cancel button, the current command is canceled. 
  3807.  
  3808.     Make Dir 
  3809.  
  3810.       Press this button to create the directory specified in the 'New Path' 
  3811.       entry field.  If the directory already exists or cannot be created, a 
  3812.       popup message will be displayed. 
  3813.  
  3814.     Help (H) 
  3815.  
  3816.       When you choose the Help button, the corresponding on-line help is 
  3817.       displayed. 
  3818.  
  3819.  See Also: 
  3820.  
  3821.   Select Tables Dialog 
  3822.   Dialog Panels 
  3823.   SMART On-Line Help 
  3824.  
  3825.  
  3826. ΓòÉΓòÉΓòÉ 4.26. Printer Setup Dialog Panel ΓòÉΓòÉΓòÉ
  3827.  
  3828. The Printer Set Dialog provides selection of a printer and printer job 
  3829. properties for printing. 
  3830.  
  3831. Features 
  3832.  
  3833.   1. You can select an installed printer to be used for printing. 
  3834.  
  3835.   2. You can change the job properties of the selected printer. You will most 
  3836.      probably select landscape mode for printing SMART Analysis reports. 
  3837.  
  3838.  Access 
  3839.  
  3840.   Alt-F, U (File Menu, Printer Setup) 
  3841.  
  3842.  Controls 
  3843.  
  3844.     Select Printer 
  3845.  
  3846.       This listbox contains the names of installed printers. You may select a 
  3847.       printer from this list. 
  3848.  
  3849.     Ok 
  3850.  
  3851.       Pressing 'Ok' or [Enter] will choose the selected printer. 
  3852.  
  3853.     Cancel 
  3854.  
  3855.       When you choose the Cancel button, the current command is canceled. 
  3856.  
  3857.     Job Properties 
  3858.  
  3859.       Press this button obtain access to the selected printer job properties 
  3860.       dialog. You will most likely wish to set your printer to print in 
  3861.       landscape mode for the SMART Analysis Reports. 
  3862.  
  3863.     Help (H) 
  3864.  
  3865.       When you choose the Help button, the corresponding on-line help is 
  3866.       displayed. 
  3867.  
  3868.  See Also: 
  3869.  
  3870.   Print Analysis Report Menu 
  3871.   Dialog Panels 
  3872.   SMART On-Line Help 
  3873.  
  3874.  
  3875. ΓòÉΓòÉΓòÉ 4.27. Win Help Translator Dialog Panel ΓòÉΓòÉΓòÉ
  3876.  
  3877. The Win Help Translator Dialog provides file selection and translation options 
  3878. for spawning the Win Help Translation utility "SMARTHLP.EXE". 
  3879.  
  3880. You can specify the name of the input and output files along with the type of 
  3881. output desired. 
  3882.  
  3883. Features 
  3884.  
  3885.   1. You can select the input Win Help (ASCII Text) file (default is a .HPJ 
  3886.      file). 
  3887.  
  3888.   2. You can select the output filename or accept the default naming convention 
  3889.      (the file will be written to the same directory as the input file). 
  3890.  
  3891.   3. You can specify the output format as a compiled .HLP, or .INF file 
  3892.      (requires the installation of the IBM IPFC Compiler - not provided with 
  3893.      this application). 
  3894.  
  3895.   4. The Win Help Translation Utility will be spawned in a separate OS/2 Window 
  3896.      process as a result of selecting Ok from this dialog panel. 
  3897.  
  3898.  Access 
  3899.  
  3900.   Alt-R, H (Resources Menu, Translate Win Help) 
  3901.  
  3902.  Controls 
  3903.  
  3904.     Input Filename: 
  3905.  
  3906.       Enter the filename of an existing the Win Help (ASCII Text) file. This 
  3907.       file must be in the HPJ file format. 
  3908.  
  3909.     Select (Input Filename:) 
  3910.  
  3911.       Select this button to display a file selection dialog. 
  3912.  
  3913.     Output Filename: 
  3914.  
  3915.       You may type in a filename for the translated output, or leave the entry 
  3916.       field blank and accept a default filename created from the input filename 
  3917.       with the appropriate extension ( .HLP or .INF, depending upon the output 
  3918.       format selection). 
  3919.  
  3920.     Select (Output Filename:) 
  3921.  
  3922.       Select this button to display a file selection dialog. 
  3923.  
  3924.     Output .HLP 
  3925.  
  3926.       Press this radio button to select the translated output as an OS/2 .HLP 
  3927.       format file. This is the command line parameter default for the Win Help 
  3928.       Translation Utility and requires no special option parameter. 
  3929.  
  3930.     Output .INF 
  3931.  
  3932.       Press this radio button to select the translated output as an OS/2 .INF 
  3933.       format file. This is equivalent to the '-I' parameter to the command line 
  3934.       execution of the Win Help Translation utility. 
  3935.  
  3936.     Translate ALL Characters (-A) 
  3937.  
  3938.       Check this option to translate ALL code page characters not just those 
  3939.       with numeric values greater than 127.  This is equivalent to the '-A' 
  3940.       parameter to the command line execution of the Win Help Translation 
  3941.       utility. 
  3942.  
  3943.     Preserve Intermediate IPF File (-D) 
  3944.  
  3945.       Check this option to preserve the intermediate IPF file instead of 
  3946.       deleting it after the corresponding INF or HLP has been generated.  This 
  3947.       is equivalent to the '-D' parameter to the command line execution of the 
  3948.       Win Help Translation utility. 
  3949.  
  3950.     Use PM Default Font Only (-F) 
  3951.  
  3952.       Check this option to translate to PM font only ignoring references in 
  3953.       RTF.  This is equivalent to the '-F' parameter to the command line 
  3954.       execution of the Win Help Translation utility. 
  3955.  
  3956.     Display warning msg at level [nn] (-X) 
  3957.  
  3958.       Check this option to display debug messages at level nn. Where message 
  3959.       level is between 0 and 99.  This is equivalent to the '-X' parameter to 
  3960.       the command line execution of the Win Help Translation utility. 
  3961.  
  3962.     Use IPF Paragraph Tags (-U) 
  3963.  
  3964.       Check this option to use IPF paragraph tags to output paragraphs, 
  3965.       ignoring RTF paragraph spacing attributes.  This is equivalent to the 
  3966.       '-U' parameter to the command line execution of the Win Help Translation 
  3967.       utility. 
  3968.  
  3969.     Convert output file to IPF only (-C) 
  3970.  
  3971.       Check this option to create an file in the IPF format instead of the HPJ 
  3972.       file format.  This is equivalent to the '-C' parameter to the command 
  3973.       line execution of the Win Help Translation utility. 
  3974.  
  3975.     Target [,Source] Code Pages (-Gnnn -Ynnn) 
  3976.  
  3977.       Specify the target (and source) code page identification or accept the 
  3978.       default 850,1004.  This is equivalent to specifying these values with the 
  3979.       '-G' and '-Y' parameter to the command line execution of the Win Help 
  3980.       Translation utility. 
  3981.  
  3982.     Table Attributes (-B[xxx]) 
  3983.  
  3984.       The following five options affect the translation of help tables. 
  3985.  
  3986.     Horizontal Rules (h) 
  3987.  
  3988.       Check this option to apply the horizontal table rules.  This is 
  3989.       equivalent to an 'h' following the '-B' parameter to the command line 
  3990.       execution of the Win Help Translation utility. 
  3991.  
  3992.     Vertical Rules (v) 
  3993.  
  3994.       Check this option to apply the vertical table rules.  This is equivalent 
  3995.       to a 'v' following the '-B' parameter to the command line execution of 
  3996.       the Win Help Translation utility. 
  3997.  
  3998.     Top and Bottom Rules (r) 
  3999.  
  4000.       Check this option to apply the top and bottom table rules.  This is 
  4001.       equivalent to an 'r' following the '-B' parameter to the command line 
  4002.       execution of the Win Help Translation utility. 
  4003.  
  4004.     Box Around Table (x) 
  4005.  
  4006.       Check this option to create a box around help tables.  This is equivalent 
  4007.       to an 'x' following the '-B' parameter to the command line execution of 
  4008.       the Win Help Translation utility. 
  4009.  
  4010.     Rules and Box (a) 
  4011.  
  4012.       This option is equivalent to the selection of ALL four options above. 
  4013.       When this option is selected the other four check boxes will be 
  4014.       deselected.  This option cannot be selected if any one of the other four 
  4015.       attribute options is selected  This is equivalent to an 'a' following the 
  4016.       '-B' parameter to the command line execution of the Win Help Translation 
  4017.       utility. 
  4018.  
  4019.     Send Error file to Editor 
  4020.  
  4021.       Select this option to automatically send the error file created during 
  4022.       the translation process to the editor selected in the SMART Options 
  4023.       panel. 
  4024.  
  4025.     Ok 
  4026.  
  4027.       Pressing 'Ok' or [Enter] will spawn the Win Help Translation Utility 
  4028.       process with the options selected on this panel. 
  4029.  
  4030.     Cancel 
  4031.  
  4032.       When you choose the Cancel button, the translation process is not started 
  4033.       and the values chosen on this panel are not retained.  The dialog panel 
  4034.       is closed. 
  4035.  
  4036.     Help 
  4037.  
  4038.       When you choose the Help button, the corresponding on-line help is 
  4039.       displayed. 
  4040.  
  4041.  See Also: 
  4042.  
  4043.   Win Help Translator Topics 
  4044.   Dialog Panels 
  4045.   SMART On-Line Help 
  4046.  
  4047.  
  4048. ΓòÉΓòÉΓòÉ 5. Tutorial ΓòÉΓòÉΓòÉ
  4049.  
  4050. The Tutorial Section includes the following topics: 
  4051.  
  4052.     General Introduction 
  4053.     Analysis Procedure 
  4054.     Migration Procedure 
  4055.  
  4056.  START TUTORIAL - General Intro 
  4057.  
  4058.  See Also: 
  4059.  
  4060.   SMART On-Line Help 
  4061.  
  4062.  
  4063. ΓòÉΓòÉΓòÉ 5.1. SMART General Introduction ΓòÉΓòÉΓòÉ
  4064.  
  4065. SMART provides analysis and source code migration from one platform to another 
  4066. or one version to another on a given platform. SMART - Source Migration 
  4067. Analysis Reporting Toolset. 
  4068.  
  4069. The process of porting source code from one platform to another is indeed 
  4070. difficult and subjective. 
  4071.  
  4072. In fact, exploiting the features of one platform, and using proprietary 
  4073. libraries, class, and objects may make it severely difficult to port to another 
  4074. platform without a major rewrite of the code. 
  4075.  
  4076. There is no pat solution or utility to port all code to a target platform, and 
  4077. we dare say there most probably never will be.  However, with the proper tools, 
  4078. methodology, techniques and training the effort required in the migration of 
  4079. source code can be GREATLY reduced. 
  4080.  
  4081. The most appropriate solution for this process is to use the computer tools to 
  4082. perform tasks that are easily identified, routine, and labor intensive and 
  4083. provide a knowledge base to contain information related to all occurence types 
  4084. of differences between the platforms.  The human element must be applied where 
  4085. the complexity of the issue is too complicated for the computer analysis.  It 
  4086. is obvious to again provide the programming professional with powerful 
  4087. productivity tools to make global changes based on the migration issues of 
  4088. complex nature. This is the One Up SMART approach to native code migration. 
  4089.  
  4090. SMART supports Windows 16 bit -> OS/2 32 bit, Windows 32 bit -> OS/2 32 bit, 
  4091. and OS/2 16 bit -> OS/2 32 bit depending upon the tables that are installed 
  4092. with this application. 
  4093.  
  4094. SMART is designed to assist in the analysis and migration of native source code 
  4095. from one platform to another or one version of an operating environment to 
  4096. another on the same platform. 
  4097.  
  4098. The platform dependent data is contained in the migration dictionary (table) 
  4099. and the migration database files. 
  4100.  
  4101. This process is based on finding keywords (API calls, symbols, parameters, 
  4102. typedefs, etc) that differ in the migration. No attempt is made to analysis the 
  4103. intended use of the application source code.  As such there is no intent to 
  4104. evaluate platform explotation, or evaluate the use of the source code for 
  4105. application functionality such as MDI, DDE, communication, LAN, and etc. The 
  4106. base API keyword differences are categorized into groups to represent the 
  4107. difficulty in migration, ranging from a simple literal replacement to the case 
  4108. where the functionality does not exist in the target platform. 
  4109.  
  4110. SMART will analyze source code and prepare a report (display) providing a 
  4111. detailed evaluation of the migration requirements. 
  4112.  
  4113. Furthermore, in the migration process, SMART will process the user specified 
  4114. source files and create migrated source files.  The migrated source file will 
  4115. contain automatic migration changes (where possible) and in all cases will 
  4116. provide in-line commented code for the developer to complete the migration. 
  4117.  
  4118. CONTINUE TUTORIAL - Analysis 
  4119.  
  4120. See Also: 
  4121.  
  4122.   SMART - Product Information 
  4123.   SMART On-Line Help 
  4124.   Tutorial 
  4125.  
  4126.  
  4127. ΓòÉΓòÉΓòÉ 5.2. Analysis Procedure ΓòÉΓòÉΓòÉ
  4128.  
  4129. The analysis of source code for an evaluation of the migration and porting 
  4130. effort is accomplished through the use of SMART Analysis Procedure. 
  4131.  
  4132. This procedure simply consists of creating a text file (called a List-of-Files) 
  4133. with the fully qualified filenames of the files to be analyzed, and then 
  4134. perform the analysis procedure. The results of the analysis can be viewed 
  4135. on-screen and printed using SourceLink or a word processing application. 
  4136.  
  4137.   1. Create Analysis directories. 
  4138.  
  4139.      Each separate analysis should be performed from a separate directory. The 
  4140.      directory will contain the "List-of-Files" file, and subsequently will 
  4141.      contain analysis files created by the SMART Analysis process. Refer to the 
  4142.      files in the Reference Section of this help. 
  4143.  
  4144.      If separate analyses are to be created, each to represent a different 
  4145.      component of the product under analysis, an individual sub-directory 
  4146.      should be created to contain the analysis files.  Each "List-of-Files" for 
  4147.      each of these analyses should have a different filename, even though they 
  4148.      will be in a different sub-directory. 
  4149.  
  4150.      Sub-directories can be created from SourceLink using the "Copy" function 
  4151.      under the "More" main menu selection. 
  4152.  
  4153.      Select the directory to create the new sub-directory in the "TO" section 
  4154.      of the "Copy" dialog panel.  Type the name of the new sub-directory in the 
  4155.      "TO" "File" entry panel and press "Make Dir.". Note that you will 
  4156.      automatically be placed in this new sub-directory. 
  4157.  
  4158.      If these sub-directories are created under the installed "SMART" 
  4159.      directory, then the sub-directories will be wiped clean as part of the 
  4160.      SMART removal process. 
  4161.  
  4162.   2. Copy the source files to be analyzed to a backup directory (and 
  4163.      appropriate sub-directories) that will be used in this analysis. 
  4164.  
  4165.   3. Create the "List-of-Files" files containing the files for the analysis. 
  4166.      Use the "Maintain List-of-Files" function under the "Files" main menu item 
  4167.      in SMART or the equivalent function in SourceLink under the "Link" main 
  4168.      menu.  The files in this list may span multiple directories and even 
  4169.      drives. 
  4170.  
  4171.   4. Execute "Analyze Code" under the "Analysis" Menu selection. Take care to 
  4172.      select the proper option on the setup panel for this function. 
  4173.  
  4174.      The standard options will have only the "Send Analysis Output to Editor" 
  4175.      checked (all other options unchecked).  The "List-of-Files" filename 
  4176.      should be shown in the "List-of-Files" entry panel. 
  4177.  
  4178.      NOTE: multiple instances of SM.A.R.T. can be run at the same time if 
  4179.      running multiple analyses.  This may speed processing. 
  4180.  
  4181.   5. At the completion of the analysis, you will be able to print the analysis 
  4182.      report from SourceLink (as displayed at the completion of the analysis). 
  4183.      With the report showing on the SourceLink edit screen, select "More", 
  4184.      "Printing" and "Print Current File". 
  4185.  
  4186.      Select "Printer Setup" to select appropriate printer, and then chose "Job 
  4187.      Properties" to select "Landscape" for the printing mode. Close the 
  4188.      printing setup panels with "Ok". 
  4189.  
  4190.      Select "Formatting" and set the following parameters for the printed 
  4191.      format. Uncheck "Date/Time..." and "Word Wrap". 
  4192.  
  4193.      Set all page margins to 0.0. 
  4194.  
  4195.      Press "Select Fonts".  Uncheck "Display" but leave "Printer" fonts 
  4196.      checked.  Select the smallest "Courier" font available, "Normal" style. 
  4197.  
  4198.      Close the "Formatting panels with "Ok". 
  4199.  
  4200.      One last check before printing - insure that "Print File" on the "Print" 
  4201.      dialog panel is selected (instead of "Print Select"). 
  4202.  
  4203.      Press "Ok" on the "Print" dialog panel to print the analysis report. 
  4204.  
  4205.   6. Removal and Backup of Analysis Files. 
  4206.  
  4207.      To save the analysis files to floppy disk, select "Pack up Analysis Files" 
  4208.      from the "Analysis" menu in SMART  If you are running multiple analyses, 
  4209.      you may wish to perform this step after each analysis.  You will need a 
  4210.      floppy disk with blank sufficient space to perform this function.  You 
  4211.      will also need a copy of the compression utility "PKZIP2.EXE" from PKWARE 
  4212.      (not included with this application) in the same directory with SMART.EXE. 
  4213.  
  4214.      The captured data in these analysis files contains absolutely no other 
  4215.      information than appears in the analysis report.  The data is in text and 
  4216.      binary format and is used to rerun the analysis report if necessary with 
  4217.      different file combinations or analysis options.  The files copied to the 
  4218.      floppy disk are: A text format of the analysis report, a compress file 
  4219.      containing the analysis numerical summary data, and the text format of the 
  4220.      List-of-Files file used for the analysis. 
  4221.  
  4222.      After the analysis data is copied to the floppy disk, you can remove the 
  4223.      small summary analyses files by selecting the  Remove Temp Analysis Files" 
  4224.      from the "Analysis" menu.  Insure that the proper "List-of-Files" file is 
  4225.      used in this process.  If multiple analyses are performed, this process 
  4226.      must be performed for each List-of-Files used.  This process will delete 
  4227.      all "*.??^" files associated with the analysis. 
  4228.  
  4229.      The 'EFFORT' value calculated for the Analysis Reportis a relative number 
  4230.      related to the number of hours required to complete the migration.  The is 
  4231.      a subject number and varies depending upon the developers experience in 
  4232.      the migrating platforms, and the tools, techniques and methodologies uses 
  4233.      in the migration.  The One Up Corporation Porting Work Shops may greatly 
  4234.      reduce your porting effort through the techniques tought in these Work 
  4235.      Shop sessions.  It is suggested that you proceed through a complete 
  4236.      migration of the sample code provided in the installation of this product, 
  4237.      or other small sample of your source code to determine the relative 
  4238.      difference between the reported EFFORT from SMART and the hours required 
  4239.      in your actual process. 
  4240.  
  4241.      The EFFORT value from the SMART Analysis should be used as a guide only 
  4242.      and may not bear any correspondence to the actual time required in any 
  4243.      porting process.  The EFFORT value does not include any time required to 
  4244.      prepare your code for migration, nor the correction of any compilation 
  4245.      errors induced by the migration process, or time required in learning the 
  4246.      target or source platform programming internals. 
  4247.  
  4248.  CONTINUE TUTORIAL - Migration 
  4249.  
  4250.  BACK - General Introduction 
  4251.  
  4252.  See Also: 
  4253.  
  4254.   Analysis Display and Report Layout Description 
  4255.   Analysis Menu - Analysis Functions. 
  4256.   SMART On-Line Help 
  4257.   Tutorial 
  4258.  
  4259.  
  4260. ΓòÉΓòÉΓòÉ 5.3. Migration Procedure ΓòÉΓòÉΓòÉ
  4261.  
  4262. The migration process of SMART processes the specified source files and 
  4263. generates migrated files with code changes and in-line comments.  The 
  4264. List-of-Files file contains the fully qualified files to migrate (as in the 
  4265. Analysis Process). 
  4266.  
  4267. The migrated files will be placed in the same directory as the source files 
  4268. (with mapped extensions). 
  4269.  
  4270. The Migration Configuration dialog panel provides the user with the opportunity 
  4271. to select migration formats and options.  It is highly recommended that you 
  4272. test various output migration ofrmats with a small set of sample code in order 
  4273. to determine the best format for your intended purpose. 
  4274.  
  4275.   1. Perform Analysis Procedure First 
  4276.  
  4277.      Prior to executing the Migration procedure, you will want to perform the 
  4278.      Analysis Procedure on the source code to be migrated. Refer to Analysis 
  4279.      Procedure. 
  4280.  
  4281.   2. Create the "List-of-Files" files containing the files for the analysis. 
  4282.      Use the "Maintain List-of-Files" function under the "Files" main menu item 
  4283.      in SMART or the equivalent function in SourceLink under the "Link" main 
  4284.      menu.  The files in this list may span multiple directories and even 
  4285.      drives. 
  4286.  
  4287.      If you have created the List-of-Files in the Analysis procedure, you may 
  4288.      wish to modify the list for migrating a sub set of the original 
  4289.      List-of-Files. 
  4290.  
  4291.   3. Execute "Migrate Code" under the "Migration" Menu selection. Take care to 
  4292.      select the proper option on the setup panel for this function. 
  4293.  
  4294.      You will have a great latitude of options in the configuration of the 
  4295.      Migration process. 
  4296.  
  4297.      Refer to the Migration Configuration Dialog Panel for an explanation of 
  4298.      these options. 
  4299.  
  4300.      The typical default selections include: Create files using mapped 
  4301.      extensions, use of commented code (as opposed to 'ifdef' blocks). 
  4302.  
  4303.      If you are using SourceLink you will want to create a link database for 
  4304.      hyperlinking to migrated changes, otherwise uncheck this option.  If 
  4305.      building the SourceLink Database you may wish to set the DB options to 
  4306.      link on the migration keyword list. 
  4307.  
  4308.      You will probably like to use the files in the samples directory of the 
  4309.      SMART installation to try migrations with various options and see the 
  4310.      results. 
  4311.  
  4312.   4. Rerunning the Migration process with the same List-of-Files and the same 
  4313.      file extension mapping will overwrite the original migration files. 
  4314.      Recursive migration of the same files may give unpredictable results. 
  4315.  
  4316.   5. Note that the migration process creates a new List-of-Files file 
  4317.      containing the new migrated file names which you may wish to use for a 
  4318.      number of purposes, including the SourceLink Link Database build. 
  4319.  
  4320.   6. You can now proceed through the migrated files to complete the migration 
  4321.      according to the in-line comments that have been placed in the migrated 
  4322.      code.  Use of an editor with hyperlink source code access, like SourceLink 
  4323.      will be a valuable asset in quickly pulling up on-line help and accessing 
  4324.      all references to a migrated function, structure, etc. 
  4325.  
  4326.   7. After you have made all changes to the migrated code, you can use the 
  4327.      Remove Comments and Tagged Code to remove migration comment, examples and 
  4328.      other code that has been inserted in the source files to assist you in the 
  4329.      migration process. 
  4330.  
  4331.  BACK - Analysis 
  4332.  
  4333.  See Also: 
  4334.  
  4335.   Migration Menu - Migration Functions. 
  4336.   SMART On-Line Help 
  4337.   Tutorial 
  4338.  
  4339.  
  4340. ΓòÉΓòÉΓòÉ 6. Reference ΓòÉΓòÉΓòÉ
  4341.  
  4342. The Reference Section includes the following topics: 
  4343.  
  4344.     Migration Formats 
  4345.     SMART filenames 
  4346.     General Specification 
  4347.     Analysis Display and Report Layout Description 
  4348.     Accelerator Keys 
  4349.     Comment Tags 
  4350.  
  4351.  See Also: 
  4352.  
  4353.   SMART On-Line Help 
  4354.  
  4355.  
  4356. ΓòÉΓòÉΓòÉ 6.1. Migration Formats ΓòÉΓòÉΓòÉ
  4357.  
  4358. Migrated code formats are user configurable.  A number of options relating to 
  4359. the migrated code are available. 
  4360.  
  4361. The Format References include the following formats: 
  4362.  
  4363.     Original source code (before migration) 
  4364.     Format - 'ifdef' and '/*...*/' comments 
  4365.     Format - 'ifdef' and '//' comments 
  4366.     Format - NO 'ifdef' and '/*...*/' comments 
  4367.     Format - NO 'ifdef' and '//' comments 
  4368.     Format - '//' comments and NO Tags 
  4369.     Format - '//', Short comments and Prototypes 
  4370.     Format - '/*...*/', Long comments, Prototypes and Examples 
  4371.     Format - Source code with migration comments removed 
  4372.  
  4373.  See Also: 
  4374.  
  4375.   SMART On-Line Help 
  4376.   Reference 
  4377.  
  4378.  
  4379. ΓòÉΓòÉΓòÉ 6.1.1. Original source code (before migration) ΓòÉΓòÉΓòÉ
  4380.  
  4381. Original Source Code 
  4382.  
  4383.   /* Open the file with the OF_PARSE flag to obtain the fully qualified
  4384.    * pathname in the OFSTRUCT structure.
  4385.    */
  4386.   wFileTemp = OpenFile ((LPSTR)szFile, (LPOFSTRUCT)&of, OF_PARSE);
  4387.  
  4388.   _lclose (wFileTemp);
  4389.  
  4390.   LoadString (hInst, IDS_UNTITLED, sz, sizeof(sz));
  4391.  
  4392. See Also: 
  4393.  
  4394.   Migration Formats 
  4395.   SMART On-Line Help 
  4396.   Reference 
  4397.  
  4398.  
  4399. ΓòÉΓòÉΓòÉ 6.1.2. Format - 'ifdef' and '/*...*/' comments ΓòÉΓòÉΓòÉ
  4400.  
  4401. Format - 'ifdef' and '/*...*/' comments 
  4402.  
  4403. /* SM$:FO  C:\TEST\TEST.C - 03/28/94 14:25:07                */
  4404.   /* Open the file with the OF_PARSE flag to obtain the fully qualified
  4405.    * pathname in the OFSTRUCT structure.
  4406.    */
  4407. #ifndef OS221
  4408.   wFileTemp = OpenFile ((LPSTR)szFile, (LPOFSTRUCT)&of, OF_PARSE);/* SM$:O */
  4409. #else
  4410.   wFileTemp = OpenFile ((PSZ)szFile, (LPOFSTRUCT)&of, OF_PARSE);  /* SM$:M3 */
  4411.   DosOpen (,,,,,,,)                          /* SM$:M3 */
  4412.   DosQueryPathInfo (, FIL_QUERYFULLNAME,,);              /* SM$:M2 */
  4413.   /*                                   SM$:C
  4414.    * OpenFile Cat:030 Type:010 Area:130                  SM$:K
  4415.    * Replace with DosOpen, DosDelete, or DosQueryPathInfo         SM$:S
  4416.    *                                   SM$:C
  4417.    * LPSTR replaced with PSZ - Cat:010 Type:030 Area:990         SM$:1
  4418.    *                                   SM$:C
  4419.    * OF_PARSE Cat:020 Type:030 Area:130                  SM$:K
  4420.    * Use DosQueryPathInfo to replace OpenFile function call        SM$:S
  4421.    */                                 /* SM$:C */
  4422. #endif
  4423.  
  4424. #ifndef OS221
  4425.   _lclose (wFileTemp);                         /* SM$:O */
  4426. #else
  4427.   DosClose (wFileTemp);                        /* SM$:M1 */
  4428.   /*                                   SM$:C
  4429.    * _lclose replaced with DosClose - Cat:010 Type:010 Area:130      SM$:1
  4430.    */                                 /* SM$:C */
  4431. #endif
  4432.  
  4433. #ifndef OS221
  4434.   LoadString (hInst, IDS_UNTITLED, sz, sizeof(sz));           /* SM$:O */
  4435. #else
  4436.   LoadString (hInst, IDS_UNTITLED, sz, sizeof(sz));           /* SM$:R */
  4437.   WinLoadString (,,,,);                         /* SM$:M2 */
  4438.   /*                                    SM$:C
  4439.   * LoadString Cat:020 Type:010 Area:060                 SM$:K
  4440.   * Replace with WinLoadString                      SM$:S
  4441.   */                                  /* SM$:C */
  4442. #endif
  4443.  
  4444. See Also: 
  4445.  
  4446.   Original source code (before migration) 
  4447.   Migration Formats 
  4448.   SMART On-Line Help 
  4449.   Reference 
  4450.  
  4451.  
  4452. ΓòÉΓòÉΓòÉ 6.1.3. Format - 'ifdef' and '//' comments ΓòÉΓòÉΓòÉ
  4453.  
  4454. Format - 'ifdef' and '//' comments 
  4455.  
  4456. // SM$:FO  C:\TEST\TEST.C - 03/28/94 14:30:22
  4457.   /* Open the file with the OF_PARSE flag to obtain the fully qualified
  4458.    * pathname in the OFSTRUCT structure.
  4459.    */
  4460. #ifndef OS221
  4461.   wFileTemp = OpenFile ((LPSTR)szFile, (LPOFSTRUCT)&of, OF_PARSE);// SM$:O
  4462. #else
  4463.   wFileTemp = OpenFile ((PSZ)szFile, (LPOFSTRUCT)&of, OF_PARSE);  // SM$:M3
  4464.   DosOpen (,,,,,,,)                          // SM$:M3
  4465.   DosQueryPathInfo (, FIL_QUERYFULLNAME,,);              // SM$:M2
  4466.   // OpenFile Cat:030 Type:010 Area:130                  SM$:K
  4467.   // Replace with DosOpen, DosDelete, or DosQueryPathInfo         SM$:S
  4468.   //                                   SM$:C
  4469.   // LPSTR replaced with PSZ - Cat:010 Type:030 Area:990         SM$:1
  4470.   //                                   SM$:C
  4471.   // OF_PARSE Cat:020 Type:030 Area:130                  SM$:K
  4472.   // Use DosQueryPathInfo to replace OpenFile function call        SM$:S
  4473. #endif
  4474.  
  4475. #ifndef OS221
  4476.   _lclose (wFileTemp);                         // SM$:O
  4477. #else
  4478.   DosClose (wFileTemp);                        // SM$:M1
  4479.   // _lclose replaced with DosClose - Cat:010 Type:010 Area:130      SM$:1
  4480. #endif
  4481.  
  4482. #ifndef OS221
  4483.   LoadString (hInst, IDS_UNTITLED, sz, sizeof(sz));           // SM$:O
  4484. #else
  4485.   LoadString (hInst, IDS_UNTITLED, sz, sizeof(sz));           // SM$:R
  4486.   WinLoadString (,,,,);                         // SM$:M2
  4487.   // LoadString Cat:020 Type:010 Area:060                 SM$:K
  4488.   // Replace with WinLoadString                      SM$:S
  4489. #endif
  4490.  
  4491. See Also: 
  4492.  
  4493.   Original source code (before migration) 
  4494.   Migration Formats 
  4495.   SMART On-Line Help 
  4496.   Reference 
  4497.  
  4498.  
  4499. ΓòÉΓòÉΓòÉ 6.1.4. Format - NO 'ifdef' and '/*...*/' comments ΓòÉΓòÉΓòÉ
  4500.  
  4501. Format - NO 'ifdef' and '/*...*/' comments 
  4502.  
  4503. /* SM$:FO  C:\TEST\TEST.C - 03/28/94 14:32:18                */
  4504.   /* Open the file with the OF_PARSE flag to obtain the fully qualified
  4505.    * pathname in the OFSTRUCT structure.
  4506.    */
  4507.   /* wFileTemp = OpenFile ((LPSTR)szFile, (LPOFSTRUCT)&of, OF_PARSE); SM$:O */
  4508.   wFileTemp = OpenFile ((PSZ)szFile, (LPOFSTRUCT)&of, OF_PARSE);  /* SM$:M3 */
  4509.   DosOpen (,,,,,,,)                          /* SM$:M3 */
  4510.   DosQueryPathInfo (, FIL_QUERYFULLNAME,,);              /* SM$:M2 */
  4511.   /*                                   SM$:C
  4512.    * OpenFile Cat:030 Type:010 Area:130                  SM$:K
  4513.    * Replace with DosOpen, DosDelete, or DosQueryPathInfo         SM$:S
  4514.    *                                   SM$:C
  4515.    * LPSTR replaced with PSZ - Cat:010 Type:030 Area:990         SM$:1
  4516.    *                                   SM$:C
  4517.    * OF_PARSE Cat:020 Type:030 Area:130                  SM$:K
  4518.    * Use DosQueryPathInfo to replace OpenFile function call        SM$:S
  4519.    */                                 /* SM$:C */
  4520.  
  4521.   /* _lclose (wFileTemp);                         SM$:O */
  4522.   DosClose (wFileTemp);                        /* SM$:M1 */
  4523.   /*                                   SM$:C
  4524.    * _lclose replaced with DosClose - Cat:010 Type:010 Area:130      SM$:1
  4525.    */                                 /* SM$:C */
  4526.  
  4527.   /* LoadString (hInst, IDS_UNTITLED, sz, sizeof(sz));           SM$:O */
  4528.   LoadString (hInst, IDS_UNTITLED, sz, sizeof(sz));           /* SM$:R */
  4529.   WinLoadString (,,,,);                         /* SM$:M2 */
  4530.   /*                                    SM$:C
  4531.   * LoadString Cat:020 Type:010 Area:060                 SM$:K
  4532.   * Replace with WinLoadString                      SM$:S
  4533.   */                                  /* SM$:C */
  4534.  
  4535. See Also: 
  4536.  
  4537.   Original source code (before migration) 
  4538.   Migration Formats 
  4539.   SMART On-Line Help 
  4540.   Reference 
  4541.  
  4542.  
  4543. ΓòÉΓòÉΓòÉ 6.1.5. Format - NO 'ifdef' and '//' comments ΓòÉΓòÉΓòÉ
  4544.  
  4545. Format - NO 'ifdef' and '//' comments 
  4546.  
  4547. // SM$:FO  C:\TEST\TEST.C - 03/28/94 14:33:45
  4548.   /* Open the file with the OF_PARSE flag to obtain the fully qualified
  4549.    * pathname in the OFSTRUCT structure.
  4550.    */
  4551.   // wFileTemp = OpenFile ((LPSTR)szFile, (LPOFSTRUCT)&of, OF_PARSE);SM$:O
  4552.   wFileTemp = OpenFile ((PSZ)szFile, (LPOFSTRUCT)&of, OF_PARSE);  // SM$:M3
  4553.   DosOpen (,,,,,,,)                          // SM$:M3
  4554.   DosQueryPathInfo (, FIL_QUERYFULLNAME,,);              // SM$:M2
  4555.   // OpenFile Cat:030 Type:010 Area:130                  SM$:K
  4556.   // Replace with DosOpen, DosDelete, or DosQueryPathInfo         SM$:S
  4557.   //                                   SM$:C
  4558.   // LPSTR replaced with PSZ - Cat:010 Type:030 Area:990         SM$:1
  4559.   //                                   SM$:C
  4560.   // OF_PARSE Cat:020 Type:030 Area:130                  SM$:K
  4561.   // Use DosQueryPathInfo to replace OpenFile function call        SM$:S
  4562.  
  4563.   // _lclose (wFileTemp);                         SM$:O
  4564.   DosClose (wFileTemp);                        // SM$:M1
  4565.   // _lclose replaced with DosClose - Cat:010 Type:010 Area:130      SM$:1
  4566.  
  4567.   // LoadString (hInst, IDS_UNTITLED, sz, sizeof(sz));           SM$:O
  4568.   LoadString (hInst, IDS_UNTITLED, sz, sizeof(sz));           // SM$:R
  4569.   WinLoadString (,,,,);                         // SM$:M2
  4570.   // LoadString Cat:020 Type:010 Area:060                 SM$:K
  4571.   // Replace with WinLoadString                      SM$:S
  4572.  
  4573. See Also: 
  4574.  
  4575.   Original source code (before migration) 
  4576.   Migration Formats 
  4577.   SMART On-Line Help 
  4578.   Reference 
  4579.  
  4580.  
  4581. ΓòÉΓòÉΓòÉ 6.1.6. Format - '//' comments and NO Tags ΓòÉΓòÉΓòÉ
  4582.  
  4583. Format - '//' comments and NO Tags 
  4584.  
  4585. Note:   Option chosen to insert Short comment and Prototype only. Elimination 
  4586. of tags on commented lines prevents automatic removal of inserted code! 
  4587.  
  4588. // SM$:FO  C:\TEST\TEST.C - 03/28/94 14:34:59
  4589.   /* Open the file with the OF_PARSE flag to obtain the fully qualified
  4590.    * pathname in the OFSTRUCT structure.
  4591.    */
  4592.   // wFileTemp = OpenFile ((LPSTR)szFile, (LPOFSTRUCT)&of, OF_PARSE);
  4593.   wFileTemp = OpenFile ((PSZ)szFile, (LPOFSTRUCT)&of, OF_PARSE);
  4594.   DosOpen (,,,,,,,)
  4595.   DosQueryPathInfo (, FIL_QUERYFULLNAME,,);
  4596.   // OpenFile Cat:030 Type:010 Area:130
  4597.   // Replace with DosOpen, DosDelete, or DosQueryPathInfo
  4598.   //
  4599.   // LPSTR replaced with PSZ - Cat:010 Type:030 Area:990
  4600.   //
  4601.   // OF_PARSE Cat:020 Type:030 Area:130
  4602.   // Use DosQueryPathInfo to replace OpenFile function call
  4603.  
  4604.   // _lclose (wFileTemp);
  4605.   DosClose (wFileTemp);
  4606.   // _lclose replaced with DosClose - Cat:010 Type:010 Area:130
  4607.  
  4608.   // LoadString (hInst, IDS_UNTITLED, sz, sizeof(sz));
  4609.   LoadString (hInst, IDS_UNTITLED, sz, sizeof(sz));
  4610.   WinLoadString (,,,,);
  4611.   // LoadString Cat:020 Type:010 Area:060
  4612.   // Replace with WinLoadString
  4613.  
  4614. See Also: 
  4615.  
  4616.   Original source code (before migration) 
  4617.   Migration Formats 
  4618.   SMART On-Line Help 
  4619.   Reference 
  4620.  
  4621.  
  4622. ΓòÉΓòÉΓòÉ 6.1.7. Format - '//', Short comments and Prototypes ΓòÉΓòÉΓòÉ
  4623.  
  4624. Format - '//', Short comments and Prototypes 
  4625.  
  4626. // SM$:FO  C:\TEST\TEST.C - 03/28/94 14:37:08
  4627.   /* Open the file with the OF_PARSE flag to obtain the fully qualified
  4628.    * pathname in the OFSTRUCT structure.
  4629.    */
  4630.   // wFileTemp = OpenFile ((LPSTR)szFile, (LPOFSTRUCT)&of, OF_PARSE);SM$:O
  4631.   wFileTemp = OpenFile ((PSZ)szFile, (LPOFSTRUCT)&of, OF_PARSE);  // SM$:M3
  4632.   DosOpen (,,,,,,,)                          // SM$:M3
  4633.   DosQueryPathInfo (, FIL_QUERYFULLNAME,,);              // SM$:M2
  4634.   // OpenFile Cat:030 Type:010 Area:130                  SM$:K
  4635.   // Replace with DosOpen, DosDelete, or DosQueryPathInfo         SM$:S
  4636.   //                                   SM$:C
  4637.   // APIRET APIENTRY DosOpen(PSZ pszFileName, PHFILE pHf,         SM$:P
  4638.   //  PULONG pulAction, ULONG  cbFile, ULONG  ulAttribute,        SM$:P
  4639.   //  ULONG  fsOpenFlags, ULONG  fsOpenMode, PEAOP2 peaop2);       SM$:P
  4640.   // APIRET APIENTRY DosQueryPathInfo(PSZ pszPathName,          SM$:P
  4641.   //  ULONG ulInfoLevel, PVOID pInfoBuf, ULONG cbInfoBuf);        SM$:P
  4642.   // APIRET APIENTRY DosSearchPath(ULONG flag, PSZ pszPathOrName,     SM$:P
  4643.   //  PSZ pszFilename, PBYTE pBuf, ULONG cbBuf);             SM$:P
  4644.   // APIRET APIENTRY DosDelete(PSZ pszFile);               SM$:P
  4645.   //                                   SM$:C
  4646.   // LPSTR replaced with PSZ - Cat:010 Type:030 Area:990         SM$:1
  4647.   //                                   SM$:C
  4648.   // OF_PARSE Cat:020 Type:030 Area:130                  SM$:K
  4649.   // Use DosQueryPathInfo to replace OpenFile function call        SM$:S
  4650.   //                                   SM$:C
  4651.   // APIRET APIENTRY DosQueryPathInfo(PSZ pszPathName,          SM$:P
  4652.   //  ULONG ulInfoLevel, PVOID pInfoBuf, ULONG cbInfoBuf);        SM$:P
  4653.  
  4654.   // _lclose (wFileTemp);                         SM$:O
  4655.   DosClose (wFileTemp);                        // SM$:M1
  4656.   // _lclose replaced with DosClose - Cat:010 Type:010 Area:130      SM$:1
  4657.  
  4658.   // LoadString (hInst, IDS_UNTITLED, sz, sizeof(sz));           SM$:O
  4659.   LoadString (hInst, IDS_UNTITLED, sz, sizeof(sz));           // SM$:R
  4660.   WinLoadString (,,,,);                         // SM$:M2
  4661.   // LoadString Cat:020 Type:010 Area:060                 SM$:K
  4662.   // Replace with WinLoadString                      SM$:S
  4663.   //                                    SM$:C
  4664.   // LONG APIENTRY WinLoadString (HAB hab, HMODULE hModResource,      SM$:P
  4665.   //  ULONG idString, LONG lBufferMax, PSZ pszBuffer);          SM$:P
  4666.  
  4667. See Also: 
  4668.  
  4669.   Original source code (before migration) 
  4670.   Migration Formats 
  4671.   SMART On-Line Help 
  4672.   Reference 
  4673.  
  4674.  
  4675. ΓòÉΓòÉΓòÉ 6.1.8. Format - '/*...*/', Long comments, Prototypes and Examples ΓòÉΓòÉΓòÉ
  4676.  
  4677. Format - '/*...*/', Long comments, Prototypes and Examples 
  4678.  
  4679. // SM$:FO  C:\TEST\TEST.C - 03/28/94 14:38:42
  4680.   /* Open the file with the OF_PARSE flag to obtain the fully qualified
  4681.    * pathname in the OFSTRUCT structure.
  4682.    */
  4683.   // wFileTemp = OpenFile ((LPSTR)szFile, (LPOFSTRUCT)&of, OF_PARSE);SM$:O
  4684.   wFileTemp = OpenFile ((PSZ)szFile, (LPOFSTRUCT)&of, OF_PARSE);  // SM$:M3
  4685.   DosOpen (,,,,,,,)                          // SM$:M3
  4686.   DosQueryPathInfo (, FIL_QUERYFULLNAME,,);              // SM$:M2
  4687.   // OpenFile Cat:030 Type:010 Area:130                  SM$:K
  4688.   // Replace with DosOpen to open a file.  Use DosQueryPathInfo      SM$:L
  4689.   // specifying FIL_QUERYFULLNAME to parse the file name.  Use      SM$:L
  4690.   // DosSearchPath to query the fully qualified path name of a      SM$:L
  4691.   // file.  Use DosDelete to delete a file.                SM$:L
  4692.   //                                   SM$:C
  4693.   // APIRET APIENTRY DosOpen(PSZ pszFileName, PHFILE pHf,         SM$:P
  4694.   //  PULONG pulAction, ULONG  cbFile, ULONG  ulAttribute,        SM$:P
  4695.   //  ULONG  fsOpenFlags, ULONG  fsOpenMode, PEAOP2 peaop2);       SM$:P
  4696.   // APIRET APIENTRY DosQueryPathInfo(PSZ pszPathName,          SM$:P
  4697.   //  ULONG ulInfoLevel, PVOID pInfoBuf, ULONG cbInfoBuf);        SM$:P
  4698.   // APIRET APIENTRY DosSearchPath(ULONG flag, PSZ pszPathOrName,     SM$:P
  4699.   //  PSZ pszFilename, PBYTE pBuf, ULONG cbBuf);             SM$:P
  4700.   // APIRET APIENTRY DosDelete(PSZ pszFile);               SM$:P
  4701.   //                                   SM$:C
  4702.   // Windows:                               SM$:X
  4703.   //  OFSTRUCT OFStruct;                         SM$:X
  4704.   //  HFILE hFile = OpenFile ("TEST.DAT", &OFStruct,           SM$:X
  4705.   //          OF_CREATE);                    SM$:X
  4706.   // OS/2:                                SM$:X
  4707.   //  HFILE hFile;                            SM$:X
  4708.   //  ULONG ulAction;                          SM$:X
  4709.   //  DosOpen ("TEST.DAT", &hFile, &ulAction, FILE_NORMAL,        SM$:X
  4710.   //   OPEN_ACTION_CREATE_IF_NEW |                   SM$:X
  4711.   //   OPEN_ACTION_REPLACE_IF_EXISTS, OPEN_ACCESS_READWRITE |      SM$:X
  4712.   //   OPEN_SHARE_DENYNONE, NULL);                   SM$:X
  4713.   //                                   SM$:C
  4714.   // LPSTR replaced with PSZ - Cat:010 Type:030 Area:990         SM$:1
  4715.   //                                   SM$:C
  4716.   // OF_PARSE Cat:020 Type:030 Area:130                  SM$:K
  4717.   // Use DosQueryPathInfo specifying FIL_QUERYFULLNAME to         SM$:L
  4718.   // query the full path of a file.  This replaces the OpenFile      SM$:L
  4719.   // function call.                            SM$:L
  4720.   //                                   SM$:C
  4721.   // APIRET APIENTRY DosQueryPathInfo(PSZ pszPathName,          SM$:P
  4722.   //  ULONG ulInfoLevel, PVOID pInfoBuf, ULONG cbInfoBuf);        SM$:P
  4723.  
  4724.   // _lclose (wFileTemp);                         SM$:O
  4725.   DosClose (wFileTemp);                        // SM$:M1
  4726.   // _lclose replaced with DosClose - Cat:010 Type:010 Area:130      SM$:1
  4727.  
  4728.   // LoadString (hInst, IDS_UNTITLED, sz, sizeof(sz));           SM$:O
  4729.   LoadString (hInst, IDS_UNTITLED, sz, sizeof(sz));           // SM$:R
  4730.   WinLoadString (,,,,);                         // SM$:M2
  4731.   // LoadString Cat:020 Type:010 Area:060                 SM$:K
  4732.   // Replace with WinLoadString                      SM$:L
  4733.   //                                    SM$:C
  4734.   // LONG APIENTRY WinLoadString (HAB hab, HMODULE hModResource,      SM$:P
  4735.   //  ULONG idString, LONG lBufferMax, PSZ pszBuffer);          SM$:P
  4736.   //                                    SM$:C
  4737.   // Windows:                               SM$:X
  4738.   //  int iLen = LoadString (hInst, 1, szBuf, sizeof(szBuf));       SM$:X
  4739.   // OS/2:                                 SM$:X
  4740.   //  LONG lLen = WinLoadString (hAB, hMod, 1, sizeof(szBuf),       SM$:X
  4741.   //          szBuf);                       SM$:X
  4742.  
  4743. See Also: 
  4744.  
  4745.   Original source code (before migration) 
  4746.   Migration Formats 
  4747.   SMART On-Line Help 
  4748.   Reference 
  4749.  
  4750.  
  4751. ΓòÉΓòÉΓòÉ 6.1.9. Format - Source code with migration comments removed ΓòÉΓòÉΓòÉ
  4752.  
  4753. Format - Source code with migration comments removed 
  4754.  
  4755.   /* Open the file with the OF_PARSE flag to obtain the fully qualified
  4756.    * pathname in the OFSTRUCT structure.
  4757.    */
  4758.   wFileTemp = OpenFile ((PSZ)szFile, (LPOFSTRUCT)&of, OF_PARSE);  // SM$:M3
  4759.   DosOpen (,,,,,,,)                          // SM$:M3
  4760.   DosQueryPathInfo (, FIL_QUERYFULLNAME,,);              // SM$:M2
  4761.   DosClose (wFileTemp);                        // SM$:M1
  4762.   WinLoadString (,,,,);                        // SM$:M2
  4763.  
  4764. See Also: 
  4765.  
  4766.   Original source code (before migration) 
  4767.   Migration Formats 
  4768.   SMART On-Line Help 
  4769.   Reference 
  4770.  
  4771.  
  4772. ΓòÉΓòÉΓòÉ 6.2. Filenames ΓòÉΓòÉΓòÉ
  4773.  
  4774. The SMART generates a number of files related to Analysis and Migration. Also, 
  4775. a set of files may be created as a result of SourceLink creating a hyperlink 
  4776. database for the source files processed by SMART 
  4777.  
  4778. These files are listed below: 
  4779.  
  4780.    SMART Dictionary and Migration Database files (one set per directory) 
  4781.     XXXXXXXX.TBL - Dictionary 
  4782.     SMART1DB.D1 - Database 
  4783.     SMART1DB.D2 - Database 
  4784.     SMART1DB.D3 - Database 
  4785.     SMART1DB.D4 - Database 
  4786.     SMART1DB.K1 - Database 
  4787.  
  4788.    Analysis and Migration files (in List-of-Files Directory) 
  4789.     XXXXXXXX.LST - List-of-Files 
  4790.     (List-of-Files).RPT - Analysis report 
  4791.     (List-of-Files).LOG - Logfile from SourceLink (SLBUILD) 
  4792.     (List-of-Files).RSP - Response File for SourceLink (SLBUILD) 
  4793.     (List-of-Files).LNK - Analysis Keyword List 
  4794.     (List-of-FileX).LOG - Logfile from SourceLink (SLBUILD) (Migrated files) 
  4795.     (List-of-FileX).RSP - Response File for SourceLink (SLBUILD) (Migrated 
  4796.  files) 
  4797.     (List-of-FileX).LNK - Migration Keyword List 
  4798.  
  4799.    Analysis and Migration Files (in directories with original source files) 
  4800.     XXXXXXXXX.X_X - Migrated Source file with mapped extension 
  4801.     (source file)_^ - Binary analysis data file (one for each source file) 
  4802.  
  4803.    SourceLink Database Link files and report displays (from DB Build) 
  4804.    (in directory with List-of-Files) 
  4805.     SLINK2DB.D1 - SourceLink Link Database file 
  4806.     SLINK2DB.D2 - SourceLink Link Database file 
  4807.     SLINK2DB.K1 - SourceLink Link Database file 
  4808.     SLINK2DB.K2 - SourceLink Link Database file 
  4809.     SLINK2DB.K3 - SourceLink Link Database file 
  4810.     SL_CALL.RPT - SourceLink Call Tree display report 
  4811.     SL_DLGBOX.RPT - SourceLink Dialog Template display report 
  4812.     SL_FUNCT.RPT - SourceLink Functions List display report 
  4813.     SL_GLOB.RPT - SourceLink Globals display report 
  4814.     SL_MODS.RPT - SourceLink Files display report 
  4815.     SL_UNREF.RPT - SourceLink Unreferenced Functions display report 
  4816.     SL_USER.RPT - SourceLink User Links display report 
  4817.     (contains keywords found in Migration or Analysis from SMART processes) 
  4818.  
  4819.  See Also: 
  4820.  
  4821.   SMART On-Line Help 
  4822.   Reference 
  4823.  
  4824.  
  4825. ΓòÉΓòÉΓòÉ 6.3. Comment Tags ΓòÉΓòÉΓòÉ
  4826.  
  4827. The SMART generated migration code contains comment tags for identification and 
  4828. removal. 
  4829.  
  4830. These tags are listed below: 
  4831.  
  4832.     SM$:I  - Informational 
  4833.     SM$:K  - Keyword Classification 
  4834.     SM$:P  - Keyword Prototype 
  4835.     SM$:S  - Short Comment 
  4836.     SM$:L  - Long Comment 
  4837.     SM$:X  - Keyword Sample Code 
  4838.     SM$:O  - Original Source Code 
  4839.     SM$:R  - Restated Original Source 
  4840.     SM$:Mn - Migrated code (n = highest category) 
  4841.     SM$:C  - General comment line 
  4842.     SM$:0  - Category 000 comment 
  4843.     SM$:1  - Category 010 comment 
  4844.     SM$:9  - Category 999 comment 
  4845.  
  4846.  See Also: 
  4847.  
  4848.   SMART On-Line Help 
  4849.   Reference 
  4850.   Remove Comment Code Panel 
  4851.  
  4852.  
  4853. ΓòÉΓòÉΓòÉ 6.4. General Specification ΓòÉΓòÉΓòÉ
  4854.  
  4855. SMART is designed to assist in the analysis and migration of native source code 
  4856. from one platform to another or one version of an operating environment to 
  4857. another on the same platform. 
  4858.  
  4859. The platform dependent data is contained in the migration dictionary (table) 
  4860. and the migration database files. 
  4861.  
  4862. This process is based on finding keywords (API calls, symbols, parameters, 
  4863. typedefs, etc) that differ in the migration.  These keyword differences are 
  4864. categorized into group to represent the difficult in migration, ranging from a 
  4865. simple literal replacement to the case where the functionality does not exist 
  4866. in the target platform. 
  4867.  
  4868. SMART will analyze source code and prepare a report (display) providing a 
  4869. detailed evaluation of the migration requirement. 
  4870.  
  4871. Furthermore, in the migration process, SMART will process the user specified 
  4872. source files and create migrated source files.  The migrated source file will 
  4873. contain automatic migration changes (where possible) and in all cases will 
  4874. provide in-line commented code for the user to complete the migration. 
  4875.  
  4876. The following general specifications define this product. 
  4877.  
  4878.    Source Code 
  4879.  
  4880.     "C" and C++ program source and header files. NOTE: Calls to objects and 
  4881.    libraries that are not part of the basic platform are not covered. 
  4882.  
  4883.     Resource Files are translated by The SMART Resource Translator (not 
  4884.    included). 
  4885.  
  4886.    Number of Files 
  4887.  
  4888.     List of files must be capable of display in a list box. 
  4889.  
  4890.    File Size 
  4891.  
  4892.     Virtually unlimited. 
  4893.  
  4894.    Cataloged Migration Points of Difference 
  4895.  
  4896.     Win16->OS/2 32- approximately 4700 keyword differences. 
  4897.  
  4898.     Win32->OS/2 32- approximately 14,000 keyword differences. 
  4899.  
  4900.     OS/2 16->32 Bit - approximately 800 keyword differences. 
  4901.  
  4902.    Migration with Macro redefinitions 
  4903.  
  4904.     Some difficulty may be encountered depending upon the hiding and 
  4905.    redefinition of coding by use of macro redefinitions. 
  4906.  
  4907.     Maximum path and file length    255 
  4908.  
  4909.     Maximum directory levels   10 
  4910.  
  4911.     Maximum ifdef name length    40 
  4912.  
  4913.     Maximum "List-of-Files" data    64K (unless created by an editor) 
  4914.  
  4915.     Maximum lines of code in any one file  32767 
  4916.  
  4917.     Maximum code line length   512 
  4918.  
  4919.     Supported preprocessor statements: #if, #ifdef, # if defined, #else, 
  4920.    #elif, #endif 
  4921.  
  4922.    Analysis and Migration- syntax not supported: 
  4923.  
  4924.     Keywords within quotation marks 
  4925.     Keywords within macro define statements 
  4926.     Fields of a structure are not identified for migration 
  4927.     Context of a parameter within a call 
  4928.  
  4929.    Resource Translator (Windows Only) restrictions: 
  4930.  
  4931.     Macros cannot be used for any of the reserved resource 
  4932.       definition keywords. 
  4933.     Preprocessor conditional statements must begin and end 
  4934.       within a single file. 
  4935.     Preprocessor conditional statements within a DIALOG 
  4936.       resource definition template are properly evaluated but 
  4937.       are not output to the converted resource file. 
  4938.     #include and rcinclude statements are not recognized within 
  4939.       any multiline resource statements. 
  4940.     #define statements are not recognized within any multiline 
  4941.       resource statements. 
  4942.     Macro definitions which contain parameter substitutions are 
  4943.       currently  not processed. 
  4944.     Converted files replace any existing files with the same name. 
  4945.     When converting dialog units as outlined in the Dialog 
  4946.       Conversion  section the conversion is relative to the 
  4947.       system font for the current display resolution. 
  4948.  
  4949.  See Also: 
  4950.  
  4951.   SMART On-Line Help 
  4952.   Reference 
  4953.  
  4954.  
  4955. ΓòÉΓòÉΓòÉ 6.5. Layout Description for Analysis Display and Report ΓòÉΓòÉΓòÉ
  4956.  
  4957. The SMART Analysis process creates a detailed report evaluating the effort for 
  4958. migrating the source code.  This report is in two parts - a detailed section 
  4959. covering each source file, and a recap of the analysis by categories related to 
  4960. the difficulty of the migration, the type of keyword affected and a list of 
  4961. each category of keywords. 
  4962.  
  4963. The following documentation explains the column headings in this analysis 
  4964. display and report. 
  4965.  
  4966. File Detail 
  4967.  
  4968.     PATH/FILENAME 
  4969.  
  4970.       If a new path is encountered in the List-of-Files in the Analysis, this 
  4971.       path will be displayed in this column. 
  4972.  
  4973.     SIZE 
  4974.  
  4975.       The size of the source file in bytes. 
  4976.  
  4977.     LINES 
  4978.  
  4979.       The total number of lines of text in the source file - including lines 
  4980.       skipped and comments. 
  4981.  
  4982.     CODE 
  4983.  
  4984.       The number of lines of text in the source file excluding blank lines and 
  4985.       comments. 
  4986.  
  4987.     HITS 
  4988.  
  4989.       The number of keyword occurences that will require migration change. 
  4990.  
  4991.     PCT HITS 
  4992.  
  4993.       The percentage of Hits from the previous column to the number of Code 
  4994.       lines. 
  4995.  
  4996.     INSTS 
  4997.  
  4998.       The number of different keywords encountered in the hits. 
  4999.  
  5000.     PCT INSTS 
  5001.  
  5002.       The percentage of instances from the previous column to the number of 
  5003.       code lines. 
  5004.  
  5005.     EFFORT 
  5006.  
  5007.       A relative number indicating the effort to migrate the hits encountered 
  5008.       in the source file.  This effort value takes in consideration the 
  5009.       Category of the hits the number of hits and the number of different 
  5010.       keyword instances.  The higher the effort value, the more time is 
  5011.       estimated to migrate the code. 
  5012.  
  5013.     CAT xxx 
  5014.  
  5015.       The number of Hits in each category.  The categories are defined in an 
  5016.       increasing level of difficulty as defined in the Recap section of the 
  5017.       analysis. 
  5018.  
  5019.  Recap 
  5020.  
  5021.     ITEMS 
  5022.  
  5023.       A descriptive name for the recap item displayed. 
  5024.  
  5025.     HITS 
  5026.  
  5027.       The number of keyword occurences that will require migration change. 
  5028.  
  5029.     PCT HITS 
  5030.  
  5031.       The percentage of Hits from the previous column to the total number of 
  5032.       Hits. 
  5033.  
  5034.     INSTS 
  5035.  
  5036.       The number of different keywords encountered in the hits. 
  5037.  
  5038.     PCT INSTS 
  5039.  
  5040.       The percentage of instances from the previous column to the total number 
  5041.       of instances encountered. 
  5042.  
  5043.     EFFORT 
  5044.  
  5045.       A relative number indicating the effort to migrate the recap item 
  5046.       displayed.  This effort value takes in consideration the Category of the 
  5047.       hits the number of hits and the number of different keyword instances. 
  5048.       The higher the effort value, the more time is estimated to migrate the 
  5049.       code.  This number is highly subjective and may not accurately apply to 
  5050.       your specific set of source code.  Use this number as a guide only until 
  5051.       you have related this number to a factor relating to the number of 
  5052.       developer hours required to complete the migration process. 
  5053.  
  5054.  See Also: 
  5055.  
  5056.   SMART On-Line Help 
  5057.   Reference 
  5058.  
  5059.  
  5060. ΓòÉΓòÉΓòÉ 6.6. SMART Accelerator Keys ΓòÉΓòÉΓòÉ
  5061.  
  5062.  The Following Accelerator keys can be used with SMART 
  5063.  
  5064.  Display Selection: 
  5065.     F5 = Toggle Detail or Recap. 
  5066.  
  5067.  Functions and Processes: 
  5068.     Alt+O = Open/View Files. 
  5069.     Alt+L = Maintain List-of-Files. 
  5070.     Alt+V = Maintain Preprocessor Variables. 
  5071.     Alt+S = Set Current List-of-Files. 
  5072.     Alt+P = Print Analysis Report. 
  5073.     Alt+F4 = Exit SMART. 
  5074.     Alt+A = Analysis Process. 
  5075.     Alt+M = Migration Process. 
  5076.     Alt+T = Trace MiCL. 
  5077.     Alt+R = Translate Resources. 
  5078.     Alt+C = Convert Graphical Resources. 
  5079.  
  5080.  
  5081. ΓòÉΓòÉΓòÉ 7. Utility Processes ΓòÉΓòÉΓòÉ
  5082.  
  5083. The Utility Processes Section includes the following topics: 
  5084.  
  5085.     Resource Translator 
  5086.     Win Help Translator 
  5087.     Graphical Resource Converter 
  5088.     SMART Viewer 
  5089.  
  5090.  See Also: 
  5091.  
  5092.   SMART On-Line Help 
  5093.  
  5094.  
  5095. ΓòÉΓòÉΓòÉ 7.1. Resource Translator Topics ΓòÉΓòÉΓòÉ
  5096.  
  5097. The Resource Translator Section includes the following topics: 
  5098.  
  5099.     Resource Translator Introduction 
  5100.     Resource Translator Options 
  5101.     Resource Translator Output 
  5102.     Resource Translator Messages 
  5103.     Resource Translator Dialog Panel 
  5104.  
  5105.  See Also: 
  5106.  
  5107.   SMART On-Line Help 
  5108.   Utility Processes 
  5109.  
  5110.  
  5111. ΓòÉΓòÉΓòÉ 7.1.1. Resource Translator Introduction ΓòÉΓòÉΓòÉ
  5112.  
  5113. (It is necessary to use this utility only when migrating from Windows to OS/2. 
  5114. Resource files do not require translating when migrating from one version of 
  5115. OS/2 to another.) 
  5116.  
  5117. The SMART Windows to OS/2 Resource Conversion utility (SMARTRC.EXE) provides 
  5118. source-to-source conversion of Windows resource definition files to OS/2 
  5119. resource definition files.  Support is provided for converting the following 
  5120. resource definition statements: 
  5121.  
  5122.  - ACCELERATORS 
  5123.  - ICON 
  5124.  - BITMAP 
  5125.  - LISTBOX 
  5126.  - CAPTION 
  5127.  - LTEXT 
  5128.  - CHECKBOX 
  5129.  - MENU 
  5130.  - CLASS 
  5131.  - MENUITEM 
  5132.  - COMBOBOX 
  5133.  - POPUP 
  5134.  - CONTROL 
  5135.  - PUSHBUTTON 
  5136.  - CTEXT 
  5137.  - RADIOBUTTON 
  5138.  - CURSOR 
  5139.  - RCDATA 
  5140.  - DEFPUSHBUTTON 
  5141.  - RTEXT 
  5142.  - DIALOG 
  5143.  - SCROLLBAR 
  5144.  - EDITTEXT 
  5145.  - SEPARATOR 
  5146.  - FONT 
  5147.  - STRINGTABLE 
  5148.  - GROUPBOX 
  5149.  - STYLE 
  5150.  
  5151.  SMARTRC also recognizes and processes the following preprocessor directives: 
  5152.  
  5153.  - #define 
  5154.  - #ifdef 
  5155.  - #elif 
  5156.  - #ifndef 
  5157.  - #else 
  5158.  - #include 
  5159.  - #endif 
  5160.  - #undef 
  5161.  - #if 
  5162.  - rcinclude 
  5163.  
  5164.  Additional functionality includes: 
  5165.  
  5166.    Automatic reformatting of all Windows resource definition statements to the 
  5167.  equivalent OS/2 format. 
  5168.    Automatic generation of alternate accelerator key sequences. 
  5169.    Automatic reformatting of strings contained in RCDATA to produce equivalent 
  5170.  binary representation in the RES file. 
  5171.    Automatic conversion of mnemonic characters 
  5172.    Automatic scaling and recalculation of OS/2 dialog units from Windows 
  5173.  dialog units 
  5174.    Automatic remapping of Windows dialog control styles to OS/2 dialog control 
  5175.  styles. 
  5176.    Automatic remapping of common dialog  control identifiers to  equivalent 
  5177.  OS/2 common dialog control identifiers. 
  5178.    Automatic detection of named-resources and generation of header file to 
  5179.  assign integer identifiers. 
  5180.    Optional dialog font mapping from Windows font name and point size to OS/2 
  5181.  font name and point size. 
  5182.    Code page conversion of text strings from Windows code page to OS/2 code 
  5183.  page. 
  5184.  
  5185.  The general philosophy of converting resource definition statements is that 
  5186.  SMARTRC will attempt to convert everything and anything that it understands. 
  5187.  For those statements which do not have an equivalent statement in OS/2 SMARTRC 
  5188.  will identify the file and line number on which the statement occurs.  In 
  5189.  addition, SMARTRC will identify any conversion which may result in slightly 
  5190.  different functionality in OS/2.  It is up to the developer to decide how to 
  5191.  proceed with any statement in error. 
  5192.  
  5193.  SMARTRC is a utility that can be executed from SMART through the interface 
  5194.  dialog panel associated with the "Translate Resources..." under the 
  5195.  "Resources" menu item or can be run from a command line or embedded in a batch 
  5196.  command file. 
  5197.  
  5198.  Although SMARTRC contains many run time options, simply specifying the 
  5199.  resource filename without options will process with the system default 
  5200.  parameters. 
  5201.  
  5202.  See Also: 
  5203.  
  5204.   SMART On-Line Help 
  5205.  
  5206.  See Also: 
  5207.  
  5208.   SMART On-Line Help 
  5209.   Utility Processes 
  5210.   Resource Translator Topics 
  5211.  
  5212.  
  5213. ΓòÉΓòÉΓòÉ 7.1.2. Resource Translator Options ΓòÉΓòÉΓòÉ
  5214.  
  5215. Usage of the SMARTRC command is:
  5216.    SMARTRC [options] rcfilename
  5217.  
  5218.  rcfilename is any file containing resource definition statements.
  5219.  rcfilename can contain wildcard characters '?' and '*'.
  5220.  
  5221. where [options] is one or more of the following:
  5222.  
  5223.  -C nnn       Specify "nnn" as the screen height.
  5224.  
  5225.       This option uses nnn to specify the screen height to use
  5226.       when translating dialog coordinates for dialogs that are
  5227.       screen-aligned.  To convert the y-position of a dialog that
  5228.       is screen-aligned to the OS/2 coordinate system the screen
  5229.       height is used in calculating the lower-left corner of the
  5230.       dialog.
  5231.  
  5232.       Default: current screen resolution
  5233.  
  5234.  -D name[=[value]]  Define the symbol "name" to the preprocessor
  5235.  
  5236.       This option defines the symbol "name" to the preprocessor.
  5237.       If "value" is defined, the value of the symbol is "value".
  5238.       If the equal sign is given without "value", the value
  5239.       of the symbol is empty.  If "name" is defined without the
  5240.       equal sign, the value of the symbol is 1.
  5241.  
  5242.       The following items are defined at program startup by SMARTRC:
  5243.  
  5244.         -DSMARTRC
  5245.         -DRC_INVOKED
  5246.         -DWINVER=0x030A
  5247.         -DFALSE=0
  5248.         -DTRUE=1
  5249.  
  5250.  -E filename     Specify the error filename
  5251.  
  5252.       This option specifies an alternate name for the error file.
  5253.  
  5254.       Default: rcfilename.ERR
  5255.  
  5256.  -G ttt[,sss]    Specify the target and source code page
  5257.  
  5258.       This option specifies the target and source code pages to
  5259.       use for text string conversion.  Strings created by Windows
  5260.       text editors are normally entered using code page 1004.  The
  5261.       default code page used by an OS/2 application is specified
  5262.       in the CONFIG.SYS file using the CODEPAGE tag.
  5263.  
  5264.       Default: Target code page = 850
  5265.           Source code page = 1004
  5266.  
  5267.  -H filename     Specify the named-resource header filename
  5268.  
  5269.       This option specifies an alternate name for the named-resource
  5270.       header file created by SMARTRC.  OS/2 requires that all
  5271.       resources have an integer identifier.  Windows allows
  5272.       resources to have either an integer identifier or name.
  5273.       The named-resource header file contains a #define statement
  5274.       for every resource name that does not resolve to an integer
  5275.       value.
  5276.  
  5277.       Default: rcfilename.HHH
  5278.  
  5279.  -I pathname[s]   Specify search path to use before INCLUDE path
  5280.  
  5281.       This option specifies a search path to be added to the
  5282.       beginning of the list of directories specified by the
  5283.       INCLUDE environment variable.  The pathname can contain
  5284.       multiple directories separated by a semicolon.
  5285.  
  5286.  -L filename     Specify file of preprocessor statements
  5287.  
  5288.       This option specifies a file containing preprocessor
  5289.       statements (i.e., #define and #include) that are to be
  5290.       processed prior to beginning resource translation.  This
  5291.       option is useful for translating resource files
  5292.       (e.g., a dialog resource file) separately from the base
  5293.       RC file.
  5294.  
  5295.  -M filename     Specify the font mapping file
  5296.  
  5297.       This option specifies a file that contains a list of
  5298.       font mappings.  Font mappings are used to substitute an
  5299.       appropriate OS/2 font name and point size for the Windows
  5300.       font names and point sizes that are specified in the RC file.
  5301.  
  5302.  -R         Save converted file using original filename
  5303.  
  5304.       This option reverses the default naming of converted files.
  5305.       By default, a converted resource file is saved using the
  5306.       original resource filename with the extension changed as
  5307.       specified by the file renaming mask (default is *.??X).  This
  5308.       option causes the original resource file to be renamed using
  5309.       the file renaming mask and the converted resource file to be
  5310.       saved using the original resource filename.
  5311.  
  5312.       Example:  Original resource file is SAMPLE.RC
  5313.  
  5314.       Default:  Converted file saved as SAMPLE.RCX
  5315.            Original filename unchanged
  5316.  
  5317.       -R   :  Converted file saved as SAMPLE.RC
  5318.            Original file renamed to SAMPLE.RCX
  5319.  
  5320.  -S filename     Specify the summary filename
  5321.  
  5322.       This option specifies an alternate name for the summary file.
  5323.  
  5324.       Default: rcfilename.SUM
  5325.  
  5326.  -X mask       Specify "mask" as the file renaming mask
  5327.  
  5328.       This option specifies the file renaming mask that is used
  5329.       to create the converted resource filename.  This mask can
  5330.       contain the '?' and '*' wildcard characters.  The mask is
  5331.       applied to the original resource filename to edit and form
  5332.       the name of the file that contains the converted resource.
  5333.       Directories cannot be specified in the mask.
  5334.  
  5335.       Default: *.??X
  5336.  
  5337.  -Y nnnnn      Specify "nnnnn" as the maximum number of symbols
  5338.  
  5339.       This option specifies the maximum number of symbols that
  5340.       can be loaded into the internal symbol table.  Symbols are
  5341.       names specified using the "#define" preprocessor command.
  5342.       This option is used if the application has an unusually
  5343.       large number of symbols.
  5344.  
  5345.       Default: 8192
  5346.  
  5347.  -?         Display command line options
  5348.  
  5349.       This option displays the list of command line options.
  5350.  
  5351.   SMART On-Line Help 
  5352.   Utility Processes 
  5353.   Resource Translator Topics 
  5354.  
  5355.  
  5356. ΓòÉΓòÉΓòÉ 7.1.3. Resource Translator Output ΓòÉΓòÉΓòÉ
  5357.  
  5358. ERROR FILE (ERR)
  5359. ----------------
  5360.  
  5361. SMARTRC generates an error file containing a list of all warning and
  5362. error messages generated during the conversion process.  Each message
  5363. contains the filename, line, and column at which the error occurred.
  5364.  
  5365.  
  5366. SUMMARY FILE (SUM)
  5367. ------------------
  5368.  
  5369. The summary file contains a file-by-file summary of all resources
  5370. that were converted and a count of all informational, warning, and
  5371. error messages.  The files are output in the order in which the files
  5372. were completed.  A summary at the bottom of the file recaps the entire
  5373. conversion process.  Below is an example of the output contained in
  5374. the summary file.
  5375.  
  5376.   SMART Windows to OS/2 Resource Conversion Version 1.00
  5377.  
  5378.   Copyright (c) 1994, 1994 One Up Corporation
  5379.  
  5380.  
  5381.   Start:  Wednesday  01/05/1994  14:03:25
  5382.  
  5383.   Command line:
  5384.   smartrc showdib.rc
  5385.  
  5386.   Converting from code page <1004> to code page <850>
  5387.  
  5388.   E:\SMART\SMARTRC\TESTFILE\showdib.h
  5389.    Messages Output:
  5390.     Informational:    0   Warning:    0   Error:    0
  5391.  
  5392.   E:\SMART\SMARTRC\TESTFILE\showdib.dlg
  5393.    Converted file saved as <E:\SMART\SMARTRC\TESTFILE\showdib.dlX>
  5394.    Resources Processed:
  5395.     DIALOG:       4
  5396.      Controls:        41
  5397.    Messages Output:
  5398.     Informational:    1   Warning:    8   Error:   15
  5399.  
  5400.   E:\SMART\SMARTRC\TESTFILE\showdib.rc
  5401.    Converted file saved as <E:\SMART\SMARTRC\TESTFILE\showdib.rcX>
  5402.    Resources Processed:
  5403.     STRINGTABLE:     1
  5404.      Strings:         1
  5405.     MENU:        1
  5406.      MenuItems:        21
  5407.      SubMenus:         3
  5408.     ICON:        1
  5409.    Messages Output:
  5410.     Informational:    1   Warning:    7   Error:    0
  5411.  
  5412.   TOTALS
  5413.    Files Processed:    3
  5414.    Files Converted:    2
  5415.    Resources Processed:
  5416.     STRINGTABLE:     1
  5417.      Strings:         1
  5418.     DIALOG:       4
  5419.      Controls:        41
  5420.     MENU:        1
  5421.      MenuItems:        21
  5422.      SubMenus:         3
  5423.     ICON:        1
  5424.    Messages Output:
  5425.     Informational:    2   Warning:   15   Error:   15
  5426.  
  5427.  
  5428.   Finish: Wednesday  01/05/1994  14:03:28
  5429.  
  5430.  
  5431. NAMED-RESOURCE FILE (HHH)
  5432. -------------------------
  5433.  
  5434. The named-resource file contains a #define statement for every resource
  5435. name that does not resolve to an integer value.  Since Windows allows
  5436. resources to have either an integer identifier or a name, those resources
  5437. which are identified by name must be assigned an integer identifier value.
  5438. SMARTRC does this by creating a named-resource header file containing
  5439. a #define statement for the named-resources that are encountered during
  5440. the conversion.  This header file must then be included by both the
  5441. resource file and any source files which reference the named-resources.
  5442. All source code references to these resources must be changed from a
  5443. string reference to an integer reference.  The integer identifiers that
  5444. are assigned start at 0x1000 and increment by one.
  5445.  
  5446. As an example of this case, the following resource statement contains
  5447. a named-resource (i.e., there is no #define for VerStampIcon)
  5448.  
  5449.   VerStampIcon ICON VERSTAMP.ICO
  5450.  
  5451. SMARTRC generates the following entry in the named-resource file:
  5452.  
  5453.   #define VerStampIcon         0x1000
  5454.  
  5455. By including the named-resource header file into the converted resource
  5456. file there should be no change required to the resource files to handle
  5457. named-resources.
  5458.  
  5459. To continue with this example, if this icon was loaded in the application
  5460. source code with the following statement:
  5461.  
  5462.   /* Windows code */
  5463.   hIcon = LoadIcon (hInstance, "VerStampIcon");
  5464.  
  5465. it would be changed to
  5466.  
  5467.   /* Windows code */
  5468.   hIcon = LoadIcon (hInstance, MAKEINTRESOURCE(VerStampIcon));
  5469.  
  5470. or
  5471.  
  5472.   /* OS/2 code */
  5473.   hIcon = WinLoadPointer (HWND_DESKTOP, 0, VerStampIcon);
  5474.  
  5475.  
  5476. FONT MAPPING FILE
  5477. -----------------
  5478.  
  5479. SMARTRC attempts to locate an equivalent font in OS/2 for any fonts
  5480. specified in a FONT statement within the header of a DIALOG definition.
  5481. However, the font may not map to an acceptable font or the font
  5482. may not even exist in OS/2.  The font mapping file gives you control over
  5483. how fonts are mapped when the dialog is converted.  The format of each
  5484. entry in the font mapping file is as follows:
  5485.  
  5486.   "[pt.]facename"="[pt.]facename"[="fontfile"]
  5487.  
  5488. Note that the double-quotes and equal sign are required.  Items enclosed
  5489. in brackets are optional (the brackets are not included in the
  5490. actual specification).
  5491.  
  5492. The first part is the source point size and font name.  This is the
  5493. Windows font name and size as specified in the resource file.  The
  5494. second part is the OS/2 point size and font name to use.  If the
  5495. OS/2 font is not one of the system fonts but is contained in a font
  5496. file the name of the font file is specified in the third part.
  5497.  
  5498. To map all point sizes of a font the point size can be left off of the
  5499. mapping specification leaving just the font name.  When no FONT statement
  5500. is specified in the header of the DIALOG definition the default system
  5501. font is used.  To map the default system font in this situation insert
  5502. a font mapping of "0.System_Default".
  5503.  
  5504. Following are various examples of font mapping file entries.
  5505.  
  5506. "10.Courier"="8.Courier"
  5507. "8.AppFont"="8.AppFont"="APPFONT.FON"
  5508. "Arial"="Helv"
  5509. "0.System_Default"="10.System Proportional"
  5510.  
  5511. SMARTRC also contains several default font mappings that map Windows
  5512. font names to OS/2 equivalent names.  These default mappings can be
  5513. overridden by specifying entries in the font mapping file for these
  5514. font names.  The current default mappings are as follows:
  5515.  
  5516. "Arial"="Helvetica"
  5517. "FixedSys"="System Monospaced"
  5518. "MS Sans Serif"="Helv"
  5519. "MS Serif"="Tms Rmn"
  5520. "Small Fonts"="System VIO"
  5521. "Symbol"="Symbol Set"
  5522. "System"="System Proportional"
  5523.  
  5524.  
  5525. ACCELERATORS CONVERSION
  5526. -----------------------
  5527.  
  5528. Accelerator tables are converted to the equivalent OS/2 ACCELTABLE
  5529. format.  The following special situations are handled by SMARTRC:
  5530.  
  5531.  - All numpad virtual key accelerators are mapped to an accelerator
  5532.   specifying the CHAR keyword.  Since OS/2 does not have virtual
  5533.   key identifiers specifically for the numpad virtual keys these
  5534.   accelerators are simulated by specifying them as CHAR values.
  5535.  
  5536.  - Additional accelerator entries are generated for all ASCII
  5537.   character accelerators.  Since OS/2 differentiates between upper
  5538.   and lower case accelerator entries it is necessary to define both
  5539.   upper and lower case versions of the accelerator.
  5540.  
  5541.  
  5542. STRINGTABLE CONVERSION
  5543. ----------------------
  5544.  
  5545. Stringtable entries are converted to the equivalent OS/2 STRINGTABLE
  5546. format.  All explicitly defined strings in the stringtable are converted
  5547. from the source code page to the target code page.  The following
  5548. special string translations also are handled by SMARTRC:
  5549.  
  5550.  - '\n' characters are converted to '\x0A'
  5551.  - '\r' characters are converted to '\x0D'
  5552.  - '&'  mnemonic characters are converted to '~'
  5553.  
  5554.  
  5555. MENU CONVERSION
  5556. ---------------
  5557.  
  5558. Menus are converted to the equivalent OS/2 MENU format.  Mnemonic
  5559. characters specified as '&' are converted to '~' in menu text.
  5560. All explicitly defined strings in the menu item text are converted
  5561. from the source code page to the target code page.
  5562.  
  5563. Popup menu items in Windows are not assigned identifiers.
  5564. OS/2 requires that all menu items, including submenu items, have an
  5565. integer identifier.  SMARTRC takes care of this by automatically
  5566. assigning an identifier starting at 0xF200 and incrementing by one.
  5567. Since none of the existing application code references submenu items
  5568. by identifier this is merely a syntactical addition which should not
  5569. require any change to the application.
  5570.  
  5571.  
  5572. RCDATA CONVERSION
  5573. -----------------
  5574.  
  5575. RCDATA resources are converted to the equivalent OS/2 RCDATA format.
  5576. All explicitly defined strings in the RCDATA block are converted from
  5577. the source code page to the target code page.  The following special
  5578. string translations are also handled by SMARTRC:
  5579.  
  5580.  - '\n' characters are converted to '\x0A'
  5581.  - '\r' characters are converted to '\x0D'
  5582.  - '\a' characters are converted to '\x08'
  5583.  - '\0' characters are converted to string termination character '\"'
  5584.  
  5585. The OS/2 resource compiler automatically inserts a null byte at the
  5586. end of each string specified in the RCDATA statement.  To assist in
  5587. maintaining binary compatibility between the Windows and OS/2 RCDATA
  5588. data SMARTRC appropriately converts any null bytes encountered in
  5589. strings to string termination characters ('\"').  SMARTRC reformats
  5590. the strings so that the compiled string matches the Windows compiled
  5591. string.
  5592.  
  5593. Because of the automatic insertion of a null byte by the OS/2 resource
  5594. compiler an extra null byte will be added to any string which does
  5595. does not have an explict null bytes specified in the Windows version of
  5596. the RCDATA string.  The binary data present in the RCDATA generated
  5597. by the OS/2 resource compiler for these strings will NOT match the
  5598. binary data of the Windows RCDATA.
  5599.  
  5600.  
  5601. ICON, CURSOR, BITMAP, AND FONT STATEMENT CONVERSION
  5602. ---------------------------------------------------
  5603.  
  5604. ICON, CURSOR, BITMAP, and FONT resource definition statements are
  5605. reformatted to the equivalent OS/2 format.  SMARTRC does NOT automatically
  5606. converted the actual resource files referenced by these statements to
  5607. their OS/2 equivalent.  Windows icon and cursor resource files can be
  5608. converted to OS/2 format by using the SMARTCVT conversion utility.
  5609. Most Windows bitmaps are recognized by OS/2.  However, if you have a bitmap
  5610. which is not recognized it can be converted with any number of bitmap
  5611. conversion utilities currently available.  Font files must be converted
  5612. manually.
  5613.  
  5614.  
  5615. DIALOG UNIT CONVERSION
  5616. ----------------------
  5617.  
  5618. One of the premier features of SMARTRC is its ability to convert dialog
  5619. coordinates and dialog units to the appropriate OS/2 dialog units.  While
  5620. the formula used for converting dialog units to device units is the same
  5621. for both systems, there is a significant difference in the way that a
  5622. dialog unit is calculated.
  5623.  
  5624. Windows calculates the dialog units at run-time based on the size of the
  5625. font that is specified for the dialog.  OS/2 calculates the dialog units
  5626. at run-time based on the size of the system proportional font, regardless
  5627. of the font that is specified for the dialog.  What does this mean?  Suppose
  5628. we have two dialogs that have the exact same dialog coordinates but
  5629. specify two different fonts.  The two dialogs will display with two different
  5630. sizes in Windows since the font sizes are different for the two dialogs.
  5631. Relative positioning of controls is still maintained.  The same two
  5632. dialogs, in OS/2, will display with the exact same size and location.  The
  5633. controls will be displayed with the correct font, however, the size and
  5634. location of the controls will be identical between the two dialogs.
  5635.  
  5636. To compensate for this difference SMARTRC performs several internal
  5637. calculations based upon the sizes of the specified dialog font and the
  5638. current system font.  Since the current system font size can change from one
  5639. screen resolution to another the actual size of a dialog and its controls
  5640. may differ slightly at different resolutions.  This results from rounding
  5641. errors which occur in the system when dialog units are converted to
  5642. device units.  To compensate for this problem and to produce a converted
  5643. dialog which will appear correct at most all screen resolutions it is
  5644. recommended to run SMARTRC on a system which has the current screen
  5645. resolution set to the median size of all screen resolutions that the
  5646. application will support.  As an example, if the application will support
  5647. 640 x 480, 800 x 600, and 1024 x 768 then SMARTRC should be run when the
  5648. system is in 800 x 600 mode.
  5649.  
  5650.  
  5651. DIALOG HEADER CONVERSION
  5652. ------------------------
  5653.  
  5654. Dialog templates are converted to the equivalent OS/2 DLGTEMPLATE format.
  5655. During this conversion the font mapping file, if specified, is used to
  5656. map the dialog FONT statement to the appropriate OS/2 font and point size.
  5657. The dialog coordinates are properly translated to the OS/2 coordinate
  5658. system and the dialog units are translated according to the specified
  5659. dialog font.
  5660.  
  5661. If a MENU statement is encountered in the dialog header an error message
  5662. is output.  The OS/2 resource definition syntax does not allow a menu
  5663. to be specified in a dialog template simply by referencing the menu
  5664. identifier.  The menu must either be loaded by the application during
  5665. the WM_INITDLG message or the entire menu definition can be placed inside
  5666. the DLGTEMPLATE using a WINDOW statement and specifying a window identifier
  5667. of FID_MENU.
  5668.  
  5669. When converting a dialog which is screen-aligned the current height of
  5670. the screen is used to calculate the lower-left corner of the dialog
  5671. coordinates.  The height used in the calculation can be changed with the
  5672. -C command line option.
  5673.  
  5674.  
  5675. DIALOG CONTROLS CONVERSION
  5676. --------------------------
  5677.  
  5678. Dialog controls are converted to the equivalent OS/2 dialog control format.
  5679. The coordinates for the controls are translated to the OS/2 coordinate
  5680. system and the dialog units are translated according to the specified
  5681. dialog font.  Note that the x and y coordinates for a control in OS/2 are
  5682. specified as the lower-left corner of the control compared with the
  5683. upper-left corner of the control in Windows.  In addition, the coordinates
  5684. in OS/2 are specified relative to the lower-left corner of the dialog
  5685. compared with the upper-left corner of the dialog in Windows.  SMARTRC
  5686. automatically performs the necessary calculations for this conversion.
  5687.  
  5688. Mnemonic characters specified as '&' in control text strings are
  5689. converted to the OS/2 mnemonic character '~'.  All explicity defined
  5690. strings in the control text are converted from the source code page
  5691. to the target code page.  The following special string translations
  5692. also are handled by SMARTRC:
  5693.  
  5694.  - '\n' characters are converted to '\x0D'
  5695.  - '\r' characters are converted to '\x0D'
  5696.  - '&'  mnemonic characters are converted to '~'
  5697.  
  5698. Since the format of the OS/2 control statements differs significantly from
  5699. the format of the Windows control statements, SMARTRC attempts to format
  5700. and align the control statements for readability.  Every attempt is made
  5701. to maintain as much of the original control statement format as possible.
  5702.  
  5703.  
  5704. RESTRICTIONS
  5705. ------------
  5706.  
  5707. - The following Windows 3.1 resource definition statements are not
  5708.  converted by SMARTRC:
  5709.  
  5710.    VERSIONINFO
  5711.    user-defined resources
  5712.  
  5713. - SMARTRC defines the following symbols during program initialization.
  5714.  These values can be overridden by using the -D command line option.
  5715.  
  5716.    Symbol    Value
  5717.    ----------  ------
  5718.    SMARTRC
  5719.    RC_INVOKED
  5720.    WINVER    0x030A
  5721.    FALSE     0
  5722.    TRUE     1
  5723.  
  5724. - Macros cannot be used for any of the reserved resouce definition keywords.
  5725.  
  5726.    #define MYDIALOG DIALOG
  5727.  
  5728.    100 MYDIALOG LOADONCALL MOVEABLE 30, 35, 247, 120  /* INVALID */
  5729.  
  5730. - Preprocessor conditional statements must begin and end within a single
  5731.  file.  It is not valid to have a #ifdef block begin in one file and
  5732.  have the matching #endif in another file.
  5733.  
  5734. - Preprocessor conditional statements within a DIALOG resource definition
  5735.  template are properly evaluated but are not output to the converted
  5736.  resource file.
  5737.  
  5738. - #include and rcinclude statements are not recognized within any
  5739.  multiline resource statements.
  5740.  
  5741.    100 DIALOG LOADONCALL MOVEABLE 30, 35, 247, 120
  5742.    BEGIN
  5743.    #include "controls.h"             /* NOT PROCESSED */
  5744.    END
  5745.  
  5746. - #define statements are not recognized within any multiline resource
  5747.  statements.
  5748.  
  5749.    100 DIALOG LOADONCALL MOVEABLE 30, 35, 247, 120
  5750.    BEGIN
  5751.    #define CONTROLWIDTH 20            /* NOT PROCESSED */
  5752.    END
  5753.  
  5754. - Macro definitions which contain parameter substitutions are currently
  5755.  not processed.
  5756.  
  5757.    #define CONTROLWIDTH(x) (x + 10)       /* NOT PROCESSED */
  5758.    #define CONTROLWIDTH (x + 10)         /* PROCESSED   */
  5759.  
  5760. - Converted files replace any existing files with the same name.
  5761.  
  5762. - When converting dialog units as outlined in the Dialog Conversion
  5763.  section the conversion is relative to the system font for the
  5764.  current display resolution.
  5765.  
  5766.  
  5767. SAMPLE
  5768. ------
  5769.  
  5770. The following sample demonstrates the use of SMARTRC on a simple sample
  5771. resource and dialog file.  The sample resource file is SAMPLE.RC as follows:
  5772.  
  5773. -------------------------------------------------------------------
  5774.  
  5775. #include "windows.h"
  5776. #include "sample.h"
  5777.  
  5778. SAMPLECURSOR CURSOR sample.cur
  5779. SAMPLEICON  ICON  sample.ico
  5780. SAMPLEBITMAP BITMAP sample.bmp
  5781.  
  5782. STRINGTABLE
  5783. BEGIN
  5784.  IDS_TITLE,    "Sample Title string"
  5785.  IDS_MNEMONIC,   "This string has a &mnemonic"
  5786.  IDS_CHAR,     "This string has special chars\n\r"
  5787. END
  5788.  
  5789. IDACCEL ACCELERATORS
  5790. BEGIN
  5791.  VK_DELETE, IDM_DELETE, VIRTKEY
  5792.  "r",    IDM_REMOVE
  5793.  VK_TAB,   200,     ALT, SHIFT, VIRTKEY
  5794.  0x42,    201,     ASCII
  5795. END
  5796.  
  5797. IDMENU MENU
  5798. BEGIN
  5799.  POPUP "&File"
  5800.   BEGIN
  5801.   MENUITEM "&Open...",      IDM_OPEN
  5802.   MENUITEM "&Save As...",     IDM_SAVE
  5803.   MENUITEM SEPARATOR
  5804.   MENUITEM "E&xit",        IDM_EXIT
  5805.   END
  5806. END
  5807.  
  5808. rcinclude "sample.dlg"
  5809.  
  5810. -------------------------------------------------------------------
  5811.  
  5812. The sample dialog file SAMPLE.DLG is as follows:
  5813.  
  5814. -------------------------------------------------------------------
  5815.  
  5816. 100 DIALOG 3, 15, 258, 166
  5817. STYLE DS_ABSALIGN | DS_MODALFRAME | DS_NOIDLEMSG | WS_POPUP | WS_VISIBLE |
  5818.   WS_CAPTION | WS_SYSMENU
  5819. CAPTION "Dialog Title"
  5820. FONT 8, "MS Sans Serif"
  5821. BEGIN
  5822.   GROUPBOX     "╨╣Static Controls", 101, 5, 6, 59, 102
  5823.   LTEXT      "Left", 102, 7, 18, 40, 8
  5824.   CTEXT      "Center", 103, 7, 30, 40, 8
  5825.   RTEXT      "Right", 104, 7, 42, 40, 8
  5826.   CONTROL     "Simple", 105, "Static", SS_SIMPLE | WS_GROUP, 7, 54, 40,
  5827.           8
  5828.   CONTROL     "Left No-Wrap", 106, "Static", SS_LEFTNOWORDWRAP |
  5829.           WS_GROUP, 7, 66, 40, 8
  5830.   LTEXT      "&Left No Prefix", 107, 7, 78, 40, 8, SS_NOPREFIX
  5831.   CONTROL     "Left Disabled", 108, "Static", SS_LEFTNOWORDWRAP |
  5832.           WS_DISABLED | WS_GROUP, 7, 90, 40, 8
  5833.   GROUPBOX     "Button Controls", 109, 73, 6, 90, 102
  5834.   CONTROL     "&Auto", 110, "Button", BS_AUTOCHECKBOX | WS_GROUP |
  5835.           WS_TABSTOP, 79, 18, 70, 10
  5836.   CONTROL     "Auto 3-State", 111, "Button", BS_AUTO3STATE |
  5837.           WS_TABSTOP, 79, 32, 70, 10
  5838.   CONTROL     "Auto &Left", 112, "Button", BS_AUTOCHECKBOX |
  5839.           BS_LEFTTEXT | WS_TABSTOP, 79, 46, 70, 10
  5840.   CONTROL     "Auto", 113, "Button", BS_AUTORADIOBUTTON | WS_GROUP |
  5841.           WS_TABSTOP, 79, 60, 70, 10
  5842.   CONTROL     "Auto Left", 114, "Button", BS_AUTORADIOBUTTON |
  5843.           BS_LEFTTEXT, 79, 74, 70, 10
  5844.   PUSHBUTTON    "Standard", 115, 77, 86, 40, 14, WS_GROUP
  5845.   DEFPUSHBUTTON  "Default", 116, 120, 86, 40, 14
  5846.   GROUPBOX     "Listbox Control", 117, 173, 112, 78, 47
  5847.   LISTBOX     118, 179, 125, 38, 26, LBS_SORT | WS_VSCROLL |
  5848.           WS_HSCROLL | WS_TABSTOP
  5849.   GROUPBOX     "ComboBox Controls", 119, 173, 7, 78, 102
  5850.   COMBOBOX     120, 181, 19, 48, 35, CBS_SIMPLE | CBS_AUTOHSCROLL |
  5851.           CBS_DISABLENOSCROLL | WS_VSCROLL | WS_GROUP | WS_TABSTOP
  5852.   COMBOBOX     121, 182, 53, 48, 35, CBS_DROPDOWN | CBS_SORT |
  5853.           WS_VSCROLL | WS_TABSTOP
  5854.   COMBOBOX     122, 182, 73, 48, 35, CBS_DROPDOWNLIST | CBS_SORT |
  5855.           WS_VSCROLL | WS_TABSTOP
  5856.   ICON       124, 123, 226, 127, 18, 20
  5857.   GROUPBOX     "Frames", 125, 5, 112, 78, 47
  5858.   CONTROL     "", 126, "Static", SS_BLACKFRAME, 37, 120, 38, 11
  5859.   LTEXT      "Black", 127, 9, 122, 20, 8
  5860.   LTEXT      "White", 128, 9, 134, 20, 8
  5861.   LTEXT      "Gray", 129, 9, 146, 20, 8
  5862.   CONTROL     "", 130, "Static", SS_WHITEFRAME, 37, 132, 38, 11
  5863.   CONTROL     "", 131, "Static", SS_GRAYFRAME, 37, 144, 38, 11
  5864.   GROUPBOX     "Rectangles", 132, 89, 112, 78, 47
  5865.   LTEXT      "Black", 134, 93, 122, 20, 8
  5866.   LTEXT      "White", 135, 93, 134, 20, 8
  5867.   LTEXT      "Gray", 136, 93, 146, 20, 8
  5868.   CONTROL     "", 133, "Static", SS_BLACKRECT, 118, 120, 38, 11
  5869.   CONTROL     "", 137, "Static", SS_WHITERECT, 118, 132, 38, 11
  5870.   CONTROL     "", 138, "Static", SS_GRAYRECT, 118, 144, 38, 11
  5871. END
  5872.  
  5873. -------------------------------------------------------------------
  5874.  
  5875. The sample header file SAMPLE.H is as follows:
  5876.  
  5877. -------------------------------------------------------------------
  5878. #define IDS_TITLE                 0x0100
  5879. #define IDS_MNEMONIC               0x0101
  5880. #define IDS_CHAR                 0x0102
  5881. #define IDM_DELETE                0x0103
  5882. #define IDM_REMOVE                0x0104
  5883. #define IDM_OPEN                 0x0105
  5884. #define IDM_SAVE                 0x0106
  5885. #define IDM_EXIT                 0x0107
  5886.  
  5887. #define SAMPLECURSOR               0x1000
  5888. #define SAMPLEICON                0x1001
  5889. #define SAMPLEBITMAP               0x1002
  5890. #define SAMPLEFONT                0x1003
  5891.  
  5892. -------------------------------------------------------------------
  5893.  
  5894. To begin the conversion the following command line is entered:
  5895.  
  5896. SMARTRC SAMPLE.RC
  5897.  
  5898. The output from executing this command is as follows:
  5899.  
  5900. -------------------------------------------------------------------
  5901.  
  5902. SMART Windows to OS/2 Resource Conversion Version 1.00
  5903.  
  5904. Copyright (c) 1994, 1994 One Up Corporation
  5905.  
  5906. I1003 Converting from code page <1004> to code page <850>
  5907.  
  5908. Processing file <E:\SMART\SMARTRC\DOC\SAMPLE.RC>...
  5909. Processing file <E:\SMART\SMARTRC\DOC\sample.h>...
  5910. Processing file <E:\SMART\SMARTRC\DOC\sample.dlg>...
  5911. E3032 <BS_LEFTTEXT> is not supported in OS/2
  5912. E3032 <BS_LEFTTEXT> is not supported in OS/2
  5913. E3032 <LBS_SORT> is not supported in OS/2
  5914. E3032 <CBS_SORT> is not supported in OS/2
  5915. E3032 <CBS_SORT> is not supported in OS/2
  5916. I1001 Converted file saved as <E:\SMART\SMARTRC\DOC\sample.dlX>
  5917. I1001 Converted file saved as <E:\SMART\SMARTRC\DOC\SAMPLE.RCX>
  5918.  
  5919. -------------------------------------------------------------------
  5920.  
  5921. This output indicates that the files SAMPLE.RC, SAMPLE.H, and SAMPLE.DLG
  5922. were examined by SMARTRC.  The controls styles BS_LEFTTEXT, LBS_SORT,
  5923. and CBS_SORT were encountered and there is no equivalent style in OS/2.
  5924. These errors will have to be corrected later through programming changes.
  5925. Finally, two of the files were converted and the converted files were
  5926. saved with their extensions changed according to the default renaming
  5927. mask.
  5928.  
  5929. The error file contains a more detailed look at the warnings and errors
  5930. by listing the exact file, line, and column in the source file which
  5931. generated the message.  The file SAMPLE.ERR is as follows:
  5932.  
  5933. -------------------------------------------------------------------
  5934.  
  5935.  
  5936. SMART Windows to OS/2 Resource Conversion Version 1.00
  5937.  
  5938. Copyright (c) 1994, 1994 One Up Corporation
  5939.  
  5940.  
  5941. Command line:
  5942. smartrc  sample.rc
  5943.  
  5944. I1003 Converting from code page <1004> to code page <850>
  5945.  
  5946. E:\SMART\SMARTRC\DOC\SAMPLE.RC(1:1) : W2017 Include file name <windows.h> changed to <os2.h>
  5947. E:\SMART\SMARTRC\DOC\SAMPLE.RC(15:1) : W2005 Resource name <IDACCEL> assigned integer ID <0x1000> in HHH file
  5948. E:\SMART\SMARTRC\DOC\SAMPLE.RC(18:3) : W2008 Generated alternate accelerator case <"R">
  5949. E:\SMART\SMARTRC\DOC\SAMPLE.RC(20:3) : W2008 Generated alternate accelerator case <0x62>
  5950. E:\SMART\SMARTRC\DOC\SAMPLE.RC(23:1) : W2005 Resource name <IDMENU> assigned integer ID <0x1001> in HHH file
  5951. E:\SMART\SMARTRC\DOC\SAMPLE.RC(25:9) : W2006 Submenu item <"&File"> assigned identifier of <0xF200>
  5952. E:\SMART\SMARTRC\DOC\sample.dlg(5:6) : W2001 Font <MS Sans Serif> mapped to <Helv>
  5953. E:\SMART\SMARTRC\DOC\sample.dlg(24:21) : E3032 <BS_LEFTTEXT> is not supported in OS/2
  5954. E:\SMART\SMARTRC\DOC\sample.dlg(28:21) : E3032 <BS_LEFTTEXT> is not supported in OS/2
  5955. E:\SMART\SMARTRC\DOC\sample.dlg(32:44) : E3032 <LBS_SORT> is not supported in OS/2
  5956. E:\SMART\SMARTRC\DOC\sample.dlg(37:58) : E3032 <CBS_SORT> is not supported in OS/2
  5957. E:\SMART\SMARTRC\DOC\sample.dlg(39:62) : E3032 <CBS_SORT> is not supported in OS/2
  5958. E:\SMART\SMARTRC\DOC\SAMPLE.RC(34:1) : W2017 Include file name <sample.dlg> changed to <sample.dlX>
  5959.  
  5960. -------------------------------------------------------------------
  5961.  
  5962. Note also that the warnings are listed in the error file as well as the
  5963. errors which were sent to the screen by SMARTRC.  The warnings indicate
  5964. that the include file "windows.h" was automatically converted to "os2.h".
  5965. The two W2005 warnings indicate that there were two named resources found
  5966. and they have been output to the SAMPLE.HHH file.  The W2008 warnings
  5967. indicate that SMARTRC automatically generated the two additional accelerator
  5968. keys needed for compatibility.  Warning W2006 indicates that an integer
  5969. identifier was assigned to a submenu item.  Warning W2001 indicates that
  5970. the default font mapping from "MS Sans Serif" to "Helv" was performed.
  5971. Finally, since the dialog file SAMPLE.DLG was renamed to SAMPLE.DLX, warning
  5972. W2017 indicates that the rcinclude statement changed the name of the
  5973. included file to match the converted file name.
  5974.  
  5975. The named-resource header file SAMPLE.HHH is as follows:
  5976.  
  5977. -------------------------------------------------------------------
  5978.  
  5979. #define IDACCEL                  0x1000
  5980. #define IDMENU                  0x1001
  5981.  
  5982. -------------------------------------------------------------------
  5983.  
  5984. and the summary file SAMPLE.SUM is as follows:
  5985.  
  5986. -------------------------------------------------------------------
  5987.  
  5988. SMART Windows to OS/2 Resource Conversion Version 1.00
  5989.  
  5990. Copyright (c) 1994, 1994 One Up Corporation
  5991.  
  5992.  
  5993. Start:  Thursday  03/31/1994  11:00:59
  5994.  
  5995. Command line:
  5996. smartrc  sample.rc
  5997.  
  5998. I1003 Converting from code page <1004> to code page <850>
  5999.  
  6000. E:\SMART\SMARTRC\DOC\sample.h
  6001.  Messages Output:
  6002.   Informational:    0   Warning:    0   Error:    0
  6003.  
  6004. E:\SMART\SMARTRC\DOC\sample.dlg
  6005.  Converted file saved as <E:\SMART\SMARTRC\DOC\sample.dlX>
  6006.  Resources Processed:
  6007.   DIALOG:       1
  6008.    Controls:        37
  6009.  Messages Output:
  6010.   Informational:    1   Warning:    1   Error:    5
  6011.  
  6012. E:\SMART\SMARTRC\DOC\SAMPLE.RC
  6013.  Converted file saved as <E:\SMART\SMARTRC\DOC\SAMPLE.RCX>
  6014.  Resources Processed:
  6015.   STRINGTABLE:     1
  6016.    Strings:         3
  6017.   MENU:        1
  6018.    MenuItems:        3
  6019.    SubMenus:         1
  6020.   ACCELERATORS:    1
  6021.    Keys:           4
  6022.    Keys Added:        2
  6023.   ICON:        1
  6024.   CURSOR:       1
  6025.   BITMAP:       1
  6026.  Messages Output:
  6027.   Informational:    1   Warning:    7   Error:    0
  6028.  
  6029. TOTALS
  6030.  Files Processed:    3
  6031.  Files Converted:    2
  6032.  Resources Processed:
  6033.   STRINGTABLE:     1
  6034.    Strings:         3
  6035.   DIALOG:       1
  6036.    Controls:        37
  6037.   MENU:        1
  6038.    MenuItems:        3
  6039.    SubMenus:         1
  6040.   ACCELERATORS:    1
  6041.    Keys:           4
  6042.    Keys Added:        2
  6043.   ICON:        1
  6044.   CURSOR:       1
  6045.   BITMAP:       1
  6046.  Messages Output:
  6047.   Informational:    3   Warning:    8   Error:    5
  6048.  
  6049.  
  6050. Finish: Thursday  03/31/1994  11:01:01
  6051.  
  6052. -------------------------------------------------------------------
  6053.  
  6054. The converted files SAMPLE.RCX and SAMPLE.DLX appear as follows:
  6055.  
  6056. -------------------------------------------------------------------
  6057.  
  6058. /* SM$FO E:\SMART\SMARTRC\DOC\SAMPLE.RC - Thursday  03/31/1994  11:00:59 */
  6059. #include "os2.h"
  6060. #include "sample.h"
  6061.  
  6062. POINTER SAMPLECURSOR sample.cur
  6063. ICON  SAMPLEICON  sample.ico
  6064. BITMAP SAMPLEBITMAP sample.bmp
  6065.  
  6066. STRINGTABLE
  6067. BEGIN
  6068.  IDS_TITLE,    "Sample Title string"
  6069.  IDS_MNEMONIC,   "This string has a ~mnemonic"
  6070.  IDS_CHAR,     "This string has special chars\x0A\x0D"
  6071. END
  6072.  
  6073. ACCELTABLE IDACCEL
  6074. BEGIN
  6075.  VK_DELETE, IDM_DELETE, VIRTUALKEY
  6076.  "r",    IDM_REMOVE
  6077.  "R",    IDM_REMOVE
  6078.  VK_TAB,   200, VIRTUALKEY, ALT, SHIFT
  6079.  0x42,    201, CHAR, SHIFT
  6080.  0x62,    201, CHAR, SHIFT
  6081. END
  6082.  
  6083. MENU IDMENU
  6084. BEGIN
  6085.  SUBMENU "~File", 0xF200
  6086.   BEGIN
  6087.   MENUITEM "~Open...",      IDM_OPEN
  6088.   MENUITEM "~Save As...",     IDM_SAVE
  6089.   MENUITEM SEPARATOR
  6090.   MENUITEM "E~xit",        IDM_EXIT
  6091.   END
  6092. END
  6093.  
  6094. rcinclude "sample.dlX"
  6095.  
  6096. -------------------------------------------------------------------
  6097.  
  6098. /* SM$FO E:\SMART\SMARTRC\DOC\sample.dlg - Thursday  03/31/1994  11:01:00 */
  6099. DLGTEMPLATE 100
  6100. BEGIN
  6101.  DIALOG "Dialog Title", 100, 4, 162, 291, 133,
  6102.  WS_VISIBLE | FS_DLGBORDER | FS_SCREENALIGN,
  6103.  FCF_TITLEBAR | FCF_SYSMENU | FCF_NOMOVEWITHOWNER
  6104.  PRESPARAMS PP_FONTNAMESIZE, "8.Helv"
  6105.  BEGIN
  6106.   GROUPBOX    "ΓòòStatic Controls",   101,  6,  46,  67,  82, DT_MNEMONIC
  6107.   LTEXT     "Left",         102,  8, 113,  45,  6, SS_TEXT | DT_WORDBREAK | DT_MNEMONIC
  6108.   CTEXT     "Center",        103,  8, 103,  45,  6, SS_TEXT | DT_WORDBREAK | DT_MNEMONIC
  6109.   RTEXT     "Right",        104,  8,  93,  45,  6, SS_TEXT | DT_WORDBREAK | DT_MNEMONIC
  6110.   CONTROL    "Simple",        105,  8,  84,  45,  6, WC_STATIC, DT_LEFT | WS_GROUP | SS_TEXT | DT_WORDBREAK | DT_MNEMONIC | WS_VISIBLE
  6111.   CONTROL    "Left No-Wrap",     106,  8,  74,  45,  6, WC_STATIC, DT_LEFT | WS_GROUP | SS_TEXT | DT_MNEMONIC | WS_VISIBLE
  6112.   LTEXT     "&Left No Prefix",   107,  8,  65,  45,  6, SS_TEXT | DT_WORDBREAK
  6113.   CONTROL    "Left Disabled",    108,  8,  55,  45,  6, WC_STATIC, DT_LEFT | WS_DISABLED | WS_GROUP | SS_TEXT | DT_MNEMONIC | WS_VISIBLE
  6114.   GROUPBOX    "Button Controls",   109,  82,  46, 102,  82, DT_MNEMONIC
  6115.   CONTROL    "~Auto",        110,  89, 111,  79,  8, WC_BUTTON, BS_AUTOCHECKBOX | WS_GROUP |
  6116.           WS_TABSTOP | WS_VISIBLE
  6117.   CONTROL    "Auto 3-State",     111,  89,  99,  79,  8, WC_BUTTON, BS_AUTO3STATE |
  6118.           WS_TABSTOP | WS_VISIBLE
  6119.   CONTROL    "Auto ~Left",      112,  89,  88,  79,  8, WC_BUTTON, BS_AUTOCHECKBOX | WS_TABSTOP | WS_VISIBLE
  6120.   CONTROL    "Auto",         113,  89,  77,  79,  8, WC_BUTTON, BS_AUTORADIOBUTTON | WS_GROUP |
  6121.           WS_TABSTOP | WS_VISIBLE
  6122.   CONTROL    "Auto Left",      114,  89,  66,  79,  8, WC_BUTTON, BS_AUTORADIOBUTTON | WS_VISIBLE
  6123.   PUSHBUTTON   "Standard",       115,  87,  53,  45,  11, WS_GROUP
  6124.   DEFPUSHBUTTON "Default",       116, 135,  53,  45,  11
  6125.   GROUPBOX    "Listbox Control",   117, 195,  5,  88,  38, DT_MNEMONIC
  6126.   LISTBOX                118, 202,  12,  43,  21, WS_TABSTOP
  6127.   GROUPBOX    "ComboBox Controls",  119, 195,  45,  88,  82, DT_MNEMONIC
  6128.   COMBOBOX    "",           120, 204,  90,  54,  28, CBS_SIMPLE | WS_GROUP | WS_TABSTOP
  6129.   COMBOBOX    "",           121, 205,  63,  54,  28, CBS_DROPDOWN | WS_TABSTOP
  6130.   COMBOBOX    "",           122, 205,  47,  54,  28, CBS_DROPDOWNLIST | WS_TABSTOP
  6131.   ICON      124,          123, 255,  15,  20,  16
  6132.   GROUPBOX    "Frames",        125,  6,  5,  88,  38, DT_MNEMONIC
  6133.   CONTROL    "",           126,  42,  28,  43,  9, WC_STATIC, SS_FGNDFRAME | WS_VISIBLE
  6134.   LTEXT     "Black",        127,  10,  29,  23,  6, SS_TEXT | DT_WORDBREAK | DT_MNEMONIC
  6135.   LTEXT     "White",        128,  10,  20,  23,  6, SS_TEXT | DT_WORDBREAK | DT_MNEMONIC
  6136.   LTEXT     "Gray",         129,  10,  10,  23,  6, SS_TEXT | DT_WORDBREAK | DT_MNEMONIC
  6137.   CONTROL    "",           130,  42,  18,  43,  9, WC_STATIC, SS_BKGNDFRAME | WS_VISIBLE
  6138.   CONTROL    "",           131,  42,  9,  43,  9, WC_STATIC, SS_HALFTONEFRAME | WS_VISIBLE
  6139.   GROUPBOX    "Rectangles",      132, 100,  5,  88,  38, DT_MNEMONIC
  6140.   LTEXT     "Black",        134, 105,  29,  23,  6, SS_TEXT | DT_WORDBREAK | DT_MNEMONIC
  6141.   LTEXT     "White",        135, 105,  20,  23,  6, SS_TEXT | DT_WORDBREAK | DT_MNEMONIC
  6142.   LTEXT     "Gray",         136, 105,  10,  23,  6, SS_TEXT | DT_WORDBREAK | DT_MNEMONIC
  6143.   CONTROL    "",           133, 133,  28,  43,  9, WC_STATIC, SS_FGNDRECT | WS_VISIBLE
  6144.   CONTROL    "",           137, 133,  18,  43,  9, WC_STATIC, SS_BKGNDRECT | WS_VISIBLE
  6145.   CONTROL    "",           138, 133,  9,  43,  9, WC_STATIC, SS_HALFTONERECT | WS_VISIBLE
  6146.  END
  6147. END
  6148.  
  6149. -------------------------------------------------------------------
  6150.  
  6151. The next step in the process is to add the following line to the
  6152. SAMPLE.RCX file:
  6153.  
  6154. #include "sample.hhh"
  6155.  
  6156. and convert the Windows cursor and icon files SAMPLE.CUR and SAMPLE.ICO
  6157. to the equivalent OS/2 format.  This can be done using the SMARTCVT
  6158. icon and cursor conversion utility.  If the names of the converted icon
  6159. and cursor files change then it is necessary to change the file names
  6160. in the converted SAMPLE.RCX file as well.
  6161.  
  6162. Next, the OS/2 resource compiler is run on the converted files using the
  6163. following command line:
  6164.  
  6165. RC -R SAMPLE.RCX
  6166.  
  6167. Finally, the application must be modified to handle the items identified
  6168. as errors in the error file.
  6169.  
  6170.   SMART On-Line Help 
  6171.   Utility Processes 
  6172.   Resource Translator Topics 
  6173.  
  6174.  
  6175. ΓòÉΓòÉΓòÉ 7.1.4. Resource Translator Messages ΓòÉΓòÉΓòÉ
  6176.  
  6177. The following types of messages can be issued from SMARTRC:
  6178.  
  6179.      Information messages
  6180.      Warning messages
  6181.      Error messages
  6182.  
  6183.  
  6184. Information Messages
  6185. ----------------------
  6186.   I1000 Original file <file1> saved as <file2>
  6187.  
  6188.      This message indicates that the original resource definition
  6189.      file file1 was renamed and saved as file2.
  6190.  
  6191.   I1001 Converted file saved as <file1>
  6192.  
  6193.      This message indicates that the converted resource definition
  6194.      file was saved as file1.
  6195.  
  6196.   I1002 File <file1> converted
  6197.  
  6198.      This message indicates that the resource definition file file1
  6199.      has been successfully converted.
  6200.  
  6201.   I1003 Converting from code page <srccp> to code page <tgtcp>
  6202.  
  6203.      This message indicates that code page conversion will occur
  6204.      from source code page srccp to target code page tgtcp.
  6205.  
  6206. Warning Messages
  6207. ----------------
  6208.   W2000 Identifier <id1> does not have a numeric value
  6209.  
  6210.      The identifier id1 does not resolve to an integer value
  6211.      (via a macro definition) and is considered a named-resource.
  6212.      An entry for id1 is created in the named-resource header file.
  6213.  
  6214.   W2001 Font <font1> mapped to <font2>
  6215.  
  6216.      The dialog fontname font1 has been mapped to fontname font2.
  6217.  
  6218.   W2002 Point size <ptsiz1> remapped to actual point size <ptsiz2>
  6219.  
  6220.      The point size of the dialog font ptsiz1 has been remapped
  6221.      or scaled to font point size ptsiz2.
  6222.  
  6223.   W2004 Code page translation error on string <string1>
  6224.  
  6225.      String string1 could not be fully converted from the source
  6226.      code page to the target code page.  This occurs when a
  6227.      character from the source code page does not map to an entry
  6228.      in the target code page.  The invalid character in the string
  6229.      is unchanged.
  6230.  
  6231.   W2005 Resource name <name1> assigned integer ID <id1> in HHH file
  6232.  
  6233.      An entry in the named-resource header file has been created
  6234.      for the named-resource name1.  The identifier has been
  6235.      assigned a value of id1.
  6236.  
  6237.   W2006 Submenu item <name1> assigned identifier of <id1>
  6238.  
  6239.      Popup menu items (which map to submenu items) must have
  6240.      integer identifiers in OS/2.  The identifier id1 has been
  6241.      assigned to the submenu item.
  6242.  
  6243.   W2007 Accelerator numpad virtual key <key1> mapped to CHAR value
  6244.  
  6245.      The number pad virtual key key1 has been mapped to an
  6246.      accelerator specifying the CHAR keyword.  This indicates that
  6247.      the accelerator will not be identified as a virtual key in
  6248.      the WM_CHAR message.
  6249.  
  6250.   W2008 Generated alternate accelerator case <key1>
  6251.  
  6252.      The alternate case of the accelerator key key1 has been
  6253.      automatically generated for the accelerator table.  If
  6254.      an ASCII character is specified for the accelerator key
  6255.      the alternate case is generated since OS/2 differentiates
  6256.      between upper and lower case accelerator entries.  Adding
  6257.      the alternate case ensures that the accelerator key works
  6258.      for both upper and lower case versions of the character.
  6259.  
  6260.   W2009 Icon text reformatted as <id1>; check ID reference
  6261.  
  6262.      The text specifying the name of an icon for an icon dialog
  6263.      control has been reformatted to match the OS/2 format.  The
  6264.      text of a Windows icon dialog control specifies the name of
  6265.      an icon resource defined elsewhere in the resource file.  The
  6266.      text of an OS/2 icon dialog control is the integer identifier
  6267.      of the icon resource formatted as "#nnn".  Check that the
  6268.      integer identifier in id1 matches the identifier of the
  6269.      desired icon resource.
  6270.  
  6271.   W2010 No icon identifier provided; substituting <0>
  6272.  
  6273.      The text specifying the name of a icon for an icon dialog
  6274.      control specified a null string.  Zero was substituted for
  6275.      the text of the icon dialog control.  The formatted text
  6276.      of the icon must be set by the application in order for
  6277.      the icon to appear in the control.  The format of the
  6278.      integer identifier for the icon in OS/2 is "#nnn", where
  6279.      nnn is the integer identifier.
  6280.  
  6281.   W2011 Removed null byte will be re-inserted by the OS/2 resource compiler
  6282.  
  6283.      The explicitly defined null byte which terminates a string
  6284.      in the RCDATA statement has been removed from the string.  OS/2
  6285.      automatically inserts a null byte at the end of each string
  6286.      specified in the RCDATA statement.  Therefore, the binary
  6287.      data present in the RCDATA generated by the OS/2 resource
  6288.      compiler will match the binary data of the Windows RCDATA.
  6289.  
  6290.   W2012 A terminating null byte will be added by the OS/2 resource compiler
  6291.  
  6292.      A string in the RCDATA statement was encountered which did
  6293.      not explicitly specify a null termination character.  OS/2
  6294.      automatically inserts a null byte at the end of each string
  6295.      specified in the RCDATA statement.  Therefore, the binary
  6296.      data present in the RCDATA generated by the OS/2 resource
  6297.      compiler will NOT match the binary data of the Windows RCDATA.
  6298.  
  6299.   W2013 Macro redefinition : <name1>
  6300.  
  6301.      The macro name name1 has been redefined to a new value.
  6302.  
  6303.   W2015 # if/#endif processed but not copied to output file -- Verify completeness
  6304.  
  6305.      A preprocessor conditional statement was encountered inside
  6306.      of a multiline resource definition statement.  SMARTRC properly
  6307.      evaluates the conditional statement but does not output the
  6308.      conditional statement to the converted resource file.
  6309.  
  6310.   W2016 Control identifier <id1> changed to <id2>
  6311.  
  6312.      The identifier specified for a dialog control has been
  6313.      mapped from the Windows mnemonic name id1 to the equivalent
  6314.      OS/2 mnemonic name id2.  These identifiers are defined for
  6315.      the common dialog controls and the predefined dialog
  6316.      button identifiers (e.g., IDOK -> DID_OK).
  6317.  
  6318.   W2017 Include file name <name1> changed to <name2>
  6319.  
  6320.      The filename specified in a #include or rcinclude statement
  6321.      has been changed from name1 to name2.  This occurs when
  6322.      the file that has been included has itself been converted,
  6323.      resulting in the renaming of the included file.  Included
  6324.      files that do not contain any resource definition statements
  6325.      are unchanged.
  6326.  
  6327. Error Messages
  6328. --------------
  6329.   E3000 Invalid expression
  6330.  
  6331.      An expression for an identifier or conditional statement is
  6332.      invalid.  The expression may contain symbols which do not
  6333.      evaluate or the expression is improperly formed.
  6334.  
  6335.   E3001 Original filename matches renamed filename <name1>
  6336.  
  6337.      After applying the file renaming mask (option -X) the
  6338.      filename name1 is the same as the original filename.
  6339.      The temporary file containing the converted resource
  6340.      definition statements is not renamed.
  6341.  
  6342.   E3002 Translated file <name1> was not renamed
  6343.  
  6344.      The converted resource file name1 was not renamed to the
  6345.      appropriate filename.  Refer to the file name1 for the converted
  6346.      resource definition statements.
  6347.  
  6348.   E3003 Unable to rename <name1> to <name2>
  6349.  
  6350.      The file name1 could not be renamed to name2.
  6351.  
  6352.   E3004 Unable to load font file <name1>
  6353.  
  6354.      The OS/2 font file name1 that was specified in the font
  6355.      mapping file could not be loaded by OS/2.  Ensure that
  6356.      the OS/2 font file name is correct and that it contains
  6357.      an OS/2 font.
  6358.  
  6359.   E3005 Unable to open font mapping file <name1>
  6360.  
  6361.      The font mapping file name1 specified with the -M command
  6362.      line option could not be opened.  Check that the filename
  6363.      is valid and that the file exists.
  6364.  
  6365.   E3006 Unable to read font mapping file <name1>
  6366.  
  6367.      An error occurred while attempting to read the font mapping
  6368.      file name1.
  6369.  
  6370.   E3007 Invalid font mapping specification on line line#
  6371.  
  6372.      The font mapping statement on line line# in the font mapping
  6373.      file has a syntax error.  Check that the identified line
  6374.      conforms to the font mapping file syntax.
  6375.  
  6376.   E3008 Unable to add symbol <name1> to symbol table; specify <-Y> option
  6377.  
  6378.      SMARTRC was unable to add the symbol name1 to the internal
  6379.      symbol table.  This occurs when the resource file defines
  6380.      a large number of symbols.  Correct this error by increasing
  6381.      the number of allowable symbols with the -Y command line option.
  6382.  
  6383.   E3009 Unable to map accelerator entry <name1>
  6384.  
  6385.      The accelerator key entry name1 does not have an equivalent
  6386.      entry in OS/2.
  6387.  
  6388.   E3010 Dialog menus cannot be defined in an OS/2 resource file
  6389.  
  6390.      A MENU statement was encountered in the header of a DIALOG
  6391.      resource template.  The OS/2 resource definition syntax does
  6392.      not allow a menu to be specified in a dialog template by
  6393.      referencing the menu identifier.  The menu must either be
  6394.      loaded by the application during the WM_INITDLG message or
  6395.      the entire menu definition can be placed inside the
  6396.      DLGTEMPLATE using a WINDOW statement.
  6397.  
  6398.   E3011 Unable to locate file <name1>
  6399.  
  6400.      The included file name1 could not be located in the INCLUDE
  6401.      path.  Correct the INCLUDE environment variable or define
  6402.      additional include directories with the -I command line option.
  6403.  
  6404.   E3012 Unable to open file <name1>
  6405.  
  6406.      The file name1 could not be opened.  Check that the filename
  6407.      is specified correctly and that the file exists.
  6408.  
  6409.   E3013 Unable to read file <name1>
  6410.  
  6411.      An error occurred while attempting to read the file name1.
  6412.  
  6413.   E3014 Unable to create temporary file <name1>
  6414.  
  6415.      SMARTRC was unable to create the temporary file name1.  The
  6416.      temporary file is used during the conversion process to maintain
  6417.      intermediate conversion data.  The temporary file is created
  6418.      in the same directory as the resource file that is being
  6419.      converted.  Check that enough disk space is available on the
  6420.      specified drive.
  6421.  
  6422.   E3015 Source code page <srccp> is not available
  6423.  
  6424.      The source code page srccp is not available on the current
  6425.      system.  Either an incorrect source code page was specified
  6426.      on the -G command line option or the default source code page
  6427.      is not available.
  6428.  
  6429.   E3016 Target code page <tgtcp> is not available
  6430.  
  6431.      The target code page srccp is not available on the current
  6432.      system.  Either an incorrect target code page was specified
  6433.      on the -G command line option or the default target code page
  6434.      is not available.
  6435.  
  6436.   E3017 Code page conversion will not be performed
  6437.  
  6438.      Code page conversion of strings will not be performed if
  6439.      either the source or target code pages do not exist on the
  6440.      current system.
  6441.  
  6442.   E3018 Unknown option: opt1 ignored
  6443.  
  6444.      The command line option opt1 is not recognized by SMARTRC.
  6445.      The option is ignored and processing continues.
  6446.  
  6447.   E3019 Unable to allocate memory for symbol table
  6448.  
  6449.      SMARTRC was unable to allocate enough memory to hold the
  6450.      symbol table.  The number of symbol table entries specified
  6451.      by the -Y command line option may be too large.
  6452.  
  6453.   E3020 Unable to allocate memory for stack
  6454.  
  6455.      SMARTRC was unable to allocate enough memory for its internal
  6456.      stack.
  6457.  
  6458.   E3021 Unable to allocate memory for tokens
  6459.  
  6460.      SMARTRC was unable to allocate enough memory for its internal
  6461.      token stack.
  6462.  
  6463.   E3022 Unable to load font mapping file <name1>
  6464.  
  6465.      An error occurred while initializing or loading the font
  6466.      mapping file name1.
  6467.  
  6468.   E3023 Unable to open error file <name1>
  6469.  
  6470.      SMARTRC was unable to create or open the error file name1.
  6471.      If the file exists then it may currently be opened by
  6472.      another application.
  6473.  
  6474.   E3024 Unable to open HHH file <name1>
  6475.  
  6476.      SMARTRC was unable to create or open the named-resource header
  6477.      file name1.  If the file exists then it may currently be opened
  6478.      by another application.
  6479.  
  6480.   E3025 Unable to open summary file <name1>
  6481.  
  6482.      SMARTRC was unable to create or open the summary file name1.
  6483.      If the file exists then it may currently be opened by
  6484.      another application.
  6485.  
  6486.   E3026 The VERSIONINFO resource statement is not supported in OS/2
  6487.  
  6488.      A VERSIONINFO statement was encountered in the resource
  6489.      file.  There is no equivalent resource statement in OS/2.
  6490.  
  6491.   E3027 No matching font found for font <pt1.name1>
  6492.      The default system font will be used
  6493.  
  6494.      A FONT statement was encountered in the header of a DIALOG
  6495.      resource template and no matching OS/2 font could be found
  6496.      for font name1 with point size pt1.  A font mapping for
  6497.      this font must be specified in the font mapping file.
  6498.      Otherwise, the default system font is used.
  6499.  
  6500.   E3028 <ES_CENTER> is not supported for multiline edit controls
  6501.  
  6502.      The ES_CENTER style flag was encountered while processing
  6503.      a multiline edit dialog control statement.  There is no
  6504.      equivalent flag in OS/2 for multiline edit controls.
  6505.  
  6506.   E3029 <ES_RIGHT> is not supported for multiline edit controls
  6507.  
  6508.      The ES_RIGHT style flag was encountered while processing
  6509.      a multiline edit dialog control statement.  There is no
  6510.      equivalent flag in OS/2 for multiline edit controls.
  6511.  
  6512.   E3030 <flag1> is not supported in OS/2. Style set to LS_OWNERDRAW
  6513.  
  6514.      The flag1 style flag was encountered while processing
  6515.      a listbox dialog control statement.  There is no equivalent
  6516.      flag in OS/2 for listbox controls.
  6517.  
  6518.   E3031 <flag1> is not supported in OS/2. Style set to BS_OWNERDRAW
  6519.  
  6520.      The flag1 style flag was encountered while processing
  6521.      a button dialog control statement.  There is no equivalent
  6522.      flag in OS/2 for button controls.
  6523.  
  6524.   E3032 <flag1> is not supported in OS/2
  6525.  
  6526.      The flag1 style flag was encountered while processing
  6527.      a dialog or dialog control statement.  There is no equivalent
  6528.      flag in OS/2.
  6529.  
  6530.   E3033 <flag1> is not a recognized keyword
  6531.  
  6532.      The flag1 style flag was encountered while processing
  6533.      a dialog or dialog control statement.  The flag is not
  6534.      recognized by SMARTRC.
  6535.  
  6536.   SMART On-Line Help 
  6537.   Utility Processes 
  6538.   Resource Translator Topics 
  6539.  
  6540.  
  6541. ΓòÉΓòÉΓòÉ 7.2. Win Help Translator Topics ΓòÉΓòÉΓòÉ
  6542.  
  6543. The Win Help Translator Section includes the following topics: 
  6544.  
  6545.     Win Help Translator Use 
  6546.     Win Help Translator Options 
  6547.     Win Help Translator Messages 
  6548.     Win Help Translator Dialog Panel 
  6549.  
  6550.  See Also: 
  6551.  
  6552.   SMART On-Line Help 
  6553.   Utility Processes 
  6554.  
  6555.  
  6556. ΓòÉΓòÉΓòÉ 7.2.1. Win Help Translator Use ΓòÉΓòÉΓòÉ
  6557.  
  6558. Win Help Translation 
  6559.  
  6560.   The SMART Windows to OS/2 Help Translator Conversion utility (SMARTHLP.EXE) 
  6561. provides conversion of Windows help files to OS/2 help files.  This utility can 
  6562. be executed from SMART through the interface dialog panel associated with 
  6563. "Translate Win Help..." under the "Resources" menu item or can be run from a 
  6564. command line or embedded in a batch command file.  It is necessary to use this 
  6565. utility only when migrating from Windows to OS/2.  Help files do not require 
  6566. translation when migrating from one version of OS/2 to another. 
  6567.  
  6568.  Follow these steps to convert a Windows RTF (Rich Text Format) file to an OS/2 
  6569. help file. 
  6570.  
  6571.   1. Create an HPJ file that contains the name of the RTF file to be converted 
  6572.      along with any bitmap names that are needed.  A sample HPJ file is located 
  6573.      in ..SMARTAUX\SAMPLE.HPJ. 
  6574.  
  6575.   2. To access the the Win Help Translator dialog panel, choose "Resources" 
  6576.      from the SMART main dialog panel.  From the Resources pulldown choose 
  6577.      "Translate Win Help". 
  6578.  
  6579.   3. On the Win Help Translator dialog panel, enter the name (including path) 
  6580.      of the HPJ file in the "Input Filename" field. 
  6581.  
  6582.   4. Choose the rest of the options as they apply.  Generally, most of the 
  6583.      options will be needed. 
  6584.  
  6585.   5. If the output will be used by an application, choose "Output .HLP file". 
  6586.      If the output will be independent, like a "users' reference", choose 
  6587.      "Output .INF file".  To view the output, create an .INF file and use the 
  6588.      VIEW command (in OS/2). 
  6589.  
  6590.   6. Another useful option is "Send Error file to Editor".  Then, errors can be 
  6591.      viewed. 
  6592.  
  6593.   7. When all options have been chosen, press "ok". 
  6594.  
  6595.   8. SMART does not display a status on the conversion process for a HELP 
  6596.      document.  If the "Send Error File to Editor" option is chosen, then the 
  6597.      process will be complete when the error file is displayed.  Otherwise, 
  6598.      watch the OS/2 window in the backgound to ensure that the Help conversion 
  6599.      process is complete. 
  6600.  
  6601.   9. Output from the Help conversion will depend on the options chosen.  If 
  6602.      nothing was entered in the "Output Filename" the file will be written to 
  6603.      the same directory as the input file. 
  6604.  
  6605.  10. Unless the "Convert to IPF Only" option is chosen, the IPF file produced 
  6606.      by SMART will automatically be sent to the IPF compiler.  In that case, an 
  6607.      INF or HLP file will be produced (depending on the option chosen).  If the 
  6608.      "Convert to IPF Only" option IS chosen, only the IPF file will be produced 
  6609.      and will not be compiled. 
  6610.  
  6611.   Note:  Error messages are explained in the online help.  To view the error 
  6612.  message explanations, choose HELP from the Win Help Translator dialog panel. 
  6613.  Then choose "Win Help Translator Topics".  After that choose "Win Help 
  6614.  Translator Messages". 
  6615.  
  6616.  Please note that the IPF compiler (IPFC.EXE) is required for SMART Win Help 
  6617.  translation. IPF (Information Processing Facility) is available from the IBM 
  6618.  Developers Toolkit. 
  6619.  
  6620.  WIN HELP TRANSLATION LIMITATIONS 
  6621.  
  6622.  The .RTF format can specify a more general document than the IPF's tag 
  6623.  language.  Because of this, some word-processing functionality available with 
  6624.  Windows help files cannot be translated to the PM IPF system.  The following 
  6625.  are the word processing functionalities that cannot be supported: 
  6626.  
  6627.     Headers and Footers are not supported and will be ignored. 
  6628.  
  6629.     Metafiles and Macintosh pictures are not supported and will be ignored. 
  6630.  You may convert these pictures to bitmaps rather than use these unsupported 
  6631.  formats. 
  6632.  
  6633.     Scaling and cropping of pictures are not supported and are ignored. 
  6634.  
  6635.     Outline, shadow, small-cap and all-cap character attributes are not 
  6636.  supported and are ignored. 
  6637.  
  6638.     Revision marking, tables, side-by-side paragraphs, centered paragraphs, 
  6639.  right-justified paragraphs, paragraph borders, and paragraph leaders are not 
  6640.  supported and are ignored. 
  6641.  
  6642.     Decimal, right, and center tabs are not supported and are ignored. 
  6643.  
  6644.     Margins, paragraph indentations, and tabs are approximated to the nearest 
  6645.  character width. 
  6646.  
  6647.     Line spacing before, within, and after paragraphs is approximated to the 
  6648.  nearest system font character height. 
  6649.  
  6650.     Text does not flow around left or right-margin images, but follows 
  6651.  immediately below the image. 
  6652.  
  6653.     Monochrome images appear in black and white instead of the text foreground 
  6654.  and background colors. 
  6655.  
  6656.     Character attributes of bold, underline and italics work correctly in all 
  6657.  combinations, except for all three together.  It produces red text. 
  6658.  
  6659.     A maximum of 64KB of keys information can be provided. 
  6660.  
  6661.     There are cosmetic differences in the way that hypertext links are 
  6662.  displayed on the screen and in the mouse and keyboard interfaces to those 
  6663.  links. 
  6664.  
  6665.   SMART On-Line Help 
  6666.   Utility Processes 
  6667.   Win Help Translator Topics 
  6668.  
  6669.  
  6670. ΓòÉΓòÉΓòÉ 7.2.2. Win Help Translator Options ΓòÉΓòÉΓòÉ
  6671.  
  6672. The usage of the SMARTHLP command from the command line or in a batch file is as follows:
  6673.  
  6674.    SMARTHLP  [OPTIONS]  INPUT-FILE  [OUTPUT-FILE]
  6675.  
  6676. [OPTIONS]
  6677.  
  6678.   -A   Do code page translation for all characters, not just those with numeric values
  6679.      greater than 127
  6680.  
  6681.       This option allows for all code page translation when translating the
  6682.       help files instead of just those with the code page translation with the
  6683.       numeric values of 128 or greater.
  6684.  
  6685.  
  6686.   -Bhvrxa   Any combination of h, v, r, x and a can be used to specify the table attributes.
  6687.      h - horizontal rules
  6688.      v - vertical rules
  6689.      r - rules at the top and bottom
  6690.      x - box around the table
  6691.      a - all attributes:  rules and box
  6692.  
  6693.  
  6694.  
  6695.       This option allows for the selection of attributes for the tables.  The
  6696.       option includes horizontal rules, vertical rules, rules along the top and
  6697.       bottom, a box around the table, and the selection of all the attributes.
  6698.  
  6699.  
  6700.   -C   Convert to IPF only. DO NOT call IPFC.EXE.
  6701.  
  6702.       This option allows for the conversion to an .IPF file only and DOES NOT
  6703.       call the IPFC.EXE file.  If  the -I option is chosen, the IPF is written
  6704.       in the format compatible for an INF file.  If  the -I option is NOT chosen,
  6705.       the IPF is written in the format compatible for an HLP file  and the
  6706.       intermediate BIN files will remain.  If you continue the process of
  6707.       building the  help file by manually calling IPFC.EXE, it is important
  6708.       to set the right flags to  continue on a consistent path.  If you used
  6709.       the -I option to make the IPF file, use  the -INF option with
  6710.       IPFC.EXE.  If you did NOT use the -I option to make the IPF file,
  6711.       DO NOT use the -INF option with IPFC.EXE which will create an HLP file.
  6712.  
  6713.  
  6714.   -D   Do not delete intermediate IPF file.
  6715.  
  6716.       This option causes the IPF file to remain after the creation of the HLP or
  6717.       INF file.  This may be useful for debugging purposes.  Normally this
  6718.       option is not selected; allowing the IPF file to be deleted after calling
  6719.       IPFC.EXE.
  6720.  
  6721.   -F   Use PM default font only.
  6722.  
  6723.       This option allows the font references in the RTF files to be ignored
  6724.       when the IPF file is generated.  Only the PM default font will be
  6725.       used.
  6726.  
  6727.  
  6728.   -Gnnn   Use nnn as destination code page in text translation.
  6729.  
  6730.       This option must be used in conjunction with the -(Ynnn) option.  It
  6731.       allows the specification of the target (and source) code pages.  The
  6732.       'nnn' is used as the destination code page for the text translation.  The
  6733.       default used for the target code page is 850.
  6734.  
  6735.  
  6736.   -I   Create VIEWable .INF file instead of .HLP file.
  6737.  
  6738.       This option allows for the conversion to create an .INF file instead of
  6739.       the .HLP file.  The intermediate .IPF file is written to support
  6740.       processing by the IBM VIEW application.
  6741.  
  6742.  
  6743.   -U   Use IPF paragraph tags to output paragraphs.
  6744.  
  6745.       This option causes the Translator to read the IPF paragraph tags when
  6746.       outputting paragraphs thus ignoring the .RTF paragraph spacing
  6747.       attributes.
  6748.  
  6749.  
  6750.   -W   Increase warning level to output detail level message.
  6751.  
  6752.       This option causes the warning level to increase so the
  6753.       Translator outputs detail level messages to the editor.
  6754.  
  6755.  
  6756.   -Xn  Display debug messages at level n.
  6757.  
  6758.       This option is for the specification of the level of the debug messages to
  6759.       be displayed, otherwise no messages will be displayed.  The level
  6760.       number is placed in n.  The default is 0.
  6761.  
  6762.  
  6763.   -(Ynnn)  Use nnn as source code page in text translation.
  6764.  
  6765.       This option must be used in conjunction with the -Gnnn option.  It
  6766.       allows the specification of the source code pages.  The 'nnn' is used as
  6767.       the source code page for the text translation.  The default used for the
  6768.       source code page is 1004.
  6769.  
  6770.   Win Help Translator Dialog Panel 
  6771.   SMART On-Line Help 
  6772.   Utility Processes 
  6773.   Win Help Translator Topics 
  6774.  
  6775.  
  6776. ΓòÉΓòÉΓòÉ 7.2.3. Win Help Translator Messages ΓòÉΓòÉΓòÉ
  6777.  
  6778. The SMARTHLP Translator generates the following types of messages during processing:
  6779.  
  6780.      Information messages
  6781.      Warning messages
  6782.      Error messages
  6783.  
  6784.  
  6785. Information Messages
  6786. --------------------
  6787. The information messages that are generated are of the following format:
  6788.  
  6789.    PARSING  [filename]  - PASS  [number]
  6790.  
  6791. Warning Messages
  6792. ----------------
  6793. If a warning message is generated the SMARTHLP Translator will continue to process the Windows
  6794. help files.  It is strongly recommended that you look at the source of the warning and fix it.
  6795. Warning HLP messages are of the format "[filename]([line number]) : Warning HLPnnnn : [explanation]".
  6796. The following is a list of possible warning messages that can be generated.
  6797.  
  6798. 0054   "Outline, Shadow, and Caps attributes not supported."
  6799.      These attributes can be specified in the RTF file for Windows 3.1, but are not supported
  6800.      under OS/2.  This message is given only on the first occurrence
  6801.  
  6802. 0055   "Subscript and Superscript attributes not supported."
  6803.      These attributes are not supported by SMARTHLP.
  6804.  
  6805. 0056   "Revision marking not supported."
  6806.      Revision marking is not supported by SMARTHLP.
  6807.  
  6808. 0057   "Only left-paragraph justification supported."
  6809.      RTF files support right-justified, left-justified, and centered paragraphs.  Only left-
  6810.      justified paragraphs are supported by SMARTHLP.
  6811.  
  6812. 0058   "Tables not supported."
  6813.      Tables are not supported by SMARTHLP.
  6814.  
  6815. 0059   "Side-by-side paragraphs not supported."
  6816.      Side-by-side paragraphs are not supported by SMARTHLP.
  6817.  
  6818. 0060   "Right, Centered, Decimal and Bar tabs not supported."
  6819.      These tab types are not supported by SMARTHLP.
  6820.  
  6821. 0061   "Paragraph borders not supported."
  6822.      SMARTHLP does not support lines drawn around paragraphs.
  6823.  
  6824. 0062   "Paragraph leaders not supported."
  6825.      Leading characters in the paragraphs such as period or spaces are not supported.
  6826.  
  6827. 0063   "IPFC.EXE not found within path or path too long."
  6828.      SMARTHLP could not find the PM help facility.  Verify that IPFC.EXE exists and
  6829.      is in your path.
  6830.  
  6831. 0064   "Not enough memory to execute IPFC.EXE."
  6832.      SMARTHLP uses the IPFC utility program in its translation.  There was not enough
  6833.      memory to launch this program.  Close other applications and try rerunning the program.
  6834.  
  6835. 0065   "Unable to execute IPFC.EXE."
  6836.      SMARTHLP uses IPFC to process the Windows help files.  This program could not be
  6837.      launched for unknown reasons.
  6838.  
  6839. 0066   "IPFC.EXE failed and returned an error code of [number]."
  6840.      The PM help facility has failed and returned the error code listed.  Check the OS/2
  6841.      documentation for an explanation of the error code.
  6842.  
  6843. 0067   "Unbalanced parenthesis in Build Topic Expression."
  6844.      SMARTHLP has detected a syntax error in a Build Topic expression.
  6845.  
  6846. 0068   "Expression name [string] not listed in [BUILDTAGS] section."
  6847.      All BUILDTAGS must be declared.  SMARTHLP will simulate this declaration and
  6848.      continue if possible.
  6849.  
  6850. 0069   "Syntax error in Build Topic Expression."
  6851.      Topics can have an associated Boolean expression that is used to determine whether the
  6852.      topic should be included in building the help file.  An invalid expression was detected.
  6853.  
  6854. 0070   "Build Topic expression [string] not completely parsed."
  6855.      Build Topic expressions are similar to mathematical expressions.  A syntax error was
  6856.      detected in this type of expression.
  6857.  
  6858. 0071   "Referenced name [string] not listed in [BUILDTAGS] section."
  6859.      A string found as part of an expression within the .HPJ file was not found within the
  6860.      BUILDTAGS section of the .HPJ file.
  6861.  
  6862. 0072   "Topic [string] referenced but not in text."
  6863.      There is a hypertext link to a topic that the translator cannot find.  Verify that the
  6864.      topic string is spelled the same in both locations.
  6865.  
  6866. 0073   "Cannot append keys info to .HLP file [filename]."
  6867.      This message should not appear. Try rerunning the program. If the message
  6868.      persists contact SMART technical support for assistance.
  6869.  
  6870. 0074   "Write error appending keys info to .HLP file [filename]."
  6871.      SMARTHLP must append information to the .HLP file.  This information could not be
  6872.      appended.  A full disk is one possible cause.
  6873.  
  6874. 0075   "Picture borders not supported."
  6875.      Borders drawn around pictures are not available.
  6876.  
  6877. 0076   "Picture scaling and cropping not supported."
  6878.      Picture scaling and cropping are not available.
  6879.  
  6880. 0077   "Macintosh pictures not supported."
  6881.      Macintosh pictures are not supported by OS/2.  Translate the Macintosh picture to a
  6882.      recognized bitmap format.
  6883.  
  6884. 0078   "Metafile pictures not supported."
  6885.      Metafile pictures are not supported by OS/2.
  6886.  
  6887. Error Messages
  6888. --------------
  6889. If an error message is generated the SMARTHLP Translator will stop processing the Windows help files.
  6890. At that time it is necessary to fix the error.  Error HLP messages are of the format
  6891. "[filename]([line number]) : Error HLPnnnn : [explanation]".  The following is a list of possible
  6892. error messages that can be generated.
  6893.  
  6894. 0000   "No message text for message number [number]."
  6895.      This is an internal consistency check for the error message functions.  This message
  6896.      should not appear.  Try rerunning the program.  If the message persists contact SMART
  6897.      technical support for assistance.
  6898.  
  6899. 0001   "Message number [number] has invalid severity code of [number]."
  6900.      This is an internal consistency check for the error message functions.  This message
  6901.      should not appear.  Try rerunning the program.  If the message persists, contact SMART
  6902.      technical support for assistance.
  6903.  
  6904. 0002   "Cannot open input file."
  6905.      The input .HPJ file could not be opened.  Verify that the file exists.
  6906.  
  6907. 0003   "Cannot open output file [filename]."
  6908.      The output .IPF file could not be opened.  The disk may be full or the output filename
  6909.      may be invalid.
  6910.  
  6911. 0004   "Cannot allocate buffer of size [number]."
  6912.      A necessary buffer could not be allocated in the available memory.  Close other
  6913.      applications and try rerunning the program.
  6914.  
  6915. 0005   "Cannot re-allocate buffer to size [number]."
  6916.      This message indicates a memory allocation problem.  Close other applications
  6917.      and try rerunning the program.
  6918.  
  6919. 0006   "Cannot allocate buffer for string storage."
  6920.      A necessary buffer could not be allocated in the available memory.  Close other
  6921.      applications and try rerunning the program.
  6922.  
  6923. 0007   "RTF token identification problem."
  6924.      This message indicates a general syntax error.
  6925.  
  6926. 0008   "State stack has garbage on it."
  6927.      There were more open braces than closed braces in the .RTF file.
  6928.  
  6929. 0009   "RTF stack underflow."
  6930.      There were more closed braces than open braces in the .RTF file.
  6931.  
  6932. 0010   "Cannot open .RTF file [filename]."
  6933.      An .RTF file referenced in the .HPJ file could not be opened.  Verify that the file exists.
  6934.  
  6935. 0011   "Unexpected colortbl keyword."
  6936.      A probable syntax error was detected.
  6937.  
  6938. 0012   "Unexpected fonttbl keyword."
  6939.      A probable syntax error was detected.
  6940.  
  6941. 0013   "Cannot locate referenced font."
  6942.      There is a reference to an undeclared font in the .RTF file.
  6943.  
  6944. 0014   "Invalid state in RTF tokenizer."
  6945.      This is an internal error.  The internal tokenizer cannot process a sequence of characters.
  6946.  
  6947. 0015   "Ignoring reference to unknown style sheet [number]."
  6948.      Style sheets reside within the help document.  A reference has been found to a style
  6949.      sheet that cannot be located.
  6950.  
  6951. 0016   "Bad footnote type encountered."
  6952.      In the .RTF file, footnotes identify individual blocks of text as topics.  A footnote was
  6953.      used in an inappropriate way for Windows help.
  6954.  
  6955. 0017   "No topic identification in footnotes."
  6956.      In an .RTF file, individual help topics are separated by a hard page break.  A page was
  6957.      found for which there was no identification.
  6958.  
  6959. 0018   "Bad separator."
  6960.      SMARTHLP has found confusing syntax in the .RTF file.
  6961.  
  6962. 0019   "Text keyword processing error."
  6963.      A syntax error was detected while processing text.
  6964.  
  6965. 0020   "Text processing error."
  6966.      A syntax error was detected while processing text.
  6967.  
  6968. 0021   "Bitmap Translator not found within path, or path too long."
  6969.      SMARTHLP uses SMARTCVT to convert bitmaps.  This conversion utility program
  6970.      could not be found by SMARTHLP.  Verify that SMARTCVT.EXE exists and
  6971.      is in your path.
  6972.  
  6973. 0022   "Not enough memory to execute Bitmap Translator."
  6974.      SMARTHLP uses SMARTCVT to convert bitmaps.  There was not enough memory to
  6975.      launch the conversion utility program.  Close other applications and
  6976.      try rerunning the program.
  6977.  
  6978. 0023   "Unable to execute Bitmap Translator."
  6979.      SMARTHLP uses SMARTCVT to convert bitmaps.  SMARTCVT could not be launched
  6980.      for an unknown reason.
  6981.  
  6982. 0024   "Bitmap Translator failed and returned an error code of [number]."
  6983.      SMARTHLP uses SMARTCVT to convert bitmaps.  This conversion utility program
  6984.      failed with the error code indicated.  For an explanation of the error code
  6985.      refer to the section below which documents the CVI messages.  For example, if the
  6986.      error code returned is 3 then the corresponding CVI message is CVI0003.
  6987.  
  6988. 0025   "Cannot open temporary file [filename]."
  6989.      An expected temporary file could not be found.
  6990.  
  6991. 0026   "Invalid number of bits per pixel in picture."
  6992.      In the .RTF file, an invalid number was entered for the number of bits per pixel.
  6993.      Valid values are 1, 4, 8 or 24.
  6994.  
  6995. 0027   "Internal error occurred while processing picture."
  6996.      Images can be inserted in-line in .RTF files, which include metafiles and Macintosh
  6997.      picture files.  An error was detected while processing a picture.
  6998.  
  6999. 0028   "Invalid #include filename delimiter."
  7000.      The syntax of an #include reference is invalid.  The two acceptable delimiters are
  7001.      quotation marks or angle brackets.
  7002.  
  7003. 0029   "Cannot open #include file [filename]."
  7004.      .HPJ files can use Include files in a manner similar to .C files.  The referenced file
  7005.      could not be found; verify that it exists.
  7006.  
  7007. 0030   "Expected section name."
  7008.      An expected section name could not be found.
  7009.  
  7010. 0031   "Expected close bracket."
  7011.      In the .RTF file, SMARTHLP expected a closed bracket, but encountered some other
  7012.      item.
  7013.  
  7014. 0032   "Expected end of line."
  7015.      In the .RTF file, SMARTHLP expected an end-of-line marker, but encountered some
  7016.      other item.
  7017.  
  7018. 0033   "Internal error processing .HPJ file."
  7019.      This error will not ordinarily occur.  If it does, some earlier syntax error probably
  7020.      confused the translator.
  7021.  
  7022. 0034   "File name syntax error."
  7023.      In the .HPJ file, SMARTHLP encountered invalid syntax.
  7024.  
  7025. 0035   "Expected equals sign."
  7026.      In the .HPJ file, SMARTHLP expected an equals sign (=), but encountered some other
  7027.      character.
  7028.  
  7029. 0036   "Alias syntax error."
  7030.      This message indicates a syntax error in the .HPJ file.
  7031.  
  7032. 0037   "Map #define syntax error."
  7033.      There is a syntax error in a #define statement.
  7034.  
  7035. 0038   "Expected map name."
  7036.      In the .HPJ file, SMARTHLP expected a map name, but encountered some other item.
  7037.  
  7038. 0039   "Expected map value."
  7039.      In the .HPJ file, SMARTHLP expected a map value, but encountered some other item.
  7040.  
  7041. 0040   "Expected Build Topic Expression."
  7042.      In the .HPJ file, SMARTHLP expected the Build Topic expression, but encountered
  7043.      some other item.
  7044.  
  7045. 0041   "Expected min font size to map."
  7046.      In the .HPJ file, SMARTHLP expected a minimum font size indicator, but encountered
  7047.      some other item.  This should occur only at the beginning of the file unless syntax is
  7048.      unreadable by the translator.
  7049.  
  7050. 0042   "Invalid font mapping syntax."
  7051.      This message indicates a syntax error in the .HPJ file.
  7052.  
  7053. 0043   "Expected max font size to map."
  7054.      In the .HPJ file, SMARTHLP expected a maximum font size indicator, but encountered
  7055.      some other item.  This should only occur at the beginning of the file unless syntax is
  7056.      unreadable by the translator.
  7057.  
  7058. 0044   "Expected font size to map to."
  7059.      In the .HPJ file, SMARTHLP expected a font size, but encountered some other item.
  7060.  
  7061. 0045   "Expected title text."
  7062.      In the .HPJ file, SMARTHLP expected title text, but encountered some other item.
  7063.  
  7064. 0046   "Invalid ROOT path."
  7065.      In the .HPJ file, ROOT designates the root path where the .HPJ, bitmap, and associated
  7066.      files should be found.  The translator could not find this directory.
  7067.  
  7068. 0047   "Expected index name."
  7069.      In the .HPJ file, SMARTHLP expected an index name, but encountered some other
  7070.      item.
  7071.  
  7072. 0048   "Expected single character multi-key."
  7073.      In the .HPJ file, SMARTHLP expected a single-character multi-key, but encountered
  7074.      some other item.  An error was probably found in the footnote tag for a multi-key item.
  7075.  
  7076. 0049   "Expected font name."
  7077.      In the .HPJ file, SMARTHLP expected the name of a font, but encountered some other
  7078.      item.
  7079.  
  7080. 0050   "Expected valid warning level."
  7081.      In the .HPJ file, SMARTHLP encountered an invalid warning level.  Valid values are 1,
  7082.      2, or 3.
  7083.  
  7084. 0051   "Expected keyword YES, NO, HIGH, MEDIUM, 0, 1, TRUE or FALSE."
  7085.      Compression statements can have one of two values: TRUE or FALSE.  In the statement that
  7086.      SMARTHLP is translating, some other value was encountered.
  7087.  
  7088. 0052   "Expected valid option name."
  7089.      In the .HPJ file, SMARTHLP encountered an invalid option name.
  7090.  
  7091. 0053   "Unexpected end of file encountered."
  7092.      A probable syntax error was detected.
  7093.  
  7094. 0128   "Can not translate a character from the windows code page to the OS/2 code page."
  7095.  
  7096. 0132   "PM Help limit - file has too many topics (>64000)."
  7097.      The PM limitation of 64,000 help topics has been exceeded.
  7098.  
  7099. 0136   "Expected copyright text."
  7100.      The text for the copyright notice is missing.
  7101.  
  7102. 0138   "Expected error log filename."
  7103.      In the .RTF file, SMARTHLP expected to find the name of the error log file, but encountered
  7104.      some other item.
  7105.  
  7106. 0139   "Error log file <filename> could not be created."
  7107.      Check to see if the file exists and if so, that the file is not write protected.
  7108.  
  7109. 0140   "Expected keyword YES, NO, ON, OFF, 1, 0, TRUE or FALSE."
  7110.      In the .RTF file, SMARTHLP expected to find a boolean keyword, but encountered some other
  7111.      item.
  7112.  
  7113. 0144   "Expected language name SCANDANAVIAN or ENGLISH."
  7114.      The LANGUAGE keyword was encountered but the language option was not SCANDANAVIAN or ENGLISH.
  7115.  
  7116. 0146   "Expected name of icon file."
  7117.      In the .RTF file, SMARTHLP expected to find the name of the icon file, but encountered some
  7118.      other item.
  7119.  
  7120. 0150   "Expected caption string."
  7121.      In the .RTF file, SMARTHLP expected to find a caption string but instead encountered some
  7122.      other item.
  7123.  
  7124. 0151   "Expected comma after caption string."
  7125.      In the .RTF file, SMARTHLP expected to find a comma (,) after the caption string but
  7126.      encountered some other item.
  7127.  
  7128. 0152   "Expected left parenthesis before window X value."
  7129.      In the .RTF file, SMARTHLP expected to find a left parenthesis, but encountered some
  7130.      other item.
  7131.  
  7132. 0153   "Expected window X value."
  7133.      In the .RTF file, SMARTHLP expected to find a numeric value, but encountered some other item.
  7134.  
  7135. 0154   "Expected comma after window X value."
  7136.      In the .RTF file, SMARTHLP expected to find a comma (,) but encountered some other item.
  7137.  
  7138. 0155   "Expected window Y value."
  7139.      In the .RTF file, SMARTHLP expected to find a numeric value, but encountered some other item.
  7140.  
  7141. 0156   "Expected comma after window Y value."
  7142.      In the .RTF file, SMARTHLP expected to find a comma (,) but encountered some other item.
  7143.  
  7144. 0157   "Expected window width value."
  7145.      In the .RTF file, SMARTHLP expected to find the window width value, but encountered some
  7146.      other item.
  7147.  
  7148. 0158   "Expected comma after window width value."
  7149.      In the .RTF file, SMARTHLP expected to find a comma (,) but encountered some other item.
  7150.  
  7151. 0159   "Expected window height value."
  7152.      In the .RTF file, SMARTHLP expected to find the window height value, but encountered some
  7153.      other item.
  7154.  
  7155. 0160   "Expected right parenthesis before sizing value."
  7156.      In the .RTF file, SMARTHLP expected to find a right parenthesis, but encountered some
  7157.      other item.
  7158.  
  7159. 0161   "Expected comma before sizing value."
  7160.      In the .RTF file, SMARTHLP expected to find a comma (,) but encountered some other item.
  7161.  
  7162. 0162   "Expected sizing value."
  7163.      In the .RTF file, SMARTHLP expected to find a numeric value, but encountered some other item.
  7164.  
  7165. 0163   "Expected comma after sizing value."
  7166.      In the .RTF file, SMARTHLP expected to find a comma (,) but encountered some other item.
  7167.  
  7168. 0164   "Expected left parenthesis to begin client RGB value."
  7169.      In the .RTF file, SMARTHLP expected to find a left parenthesis, but encountered some
  7170.      other item.
  7171.  
  7172. 0165   "Expected client Red value."
  7173.      In the .RTF file, SMARTHLP expected to find a numeric value, but encountered some other item.
  7174.  
  7175. 0166   "Expected comma after client Red value."
  7176.      In the .RTF file, SMARTHLP expected to find a comma (,) but encountered some other item.
  7177.  
  7178. 0167   "Expected client Green value."
  7179.      In the .RTF file, SMARTHLP expected to find a numeric value, but encountered some other item.
  7180.  
  7181. 0168   "Expected comma after client Green value."
  7182.      In the .RTF file, SMARTHLP expected to find a comma (,) but encountered some other item.
  7183.  
  7184. 0169   "Expected client Blue value."
  7185.      In the .RTF file, SMARTHLP expected to find a numeric value, but encountered some other item.
  7186.  
  7187. 0170   "Expected right parenthesis to end client RGB value."
  7188.      In the .RTF file, SMARTHLP expected to find a right parenthesis, but encountered some
  7189.      other item.
  7190.  
  7191. 0171   "Expected comma after client RGB value."
  7192.      In the .RTF file, SMARTHLP expected to find a comma (,) but encountered some other item.
  7193.  
  7194. 0172   "Expected left parenthesis to begin non-scroll RGB value."
  7195.      In the .RTF file, SMARTHLP expected to find a left parenthesis, but encountered some
  7196.      other item.
  7197.  
  7198. 0173   "Expected non-scroll Red value."
  7199.      In the .RTF file, SMARTHLP expected to find a numeric value, but encountered some other item.
  7200.  
  7201. 0174   "Expected comma after non-scroll Red value."
  7202.      In the .RTF file, SMARTHLP expected to find a comma (,) but encountered some other item.
  7203.  
  7204. 0175   "Expected non-scroll Green value."
  7205.      In the .RTF file, SMARTHLP expected to find a numeric value, but encountered some other item.
  7206.  
  7207. 0176   "Expected comma after non-scroll Green value."
  7208.      In the .RTF file, SMARTHLP expected to find a comma (,) but encountered some other item.
  7209.  
  7210. 0177   "Expected non-scroll Blue value."
  7211.      In the .RTF file, SMARTHLP expected to find a numeric value, but encountered some other item.
  7212.  
  7213. 0178   "Expected right parenthesis to end non-scroll RGB value."
  7214.      In the .RTF file, SMARTHLP expected to find a right parenthesis, but encountered some
  7215.      other item.
  7216.  
  7217. CVI Messages
  7218. --------------------
  7219. The bitmap translator is called by the SMARTHLP translator to convert imbedded icons, cursors and
  7220. bitmaps. If it encounters problems, the bitmap translator returns a distinct set of error messages
  7221. of the format "[filename] CVInnnn [explanation]". the following is a list of possible warning
  7222. messages.
  7223.  
  7224. CVI0000  "No message text for message number [number]."
  7225.      This message should not appear. Try rerunning the program. If the message
  7226.      persists contact SMART technical support for assistance.
  7227.  
  7228. CVI0001  "Message number [number] has invalid severity code of [number]."
  7229.      This message should not appear. Try rerunning the program. If the message
  7230.      persists contact SMART technical support for assistance.
  7231.  
  7232. CVI0002  "Input file does not contaon a windows 3 bitmap, curosr or icon."
  7233.      The file given to the icon converter as the input file is not a recognized bitmap,
  7234.      cursor or icon.
  7235.  
  7236. CVI0003  "Cannot open input file."
  7237.      The file given as input could not be open. An invalid filename is the probable cause.
  7238.  
  7239. CVI0004  "Cannot open output file [filename]."
  7240.      The output file count not be opened by the icon converter. The filename may be invalid
  7241.      or there may be a problem with the disk system. For example, the disk used for output may
  7242.      be full or not ready.
  7243.  
  7244. CVI0005  "Cannot allocate buffer of size [number]."
  7245.      The icon converter may require rather large buffers to convert bitmaps and other graphic
  7246.      resources. The required memory could not be allocated.
  7247.  
  7248. CVI0006  "Premature end of input file."
  7249.      While reading the bits of a graphic image, the icon converter detected the end of the file
  7250.      before it found the expected end of the data.
  7251.  
  7252. CVI0007  "System error occured while writing output file [filename]."
  7253.      A system-level error such as a full disk prevented the icon converter from completing its
  7254.      file output.
  7255.  
  7256. CVI0008  "Unsupported RLE image compression format [number]."
  7257.      The valid run-length encoded images for the icon converter are RLE 4 or RLE 8 formats.
  7258.      A value other than one of these was specified in the file header.
  7259.  
  7260. CVI0009  "Converting Windows 3 bitmap [string] to PM bitmap [string]."
  7261.      A windows bitmap has been detected and is being converted.
  7262.  
  7263. CVI0010  "Converting Windows 3 icon [string] to PM icon [String."
  7264.      a Windows icon has been detected and is being converted.
  7265.  
  7266. CVI0011  "Converting Windows 3 cursor [string] to PM pointer [string]."
  7267.      A Windows cursor resource has been detected and is being converted . Presentation Manager
  7268.      calls the Windows cursor a pointer. Dos not confuse this with a memory reference.
  7269.  
  7270. CVI0012  "Copying existing PM file [filename] to file [filename]."
  7271.      The icon converter has detected that the necessary resource already exists in a PM
  7272.      format. However, other conversion utility programs expect target files to have certain
  7273.      names. The conversion utility program copies the PM file to the destination filename.
  7274.  
  7275.   SMART On-Line Help 
  7276.   Utility Processes 
  7277.   Win Help Translator Topics 
  7278.  
  7279.  
  7280. ΓòÉΓòÉΓòÉ 7.3. Graphical Resource Converter Topics ΓòÉΓòÉΓòÉ
  7281.  
  7282. The Graphical Resource Converter Section includes the following topics: 
  7283.  
  7284.     Graphical Resource Converter Introduction 
  7285.     Graphical Resource Converter Options 
  7286.     Graphical Resource Converter Output 
  7287.     Graphical Resource Converter Messages 
  7288.     Graphical Resource Converter Dialog Panel 
  7289.  
  7290.  See Also: 
  7291.  
  7292.   SMART On-Line Help 
  7293.   Utility Processes 
  7294.  
  7295.  
  7296. ΓòÉΓòÉΓòÉ 7.3.1. Graphical Resource Converter Introduction ΓòÉΓòÉΓòÉ
  7297.  
  7298. The SMART Windows to OS/2 Graphical Resource File Conversion utility (SMARTCVT) 
  7299. provides binary conversion of Window's icon and cursor files to OS/2 pointer 
  7300. files.  It also provides conversion of Window's bitmap files and Window's 
  7301. Device Independent Bitmap(DIB) files to OS/2 bitmaps. 
  7302.  
  7303. Both icon and cursor files are referred to as pointer files in OS/2.  The 
  7304. graphical format of Windows icons and cursors is significantly different from 
  7305. OS/2 pointer files. 
  7306.  
  7307. SMARTCVT is a utility that can be executed from the SMART interface panel under 
  7308. the "Resources" menu or can be run from the OS/2 command line or placed in a 
  7309. batch command file. 
  7310.  
  7311.   SMART On-Line Help 
  7312.   Utility Processes 
  7313.   Graphical Resource Converter Topics 
  7314.  
  7315.  
  7316. ΓòÉΓòÉΓòÉ 7.3.2. Graphical Resource Converter Options ΓòÉΓòÉΓòÉ
  7317.  
  7318. Usage of the SMARTCVT command is:
  7319.  
  7320.  SMARTCVT [options] srcfilename tgtfilename
  7321.  
  7322.  
  7323.  srcfilename is the Windows icon, cursor, or bitmap filename
  7324.  tgtfilename is the OS/2 pointer filename or bitmap filename
  7325.  srcfilename can contain wildcard characters '?' and '*'
  7326.  tgtfilename can contain wildcard characters '?' and '*'
  7327.  
  7328. where [options] is one or more of the following:
  7329.  
  7330.  -O         Overwrite existing files
  7331.  
  7332.       This option automatically overwrites the target file if
  7333.       the file already exists.  Normally if the target file
  7334.       exists SMARTCVT will prompt for the action to perform.
  7335.       This option disables the prompting and automatically
  7336.       replaces the existing file.
  7337.  
  7338.  
  7339.  -?         Display command line options
  7340.  
  7341.       This option displays the list of command line options.
  7342.  
  7343.   SMART On-Line Help 
  7344.   Utility Processes 
  7345.   Graphical Resource Converter Topics 
  7346.  
  7347.  
  7348. ΓòÉΓòÉΓòÉ 7.3.3. Graphical Resource Converter Output ΓòÉΓòÉΓòÉ
  7349.  
  7350. SUMMARY INFORMATION
  7351. -------------------
  7352.  
  7353.  The summary information output by SMARTCVT at the completion of
  7354.  file conversion recaps the entire conversion process.  Below is
  7355.  an example of the output contained in the summary information:
  7356.  
  7357.  Files Processed:   10
  7358.  Files Converted:   10
  7359.  Warnings:    0   Errors:    0
  7360.  
  7361.  
  7362. SAMPLE
  7363. ------
  7364.  
  7365. The following sample demonstrates the use of SMARTCVT to convert
  7366. Windows icon and cursor files.  The following command line is entered
  7367. to convert the icon file "SAMPLE.ICO":
  7368.  
  7369.  SMARTCVT SAMPLE.ICO SAMPLE.PTR
  7370.  
  7371. The following command line is entered to convert all icon files in the
  7372. current directory:
  7373.  
  7374.  SMARTCVT *.ICO *.PTR
  7375.  
  7376. The following command line is entered to convert all cursor files in the
  7377. current directory:
  7378.  
  7379.  SMARTCVT *.CUR *.PTR
  7380.  
  7381. The following command line is entered to convert all bitmap files in the
  7382. current directory:
  7383.  
  7384.  SMARTCVT *.BMP *.BMP
  7385.  
  7386.   SMART On-Line Help 
  7387.   Utility Processes 
  7388.   Graphical Resource Converter Topics 
  7389.  
  7390.  
  7391. ΓòÉΓòÉΓòÉ 7.3.4. Graphical Resource Converter Messages ΓòÉΓòÉΓòÉ
  7392.  
  7393. The following types of messages can be issued from SMARTCVT
  7394.  
  7395.  - Informational
  7396.  - Warning
  7397.  - Error
  7398.  
  7399. Informational Messages
  7400. ----------------------
  7401.  
  7402.   I1002 File <file1> converted
  7403.  
  7404.      This message indicates that the resource definition file file1
  7405.      has been successfully converted.
  7406.  
  7407.   I1101 Converting Windows icon <name1> to OS/2 icon
  7408.  
  7409.      The file name1 is a recognized Windows icon file and is
  7410.      being converted to the OS/2 icon (pointer) file format.
  7411.  
  7412.   I1102 Converting Windows cursor <name1> to OS/2 pointer
  7413.  
  7414.      The file name1 is a recognized Windows cursor file and is
  7415.      being converted to the OS/2 pointer file format.
  7416.  
  7417.   I1103 Processing cancelled by user
  7418.  
  7419.      The response to message W2100 was to cancel processing of
  7420.      the remaining icon and cursor files.
  7421.  
  7422.   I1104 File <name1> was not converted
  7423.  
  7424.      The file name1 was not converted because the response to
  7425.      message W2100 was either no or cancel or a file error
  7426.      occurred during processing.
  7427.  
  7428.   I1105 <name1> is already an OS/2 icon; copying file
  7429.  
  7430.      The file name1 is already an OS/2 icon (pointer) file.
  7431.      SMARTCVT copies the source OS/2 icon file to the target
  7432.      file.
  7433.  
  7434.   I1106 <name1> is already an OS/2 pointer; copying file
  7435.  
  7436.      The file name1 is already an OS/2 pointer file.
  7437.      SMARTCVT copies the source OS/2 pointer file to the target
  7438.      file.
  7439.  
  7440.   I1107 <name1> is already an OS/2 bitmap; copying file
  7441.  
  7442.      The file name1 is already an OS/2 bitmap file.
  7443.      SMARTCVT copies the source OS/2 bitmap file to the target
  7444.      file.
  7445.  
  7446. Warning Messages
  7447. ----------------
  7448.  
  7449.   W2100 <name1> already exists. Overwrite (y/n/a/c)?
  7450.  
  7451.      The target file name1 already exists.  This message requires
  7452.      input to select the action to perform.  The following options
  7453.      are available:
  7454.  
  7455.       - y(es)   Replace the existing file
  7456.       - n(o)   Do not replace the existing file.  Proceed to
  7457.             the next file in the specified file list.
  7458.       - a(lways) Replace the existing file and automatically
  7459.             replace any other target files which already
  7460.             exist when converting the rest of the files in
  7461.             the specified file list.
  7462.       - c(ancel) Do not replace the existing file.  Do not process
  7463.             any more files in the specified file list.
  7464.  
  7465. Error Messages
  7466. --------------
  7467.  
  7468.   E3011 Unable to locate file <name1>
  7469.  
  7470.      The source file name1 could not be located.  Check that the
  7471.      filename is specified correctly and that the file exists.
  7472.  
  7473.   E3012 Unable to open file <name1>
  7474.  
  7475.      The file name1 could not be opened.  Check that the filename
  7476.      is specified correctly and that the file exists.
  7477.  
  7478.   E3013 Unable to read file <name1>
  7479.  
  7480.      An error occurred while attempting to read the file name1.
  7481.  
  7482.   E3018 Unknown option: opt1 ignored
  7483.  
  7484.      The command line option opt1 is not recognized by SMARTCVT.
  7485.      The option is ignored and processing continues.
  7486.  
  7487.   E3103 Unable to create target file <name1>
  7488.  
  7489.      SMARTCVT was unable to create the target file name1.  Check
  7490.      that the filename is valid and that enough disk space is
  7491.      available on the specified drive.
  7492.  
  7493.   E3105 <name1> Invalid file format
  7494.  
  7495.      The file name1 does not contain a valid Windows icon or
  7496.      cursor.
  7497.  
  7498.   E3106 <name1> Unrecognized graphics file format
  7499.  
  7500.      The file name1 does not contain a valid Windows icon or
  7501.      cursor.  The format is not recognized by SMARTCVT.
  7502.  
  7503.   SMART On-Line Help 
  7504.   Utility Processes 
  7505.   Graphical Resource Converter Topics 
  7506.  
  7507.  
  7508. ΓòÉΓòÉΓòÉ 7.4. SMART Viewer ΓòÉΓòÉΓòÉ
  7509.  
  7510. The Resource Translator Section includes the following topics: 
  7511.  
  7512. The SMART Viewer provides a context sensitive on-line help to the SMART 
  7513. Migration knowledge base. 
  7514.  
  7515. By providing a topic name, you can display information regarding the migration 
  7516. of the specified keyword. 
  7517.  
  7518. The display windows that are available in this utility are "Topic", "Template", 
  7519. "Prototype",  "Example", and "References". 
  7520.  
  7521. An additional window "History" provides a list of all topics accessed in the 
  7522. current session. 
  7523.  
  7524. Features: 
  7525.  
  7526.     On-line access to SMART Migration data base. 
  7527.     Context sensitive access to migration source platform keywords (if 
  7528.  properly linked from your editor). 
  7529.     Capability to copy most display panels and selected text to the OS/2 
  7530.  clipboard. 
  7531.     WPS aware to drag-and-drop colors and fonts. 
  7532.     External references to OS/2 on-line develop help (if installed) is 
  7533.  automatically created by spawning the VIEWER.EXE help facility. 
  7534.  
  7535.  The SMART Viewer is invoked from an SourceLink through the supplied Rexx Macro 
  7536.  "SMVIEWER.REX".  After you have registered this macro file in SourceLink under 
  7537.  the "Macro" menu you will be able to call up this on-line migration help. 
  7538.  Simply mouse click on a Source Platform keyword and invoke the Rexx Macro with 
  7539.  your assigned hot-key. 
  7540.  
  7541.  If you are using an editor other than SourceLink, you will want to create a 
  7542.  macro or other linking function to spawn SMART Viewer with topic names using 
  7543.  "SMARTVUE.EXE". 
  7544.  
  7545.  The SMART Viewer communicates externally through the proxy process 
  7546.  "SMARTVUE.EXE", which eliminates starting a new instance each time a request 
  7547.  for a new topic is created.  The argument to this executable is the topic name 
  7548.  to be viewed. 
  7549.  
  7550.  SMART View contains a search panel which allows you to enter a desired topic 
  7551.  (keyword) name for viewing. 
  7552.  
  7553.  Selected text from the  "Template", "Prototype", and "Example" window displays 
  7554.  can be copied to the clipboard buffer providing "cut" and "paste" programming 
  7555.  capability from the migration data base to your editor. 
  7556.  
  7557.  Additional functionality for this utility of SMART is explained in the SMART 
  7558.  Viewer on-line help facility accessed from SMART Viewer. 
  7559.  
  7560.  See Also: 
  7561.  
  7562.   SMART On-Line Help 
  7563.   Utility Processes 
  7564.