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