Macro: INITIALIZE_INTERFACE

Module location: FMACDD line 3538 (view source)

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Command: INITIALIZE_INTERFACE Parameters: None. Description: INITIALIZE_INTERFACE initializes the object resource information. It should be executed before any other object related operations are performed. =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

  // B$ obj_flag        bit 0 = in_object, bit 1 = in_class, bit 2 = in proc/func
  // X.AGG agg_count(class)     defined count of objects in class

  // ZA$ procedure/function label for procedures and functions
  // ZB$ current_dep        the current dependant number to assign
  // ZC$ current_message    the current flex message number
  // ZD$ group_size         size of the current item group
  // ZE$ group_id           unique id of current item group
  // ZF$ super_class_count  count of objects in superclass
  // ZG$ temp               temp counter (items, functions etc)
  // ZH$ access_method      the current access method identifyer
  // ZI$ sub_obj_count      the sub object counter
  // ZJ$ current_object     the current_object number

//  #SET ZC$ $400             // begin up high, past predefinded
  #SET ZC$ $1000            // now reserving 4K for predefined msgs

//  #SET ZH$ $4001          // begin access methods here
  #SET ZH$ $40000001        // now using 32-bit msg ids; allows for 256M objs

  #SET ZJ$ 2                // desktop and clipboard are first

  #REPLACE IS$NEW$FMAC |CI1 // indicates that this is the new fmac
  //#REPLACE IS$WINDOWS |CI1  // comment this to create character mode version

  #IFDEF IS$WINDOWS
    #REM EXTENDED FMAC FOR DATAFLEX FOR WINDOWS.
  #ELSE
    #REM EXTENDED FMAC FOR DATAFLEX CHARACTER MODE.
  #ENDIF

#IFDEF IS$WINDOWS

  // Current FMAC Version, Revision and Build
  #REPLACE FMAC_VERSION  |CI6
  #REPLACE FMAC_REVISION |CI0
  #REPLACE FMAC_BUILD    |CI0

  // Define object class types.
  #REPLACE U_DESKTOP            |CI1    // a desktop class object
  #REPLACE U_MESSAGE            |CI2    // a message class object
  #REPLACE U_cm_MENU            |CI3    // a menu class object
  #REPLACE U_cm_EDIT            |CI4    // a edit class object
  #REPLACE U_SCROLLB            |CI5    // a scroll bar class object
  #REPLACE U_cm_LIST            |CI6    // a list class object
  #REPLACE U_cm_BUTTON          |CI7    // a button class object
  #REPLACE U_cm_CHECKBOX        |CI8    // a check box class object
  #REPLACE U_cm_CHECKLIST       |CI9    // a check box class object
  #REPLACE U_cm_FORM            |CI10   // a form class object
  #REPLACE U_cm_FORMLIST        |CI11   // a form class object
  #REPLACE U_CLIENT             |CI12   // a client area class object
  #REPLACE U_cm_TITLE           |CI13   // a title bar class object
  #REPLACE U_cm_ACTION_BAR      |CI14   // a action bar class object
  #REPLACE U_cm_WARNING_MSG     |CI15   // a warning message class object
  #REPLACE U_cm_CRIT_MSG        |CI16   // a critical error class object
  #REPLACE U_cm_ERROR           |CI17   // a standard error class object
  #REPLACE U_cm_HELP            |CI18   // a help class object
  #REPLACE U_ARRAY              |CI19   // a array class of mixed scalars
  #REPLACE U_TRACE              |CI20   // a trace class object
  #REPLACE U_cm_ENTRY           |CI21   // a data entry class object
  #REPLACE U_cm_ENTRYLIST       |CI22   // a data entry class object
  #REPLACE U_cm_DIALOG          |CI23   // a DIALOG area class object
  #REPLACE U_cm_RADIO           |CI24   // a radio button area
  #REPLACE U_cm_RADIOLIST       |CI25   // a radio list  area
  #REPLACE U_cm_VCONSOLE        |CI26   // a virtual console area
  #REPLACE U_CLIPBOARD          |CI27   // the clipboard handler
#ELSE

  // Current FMAC Version, Revision and Build
  #REPLACE FMAC_VERSION  |CI32
  #REPLACE FMAC_REVISION |CI0
  #REPLACE FMAC_BUILD    |CI0

  // Define object class types.
  #REPLACE U_DESKTOP            |CI1    // a desktop class object
  #REPLACE U_MESSAGE            |CI2    // a message class object
  #REPLACE U_MENU               |CI3    // a menu class object
  #REPLACE U_EDIT               |CI4    // a edit class object
  #REPLACE U_SCROLLB            |CI5    // a scroll bar class object
  #REPLACE U_LIST               |CI6    // a list class object
  #REPLACE U_BUTTON             |CI7    // a button class object
  #REPLACE U_CHECKBOX           |CI8    // a check box class object
  #REPLACE U_CHECKLIST          |CI9    // a check box class object
  #REPLACE U_FORM               |CI10   // a form class object
  #REPLACE U_FORMLIST           |CI11   // a form class object
  #REPLACE U_CLIENT             |CI12   // a client area class object
  #REPLACE U_TITLE              |CI13   // a title bar class object
  #REPLACE U_ACTION_BAR         |CI14   // a action bar class object
  #REPLACE U_WARNING_MSG        |CI15   // a warning message class object
  #REPLACE U_CRIT_MSG           |CI16   // a critical error class object
  #REPLACE U_ERROR              |CI17   // a standard error class object
  #REPLACE U_HELP               |CI18   // a help class object
  #REPLACE U_ARRAY              |CI19   // a array class of mixed scalars
  #REPLACE U_TRACE              |CI20   // a trace class object
  #REPLACE U_ENTRY              |CI21   // a data entry class object
  #REPLACE U_ENTRYLIST          |CI22   // a data entry class object
  #REPLACE U_DIALOG             |CI23   // a DIALOG area class object
  #REPLACE U_RADIO              |CI24   // a radio button area
  #REPLACE U_RADIOLIST          |CI25   // a radio list  area
  #REPLACE U_VCONSOLE           |CI26   // a virtual console area
  #REPLACE U_CLIPBOARD          |CI27   // the clipboard handler
#ENDIF

  // Base data structures
  #REPLACE MESSAGE_CLASS        |CI0
  #REPLACE MENU_CLASS           |CI1
  #REPLACE LIST_CLASS           |CI2
  #REPLACE EDIT_CLASS           |CI3
  #REPLACE SCROLL_CLASS         |CI4
  #REPLACE ARRAY_CLASS          |CI5


  // Define physical key names
  #REPLACE KEY_ALT              |VI$8200
  #REPLACE KEY_SHIFT            |VI$8400
  #REPLACE KEY_CTRL             |VI$8800

  #REPLACE KEY_ENTER            |VI$9001
  #REPLACE KEY_TAB              |VI$9002
  #REPLACE KEY_BACK_SPACE       |VI$9003
  #REPLACE KEY_ESCAPE           |VI$9004
  #REPLACE KEY_UP_ARROW         |VI$9005
  #REPLACE KEY_DOWN_ARROW       |VI$9006
  #REPLACE KEY_LEFT_ARROW       |VI$9007
  #REPLACE KEY_RIGHT_ARROW      |VI$9008
  #REPLACE KEY_HOME             |VI$9009
  #REPLACE KEY_END              |VI$900A
  #REPLACE KEY_PGUP             |VI$900B
  #REPLACE KEY_PGDN             |VI$900C
  #REPLACE KEY_INSERT           |VI$900D
  #REPLACE KEY_DELETE           |VI$900E
  #REPLACE KEY_F1               |VI$9010
  #REPLACE KEY_F2               |VI$9011
  #REPLACE KEY_F3               |VI$9012
  #REPLACE KEY_F4               |VI$9013
  #REPLACE KEY_F5               |VI$9014
  #REPLACE KEY_F6               |VI$9015
  #REPLACE KEY_F7               |VI$9016
  #REPLACE KEY_F8               |VI$9017
  #REPLACE KEY_F9               |VI$9018
  #REPLACE KEY_F10              |VI$9019
  #REPLACE KEY_F11              |VI$901A
  #REPLACE KEY_F12              |VI$901B
  #REPLACE KEY_A                |VI$8041
  #REPLACE KEY_B                |VI$8042
  #REPLACE KEY_C                |VI$8043
  #REPLACE KEY_D                |VI$8044
  #REPLACE KEY_E                |VI$8045
  #REPLACE KEY_F                |VI$8046
  #REPLACE KEY_G                |VI$8047
  #REPLACE KEY_H                |VI$8048
  #REPLACE KEY_I                |VI$8049
  #REPLACE KEY_J                |VI$804A
  #REPLACE KEY_K                |VI$804B
  #REPLACE KEY_L                |VI$804C
  #REPLACE KEY_M                |VI$804D
  #REPLACE KEY_N                |VI$804E
  #REPLACE KEY_O                |VI$804F
  #REPLACE KEY_P                |VI$8050
  #REPLACE KEY_Q                |VI$8051
  #REPLACE KEY_R                |VI$8052
  #REPLACE KEY_S                |VI$8053
  #REPLACE KEY_T                |VI$8054
  #REPLACE KEY_U                |VI$8055
  #REPLACE KEY_V                |VI$8056
  #REPLACE KEY_W                |VI$8057
  #REPLACE KEY_X                |VI$8058
  #REPLACE KEY_Y                |VI$8059
  #REPLACE KEY_Z                |VI$805A
  #REPLACE KEY_SPACE            |VI$8020
  #REPLACE KSPACE               |VI$8020
  #REPLACE KEY_0                |VI$8030
  #REPLACE KEY_1                |VI$8031
  #REPLACE KEY_2                |VI$8032
  #REPLACE KEY_3                |VI$8033
  #REPLACE KEY_4                |VI$8034
  #REPLACE KEY_5                |VI$8035
  #REPLACE KEY_6                |VI$8036
  #REPLACE KEY_7                |VI$8037
  #REPLACE KEY_8                |VI$8038
  #REPLACE KEY_9                |VI$8039
  #REPLACE KEY_PLUS             |VI$802B
  #REPLACE KEY_MINUS            |VI$802D
  #REPLACE KEY_EQUAL            |VI$803D
  #REPLACE KEY_BACK_SLASH       |VI$805C
  #REPLACE KEY_SLASH            |VI$802F

  // Define Accelerator key names.
  #REPLACE KHELP                |CI274
  #REPLACE KSAVE_RECORD         |CI265
  #REPLACE KDELETE_RECORD       |CI266
  #REPLACE KEXIT_FUNCTION       |CI281
  #REPLACE KEXIT_APPLICATION    |CI282
  #REPLACE KPROMPT              |CI283
  #REPLACE KPRINT_SCREEN        |CI258
  #REPLACE KCLEAR               |CI269
  #REPLACE KREFRESH_SCREEN      |CI284
  #REPLACE KSWITCH              |CI285
  #REPLACE KSWITCH_BACK         |CI286
  #REPLACE KFIND                |CI263
  #REPLACE KFIND_PREVIOUS       |CI270
  #REPLACE KFIND_NEXT           |CI271
  #REPLACE KSUPER_FIND          |CI264
  #REPLACE KSUPER_FIND_PREVIOUS |CI287
  #REPLACE KSUPER_FIND_NEXT     |CI288
  #REPLACE KACTION_BAR          |CI289
  #REPLACE KENTER               |CI257
  #REPLACE KUPARROW             |CI272
  #REPLACE KDOWNARROW           |CI273
  #REPLACE KLEFTARROW           |CI260
  #REPLACE KRIGHTARROW          |CI261
  #REPLACE KSCROLL_BACK         |CI290
  #REPLACE KSCROLL_FORWARD      |CI291
  #REPLACE KSCROLL_LEFT         |CI292
  #REPLACE KSCROLL_RIGHT        |CI293
  #REPLACE KBEGIN_OF_LINE       |CI294
  #REPLACE KEND_OF_LINE         |CI295
  #REPLACE KNEXT_ITEM           |CI296
  #REPLACE KPREVIOUS_ITEM       |CI262
  #REPLACE KDELETE_CHARACTER    |CI277
  #REPLACE KERASE_END_OF_LINE   |CI297
  #REPLACE KBACK_SPACE          |CI278
  #REPLACE KCANCEL              |CI259
  #REPLACE KBEGIN_OF_PANEL      |CI298
  #REPLACE KEND_OF_PANEL        |CI299
  #REPLACE KBEGIN_OF_DATA       |CI300
  #REPLACE KEND_OF_DATA         |CI301
  #REPLACE KWORD_LEFT           |CI302
  #REPLACE KWORD_RIGHT          |CI303
  #REPLACE KINSERT              |CI276
  #REPLACE KCLEAR_AND_RETURN    |CI279
  #REPLACE KADD_MODE            |CI304
  #REPLACE KPASTE               |CI305
  #REPLACE KCOPY                |CI306
  #REPLACE KCUT                 |CI307
  #REPLACE KCLEAR_ALL           |CI308
  #REPLACE KMOUSE               |CI309
  #REPLACE KMARK                |CI310
  #REPLACE KZOOM                |CI311
  #REPLACE KCLOSE_PANEL         |CI312

  //OLD KEY DEFINITIONS
  #REPLACE KCALCULATE           |CI267
  #REPLACE KUSER                |CI268
  #REPLACE KUSER2               |CI275
  #REPLACE KCLEOW               |CI280

  // Built in UI messages
  #REPLACE GET_ACTIVE_STATE         |CI$0001
  #REPLACE GET_PARENT               |CI$0002
  #REPLACE SET_PARENT               |CI$0003
  #REPLACE MSG_PAGE_OBJECT          |CI$0004
  #REPLACE GET_LOCATION             |CI$0005
  #REPLACE SET_LOCATION             |CI$0006
  #REPLACE GET_ENTRY_MSG            |CI$0007
  #REPLACE SET_ENTRY_MSG            |CI$0008
  #REPLACE GET_EXIT_MSG             |CI$0009
  #REPLACE SET_EXIT_MSG             |CI$000A
  #REPLACE SET_SIZE                 |CI$000B
  #REPLACE GET_SIZE                 |CI$000C
  #REPLACE GET_CURRENT_ITEM         |CI$000D
  #REPLACE SET_CURRENT_ITEM         |CI$000E
  #REPLACE GET_TOP_ITEM             |CI$000F
  #REPLACE SET_TOP_ITEM             |CI$0010
  #REPLACE GET_VALUE                |CI$0011
  #REPLACE SET_VALUE                |CI$0012
  #REPLACE GET_MESSAGE              |CI$0013
  #REPLACE SET_MESSAGE              |CI$0014
  #REPLACE GET_ITEM_COUNT           |CI$0015
  #REPLACE SET_ITEM_COUNT           |CI$0016
  #REPLACE GET_SELECT_COUNT         |CI$0017
  #REPLACE SET_SELECT_COUNT         |CI$0018
  #REPLACE GET_MULTI_SELECT_MSG     |CI$0019
  #REPLACE SET_MULTI_SELECT_MSG     |CI$001A
  #REPLACE SET_FOCUS_MODE           |CI$001B
  #REPLACE GET_FOCUS_MODE           |CI$001C
  #REPLACE SET_VISIBLE_STATE        |CI$001D
  #REPLACE GET_VISIBLE_STATE        |CI$001E
  #REPLACE SET_SELECT_MODE          |CI$001F
  #REPLACE GET_SELECT_MODE          |CI$0020
  #REPLACE SET_WRAP_STATE           |CI$0021
  #REPLACE GET_WRAP_STATE           |CI$0022
  #REPLACE SET_SHADOW_STATE         |CI$0023
  #REPLACE GET_SHADOW_STATE         |CI$0024
  #REPLACE GET_SELECT_STATE         |CI$0025
  #REPLACE SET_SELECT_STATE         |CI$0026
  #REPLACE SET_AUTOCLEAR_STATE      |CI$0027
  #REPLACE GET_AUTOCLEAR_STATE      |CI$0028
  #REPLACE SET_CENTER_STATE         |CI$0029
  #REPLACE GET_CENTER_STATE         |CI$002A
  #REPLACE SET_CHECKBOX_ITEM_STATE  |CI$002B
  #REPLACE GET_CHECKBOX_ITEM_STATE  |CI$002C
  #REPLACE MSG_STOP_UI              |CI$002D
  #REPLACE MSG_ERROR                |CI$002E
  #REPLACE MSG_HELP                 |CI$002F
  #REPLACE MSG_BELL                 |CI$0030
  #REPLACE MSG_PAINT                |CI$0031
  #REPLACE MSG_NONE                 |CI$0032
  #REPLACE MSG_EXIT                 |CI$0033
  #REPLACE MSG_NEXT                 |CI$0034
  #REPLACE MSG_PULL_RIGHT           |CI$0035
  #REPLACE MSG_PULL_LEFT            |CI$0036
  #REPLACE MSG_KEY                  |CI$0037
  #REPLACE MSG_INSERT_ITEM          |CI$0038
  #REPLACE MSG_ADD_ITEM             |CI$0039
  #REPLACE MSG_DELETE_ITEM          |CI$003A
  #REPLACE MSG_DELETE_DATA          |CI$003B
  #REPLACE MSG_SORT_ITEMS           |CI$003C
  #REPLACE GET_ITEM_MATCHING        |CI$003D
  #REPLACE GET_AUX_VALUE            |CI$003E
  #REPLACE SET_AUX_VALUE            |CI$003F
  #REPLACE GET_SEARCH_MODE          |CI$0040
  #REPLACE SET_SEARCH_MODE          |CI$0041
  #REPLACE GET_INVERSE_STATE        |CI$0042
  #REPLACE SET_INVERSE_STATE        |CI$0043
  #REPLACE MSG_SCROLL               |CI$0044
  #REPLACE SET_CLASS_COLORS         |CI$0045
  #REPLACE GET_HORIZONTAL_INCREMENT |CI$0046
  #REPLACE SET_HORIZONTAL_INCREMENT |CI$0047
  #REPLACE MSG_UP                   |CI$0048
  #REPLACE MSG_DOWN                 |CI$0049
  #REPLACE MSG_RIGHT                |CI$004A
  #REPLACE MSG_LEFT                 |CI$004B
  #REPLACE MSG_BEGINNING_OF_DATA    |CI$004C
  #REPLACE MSG_END_OF_DATA          |CI$004D
  #REPLACE MSG_BEGINNING_OF_PANEL   |CI$004E
  #REPLACE MSG_END_OF_PANEL         |CI$004F
  #REPLACE MSG_BEGINNING_OF_LINE    |CI$0050
  #REPLACE MSG_END_OF_LINE          |CI$0051
  #REPLACE MSG_PAGE_UP              |CI$0052
  #REPLACE MSG_PAGE_DOWN            |CI$0053
  #REPLACE SET_INSERT_MODE          |CI$0054
  #REPLACE MSG_GOTO_LINE            |CI$0055
  #REPLACE MSG_MOVE_ABSOLUTE        |CI$0056
  #REPLACE MSG_MOVE_RELATIVE        |CI$0057
  #REPLACE MSG_MARK_ON              |CI$0058
  #REPLACE MSG_PASTE                |CI$0059
  #REPLACE MSG_CUT                  |CI$005A
  #REPLACE MSG_COPY                 |CI$005B
  #REPLACE MSG_INSERT               |CI$005C
  #REPLACE MSG_DELETE_CHAR          |CI$005D
  #REPLACE MSG_DELETE_LINE          |CI$005E
  #REPLACE MSG_DELETE_TO_EOL        |CI$005F
  #REPLACE MSG_FIND                 |CI$0060
  #REPLACE GET_FIND                 |CI$0060 //dup
  #REPLACE MSG_REPLACE              |CI$0061
  #REPLACE GET_REPLACE              |CI$0061 //dup
  #REPLACE MSG_PRINT                |CI$0062
  #REPLACE GET_MARK                 |CI$0063
  #REPLACE GET_CHANGED_STATE        |CI$0064
  #REPLACE SET_CHANGED_STATE        |CI$0065
  #REPLACE SET_RIGHT_MARGIN         |CI$0066
  #REPLACE GET_LINE_COUNT           |CI$0067
  #REPLACE SET_STATUS_LINE_STATE    |CI$0068
  #REPLACE SET_BLOCK_MOUSE_STATE    |CI$0069
  #REPLACE GET_BLOCK_MOUSE_STATE    |CI$006A
  #REPLACE SET_COLUMN_MODE          |CI$006B
  #REPLACE GET_COLUMN_MODE          |CI$006C
  #REPLACE SET_FILE_NAME            |CI$006D
  #REPLACE GET_FILE_NAME            |CI$006E
  #REPLACE MSG_DEFAULT_KEY          |CI$006F
  #REPLACE SET_DYNAMIC_UPDATE_STATE |CI$0070
  #REPLACE GET_FOCUS                |CI$0071
  #REPLACE MSG_REFRESH_SCREEN       |CI$0072
  #REPLACE MSG_PREVIOUS             |CI$0073
  #REPLACE SET_CHECK_STRING         |CI$0074
  #REPLACE MSG_ACTIVATE             |CI$0075
  #REPLACE MSG_ACTIVATE_GROUP       |CI$0076
  #REPLACE MSG_DEACTIVATE           |CI$0077
  #REPLACE MSG_DEACTIVATE_GROUP     |CI$0078
  #REPLACE SET_LOCAL_ROTATE_STATE   |CI$0079
  #REPLACE GET_LOCAL_ROTATE_STATE   |CI$007A
  #REPLACE SET_CLIENT_AREA_STATE    |CI$007B
  #REPLACE GET_CLIENT_AREA_STATE    |CI$007C
  #REPLACE GET_READ_ONLY_STATE      |CI$007D
  #REPLACE SET_READ_ONLY_STATE      |CI$007E
  #REPLACE SET_LINE_WIDTH           |CI$007F
  #REPLACE GET_LINE_SIZE            |CI$0080
  #REPLACE GET_DISPLAY_SIZE         |CI$0081
  #REPLACE SET_SCROLL_BAR_VISIBLE_STATE |CI$0082
  #REPLACE SET_ORIGIN               |CI$0083
  #REPLACE GET_ORIGIN               |CI$0084
  #REPLACE GET_POSITION             |CI$0085
  #REPLACE MSG_TRUE                 |CI$0086
  #REPLACE MSG_FALSE                |CI$0087
  #REPLACE MSG_LAST_KEY_PRESSED     |CI$0088
  #REPLACE GET_LAST_KEY_PRESSED     |CI$0088 //dup
  #REPLACE SET_RADIO_STRING         |CI$0089
  #REPLACE SET_ENTRY_STATE          |CI$008A
  #REPLACE GET_ENTRY_STATE          |CI$008B
  #REPLACE MSG_READ                 |CI$008C
  #REPLACE MSG_WRITE                |CI$008D
  #REPLACE SET_SCROLL_BAR_OFFSET    |CI$008E
  #REPLACE GET_SCROLL_BAR_OFFSET    |CI$008F
  #REPLACE MSG_ITEM_CHANGE          |CI$0090
  #REPLACE GET_ITEM_CHANGED_STATE   |CI$0091
  #REPLACE SET_ITEM_CHANGED_STATE   |CI$0092
  #REPLACE GET_AUTO_TOP_ITEM_STATE  |CI$0093
  #REPLACE SET_AUTO_TOP_ITEM_STATE  |CI$0094
  #REPLACE SET_KBD_INPUT_MODE       |CI$0095
  #REPLACE MSG_SUPPLY_KEY           |CI$0096
  #REPLACE GET_INSERT_MODE          |CI$0097
  #REPLACE MSG_OK                   |CI$0098
  #REPLACE MSG_CANCEL               |CI$0099
  #REPLACE GET_ARRAY_VALUE          |CI$009A
  #REPLACE SET_ARRAY_VALUE          |CI$009B
  #REPLACE MSG_CONSTRUCT_OBJECT     |CI$009C
  #REPLACE MSG_ACTIVATING           |CI$009D
  #REPLACE MSG_TRACE_SWITCH         |CI$009E
  #REPLACE MSG_TRACE_MESSAGE        |CI$009F
  #REPLACE MSG_TRACE_STEP           |CI$00A0
  #REPLACE MSG_TRACE_OUTPUT         |CI$00A1
  #REPLACE MSG_DEACTIVATING         |CI$00A2
  #REPLACE GET_CLASS                |CI$00A3
  #REPLACE GET_HELP_NAME            |CI$00A4
  #REPLACE MSG_EXIT_APPLICATION     |CI$00A5
  #REPLACE MSG_PRINT_SCREEN         |CI$00A6
  #REPLACE GET_RIGHT_MARGIN         |CI$00A7
  #REPLACE GET_DELEGATION_MODE      |CI$00A8
  #REPLACE SET_DELEGATION_MODE      |CI$00A9
  #REPLACE GET_BASE_CLASS           |CI$00AA
  #REPLACE SET_ITEM_ENTRY_MSG       |CI$00AB
  #REPLACE GET_ITEM_ENTRY_MSG       |CI$00AC
  #REPLACE SET_ITEM_EXIT_MSG        |CI$00AD
  #REPLACE GET_ITEM_EXIT_MSG        |CI$00AE
  #REPLACE SET_ITEM_VALIDATE_MSG    |CI$00AF
  #REPLACE GET_ITEM_VALIDATE_MSG    |CI$00B0
  #REPLACE SET_DATA_FILE            |CI$00B1
  #REPLACE GET_DATA_FILE            |CI$00B2
  #REPLACE SET_DATA_FIELD           |CI$00B3
  #REPLACE GET_DATA_FIELD           |CI$00B4
  #REPLACE SET_DATA_WINDOW          |CI$00B5
  #REPLACE GET_DATA_WINDOW          |CI$00B6
  #REPLACE SET_ITEM_OPTIONS         |CI$00B7
  #REPLACE GET_ITEM_OPTIONS         |CI$00B8
  #REPLACE SET_ITEM_OPTION          |CI$00B9
  #REPLACE GET_ITEM_OPTION          |CI$00BA
  #REPLACE MSG_ENTRY_UPDATE         |CI$00BB
  #REPLACE MSG_ENTRY_FIND           |CI$00BC
  #REPLACE MSG_ENTRY_SUPERFIND      |CI$00BD
  #REPLACE MSG_ENTRY_DISPLAY        |CI$00BE
  #REPLACE MSG_ENTRY_CLEAR          |CI$00BF
  #REPLACE GET_VALIDATE_ITEMS       |CI$00C0
  #REPLACE GET_ITEM_WINDOW          |CI$00C1
  #REPLACE MSG_COPY_ITEMS           |CI$00C2
  #REPLACE GET_IMAGE_NUMBER         |CI$00C3
  #REPLACE MSG_ENTRY_CLEAR_ALL      |CI$00C4
  #REPLACE MSG_SELECT_TOGGLING      |CI$00C5
  #REPLACE GET_ITEM_ENTRY           |CI$00C6
  #REPLACE GET_ITEM_EXIT            |CI$00C7
  #REPLACE GET_ITEM_VALIDATE        |CI$00C8
  #REPLACE GET_READ_ONLY_ERROR      |CI$00C9
  #REPLACE GET_NAME                 |CI$00CA
  #REPLACE GET_ENTRY                |CI$00CB
  #REPLACE MSG_DESTROY_OBJECT       |CI$00CC
  #REPLACE MSG_DESTROY_ALL_OBJECTS  |CI$00CD
  #REPLACE GET_MOUSE_HIT            |CI$00CE
  #REPLACE SET_OBJECT_COLOR         |CI$00CF
  #REPLACE SET_ARROWS               |CI$00D0
  #REPLACE MSG_SWITCH               |CI$00D1
  #REPLACE MSG_SWITCH_BACK          |CI$00D2
  #REPLACE GET_WAS_FOUND            |CI$00D3
  #REPLACE GET_STATUS_LINE_STATE    |CI$00D4
  #REPLACE SET_HIGHLIGHT_STATE      |CI$00D5    // INTERNAL
  #REPLACE MSG_ROTATE_UP            |CI$00D6    // INTERNAL
  #REPLACE MSG_POP_PAGES            |CI$00D7    // INTERNAL
  #REPLACE SET_CLASS                |CI$00D8    // INTERNAL
  #REPLACE MSG_FETCH_HELP           |CI$00D9    // INTERNAL
  #REPLACE GET_OBJECT_ID            |CI$00DA    // INTERNAL
  #REPLACE MSG_INIT_INSTANCE        |CI$00DB    // INTERNAL
  #REPLACE MSG_PAGE                 |CI$00DC    // INTERNAL
  #REPLACE MSG_PAGE_DELETE          |CI$00DD    // INTERNAL
  //#REPLACE GET_COLORS             |CI$00DE    // INTERNAL
  #REPLACE GET_BAR_LOCATION         |CI$00DF    // INTERNAL
  #REPLACE RETURN_LOCATION          |CI$00E0    // INTERNAL
  #REPLACE MSG_CHANGE_LOCATION      |CI$00E1    // INTERNAL
  #REPLACE MSG_WRITE_DBMS           |CI$00E2
  #REPLACE MSG_READ_DBMS            |CI$00E3
  #REPLACE MSG_WRITE_IMAGE          |CI$00E2    // same as dbms
  #REPLACE MSG_READ_IMAGE           |CI$00E3    // same as dbms
  #REPLACE GET_STRING_VALUE         |CI$00E4
  #REPLACE GET_NUMBER_VALUE         |CI$00E5
  #REPLACE GET_DATE_VALUE           |CI$00E6
  #REPLACE GET_INTEGER_VALUE        |CI$00E7
  #REPLACE GET_REAL_VALUE           |CI$00E8
  #REPLACE SET_BASE_ITEM            |CI$00E9
  #REPLACE GET_BASE_ITEM            |CI$00EA
  #REPLACE SET_ITEM_LIMIT           |CI$00EB
  #REPLACE GET_ITEM_LIMIT           |CI$00EC
  #REPLACE MSG_MARK_OFF             |CI$00ED
  #REPLACE SET_SEARCH_CASE          |CI$00EE
  #REPLACE SET_PRIOR_FOCUS          |CI$00EF
  #REPLACE GET_PRIOR_FOCUS          |CI$00F0
  #REPLACE SET_NEXT_FOCUS           |CI$00F1
  #REPLACE GET_NEXT_FOCUS           |CI$00F2
  #REPLACE SET_SCROLLBAR            |CI$00F3
  #REPLACE GET_ASCII_STATE          |CI$00F4
  #REPLACE SET_ASCII_STATE          |CI$00F5
  #REPLACE GET_TEXT_INDENT          |CI$00F6
  #REPLACE SET_TEXT_INDENT          |CI$00F7
  #REPLACE MSG_ENTRY_AUTOFIND       |CI$00F8
  #REPLACE SET_SCOPE_STATE          |CI$00F9
  #REPLACE GET_SCOPE_STATE          |CI$00FA
  #REPLACE MSG_MOUSE_CHANGE_FOCUS   |CI$00FB
  #REPLACE GET_CHILD_COUNT          |CI$00FC
  #REPLACE MSG_MOUSE_UP             |CI$00FD
  #REPLACE MSG_MOUSE_UP2            |CI$00FE
  #REPLACE MSG_MOUSE_UP3            |CI$00FF
  #REPLACE MSG_MOUSE_CLICK          |CI$0100
  #REPLACE MSG_MOUSE_CLICK2         |CI$0101
  #REPLACE MSG_MOUSE_CLICK3         |CI$0102
  #REPLACE MSG_MOUSE_DOWN           |CI$0103
  #REPLACE MSG_MOUSE_DOWN2          |CI$0104
  #REPLACE MSG_MOUSE_DOWN3          |CI$0105
  #REPLACE MSG_MOUSE_DRAG           |CI$0106
  #REPLACE MSG_MOUSE_DRAG2          |CI$0107
  #REPLACE MSG_MOUSE_DRAG3          |CI$0108
  #REPLACE GET_ABSOLUTE_MOUSE_LOCATION |CI$0109
  #REPLACE SET_ABSOLUTE_MOUSE_LOCATION |CI$010A
  #REPLACE GET_DYNAMIC_UPDATE_STATE |CI$010B
  #REPLACE SET_MAX_LINES            |CI$010C
  #REPLACE GET_MAX_LINES            |CI$010D
  #REPLACE MSG_VIRTUAL_CONSOLE      |CI$010E
  #REPLACE GET_NEXT_ENTRY_OK        |CI$010F
  #REPLACE GET_PREVIOUS_ENTRY_OK    |CI$0110
  #REPLACE SET_DYNAMIC_COLORS       |CI$0111
  #REPLACE SET_NEW_ITEM             |CI$0112
  #REPLACE SET_BROADCAST_STATE      |CI$0113
  #REPLACE GET_BROADCAST_STATE      |CI$0114
  #REPLACE GET_WRAPPING             |CI$0115
  #REPLACE GET_ROW_CHANGING         |CI$0116
  #REPLACE MSG_ADD_FOCUS            |CI$0117
  #REPLACE MSG_REMOVE_OBJECT        |CI$0118
  #REPLACE MSG_RELEASE_FOCUS        |CI$0119
  #REPLACE MSG_ENTERING             |CI$011A
  #REPLACE MSG_EXITING              |CI$011B
  #REPLACE MSG_ENTERING_SCOPE       |CI$011C
  #REPLACE MSG_EXITING_SCOPE        |CI$011D
  #REPLACE MSG_SWITCH_NEXT_GROUP    |CI$011E
  #REPLACE MSG_SWITCH_PRIOR_GROUP   |CI$011F
  #REPLACE GET_CURRENT_SCOPE        |CI$0120
  #REPLACE SET_CURRENT_SCOPE        |CI$0121
  #REPLACE MSG_POPUP                |CI$0122
  #REPLACE MSG_POPUP_GROUP          |CI$0123
  #REPLACE SET_POPUP_STATE          |CI$0124
  #REPLACE GET_POPUP_STATE          |CI$0125
  #REPLACE SET_RING_STATE           |CI$0126
  #REPLACE GET_RING_STATE           |CI$0127
  #REPLACE MSG_MOVE_FOCUS_TREE      |CI$0128
  #REPLACE SET_PROMPT_OBJECT        |CI$0129
  #REPLACE GET_PROMPT_OBJECT        |CI$012A
  #REPLACE SET_ZOOM_OBJECT          |CI$012B
  #REPLACE GET_ZOOM_OBJECT          |CI$012C
  #REPLACE GET_PRIOR_LEVEL          |CI$012D
  #REPLACE GET_NEXT_LEVEL           |CI$012E
  #REPLACE GET_PRIOR_SCOPE          |CI$012F
  #REPLACE GET_NEXT_SCOPE           |CI$0130
  #REPLACE MSG_SWITCH_PRIOR_SCOPE   |CI$0131
  #REPLACE MSG_SWITCH_NEXT_SCOPE    |CI$0132
  #REPLACE SET_ATTACH_PARENT_STATE  |CI$0133
  #REPLACE GET_ATTACH_PARENT_STATE  |CI$0134
  #REPLACE MSG_CHILD_WRAPPING       |CI$0135
  #REPLACE SET_DISPLAY_MODE         |CI$0136
  #REPLACE GET_DISPLAY_MODE         |CI$0137
  #REPLACE MSG_COLOR_BLOCK          |CI$0138
  #REPLACE MSG_NEXT_OBJECT          |CI$0139
  #REPLACE MSG_PRIOR_OBJECT         |CI$013A
  #REPLACE SET_APPLICATION_NAME     |CI$013B
  #REPLACE GET_APPLICATION_NAME     |CI$013C
  #REPLACE SET_MODULE_NAME          |CI$013D
  #REPLACE GET_MODULE_NAME          |CI$013E
  #REPLACE GET_LAST_CHILD           |CI$013F
  #REPLACE SET_WINDOW_COLOR         |CI$0140
  #REPLACE GET_WINDOW_COLOR         |CI$0141
  #REPLACE MSG_PROCESS_KEY          |CI$0142
  #REPLACE MSG_ACTIVATE_SCOPE       |CI$0143
  #REPLACE GET_FIND_SCOPE           |CI$0144
  #REPLACE GET_SCOPE_FOCUS          |CI$0145
  #REPLACE GET_VALID_ITEM           |CI$0146
  #REPLACE MSG_UPDATE_DISPLAY       |CI$0147
  #REPLACE SET_ITEM                 |CI$0148
  #REPLACE MSG_TRACE_COMMAND        |CI$0149    // INTERNAL
  #REPLACE GET_OBJECT_COLOR         |CI$014A
  #REPLACE SET_OBJECT_VALIDATION    |CI$014B
  #REPLACE GET_OBJECT_VALIDATION    |CI$014C
  #REPLACE GET_NEXT_OBJECT_ID       |CI$014D
  #REPLACE GET_PRIOR_OBJECT_ID      |CI$014E
  #REPLACE GET_CLASS_COLORS         |CI$014F
  #REPLACE GET_LOCATION_TYPE        |CI$0150
  #REPLACE GET_OBJECT_SIZE          |CI$0151
  #REPLACE GET_IN_USE_STATE         |CI$0152
  #REPLACE SET_IN_USE_STATE         |CI$0153
  #REPLACE MSG_ATTACH_DEO_TO_SERVER |CI$0154
  #REPLACE MSG_REQUEST_CLEAR_ALL    |CI$0155
  #REPLACE MSG_CLEAR                |CI$0156
  #REPLACE SET_CURRENT_RECORD       |CI$0157
  #REPLACE GET_CURRENT_RECORD       |CI$0158
  #REPLACE MSG_REBUILD_CONSTRAINTS  |CI$0159
  #REPLACE MSG_CONSTRAIN            |CI$015A
  #REPLACE SET_MAIN_FILE            |CI$015B
  #REPLACE GET_MAIN_FILE            |CI$015C
  #REPLACE GET_FIND_SERVER          |CI$015D
  #REPLACE GET_LOCATE_SERVER        |CI$015E
  #REPLACE MSG_MARK_AS_COMPONENT    |CI$015F
  #REPLACE MSG_DELETING             |CI$0160
  #REPLACE GET_VALIDATE_DELETE      |CI$0161
  #REPLACE MSG_REQUEST_DELETE       |CI$0162
  #REPLACE MSG_DISPLAY              |CI$0163
  #REPLACE MSG_RELATE_MAIN_FILE     |CI$0164
  #REPLACE MSG_CLEAR_UI             |CI$0165
  #REPLACE MSG_DISPLAY_UI           |CI$0166
  #REPLACE MSG_REQUEST_ASSIGN       |CI$0167
  #REPLACE GET_VALIDATE_SAVE        |CI$0168
  #REPLACE MSG_ATTACH_MAIN_FILE     |CI$0169
  #REPLACE MSG_REQUEST_CLEAR        |CI$016A
  #REPLACE MSG_BACKOUT              |CI$016B
  #REPLACE MSG_UPDATE               |CI$016C
  #REPLACE MSG_SAVE_MAIN_FILE       |CI$016D
  #REPLACE MSG_DELETE_MAIN_FILE     |CI$016E
  #REPLACE GET_ENTRY_PERMISSIVE_STATE |CI$016F
  #REPLACE SET_ENTRY_PERMISSIVE_STATE |CI$0170
  #REPLACE SET_ORDERING             |CI$0171
  #REPLACE GET_ORDERING             |CI$0172
  #REPLACE GET_COMPONENT_STATE      |CI$0173
  #REPLACE SET_COMPONENT_STATE      |CI$0174
  #REPLACE GET_HAS_COMPONENTS_STATE |CI$0175
  #REPLACE SET_HAS_COMPONENTS_STATE |CI$0176
  #REPLACE MSG_REQUEST_SAVE         |CI$0177
  #REPLACE MSG_REMOVE_FOCUS         |CI$0178
  #REPLACE MSG_ATTACH_SERVER        |CI$0179
  #REPLACE MSG_DETACH_SERVER        |CI$017A
  #REPLACE MSG_ATTACH_CLIENT        |CI$017B
  #REPLACE MSG_DETACH_CLIENT        |CI$017C
  #REPLACE MSG_ADD_USER_INTERFACE   |CI$017D
  #REPLACE MSG_REMOVE_USER_INTERFACE |CI$017E
  #REPLACE MSG_MAIN_FILE_CHANGED    |CI$017F
  #REPLACE GET_IS_SUPERFIND_REQUIRED |CI$0180
  #REPLACE MSG_REQUEST_FIND         |CI$0181
  #REPLACE MSG_ADD_PARENT_FILE      |CI$0182
  #REPLACE MSG_REMOVE_PARENT_FILE   |CI$0183
  #REPLACE MSG_REQUEST_SUPERFIND    |CI$0184
  #REPLACE MSG_REQUEST_READ         |CI$0185
  #REPLACE MSG_READ_BY_RECNUM       |CI$0186
  #REPLACE MSG_FIND_BY_RECNUM       |CI$0187
  #REPLACE MSG_ESTABLISH_FIND_DIRECTION |CI$0188
  #REPLACE MSG_LOCATE_NEXT          |CI$0189
  #REPLACE GET_RECORD_NOT_FOUND     |CI$018A
  #REPLACE MSG_INIT_CLASS           |CI$018B
  #REPLACE SET_IMAGE_NUMBER         |CI$018C
  #REPLACE GET_ROW                  |CI$018D
  #REPLACE GET_CURRENT_ROW          |CI$018E
  #REPLACE GET_TOP_ROW              |CI$018F
  #REPLACE GET_BOTTOM_ITEM          |CI$0190
  #REPLACE GET_BOTTOM_ROW           |CI$0191
  #REPLACE GET_ROW_COUNT            |CI$0192
  #REPLACE GET_DISPLAYABLE_ROWS     |CI$0193
  #REPLACE MSG_ADD_ROW              |CI$0194
  #REPLACE MSG_INSERT_ROW           |CI$0195
  #REPLACE SET_PALETTE_COLOR        |CI$0196
  #REPLACE GET_PALETTE_COLOR        |CI$0197
  #REPLACE SET_CLASS_PALETTE        |CI$0198
  #REPLACE GET_CLASS_PALETTE        |CI$0199
  #REPLACE GET_NO_DELETE_STATE      |CI$019A
  #REPLACE SET_NO_DELETE_STATE      |CI$019B
  #REPLACE MSG_REQUEST_ENTRY_UPDATE |CI$019C
  #REPLACE MSG_SCROLL_PAINT         |CI$019D
  #REPLACE MSG_SHOW_ITEM            |CI$019E
  #REPLACE SET_EXTERNAL_PAINT_STATE |CI$019F
  #REPLACE GET_EXTERNAL_PAINT_STATE |CI$01A0
  #REPLACE SET_MATRIX_SIZE          |CI$01A1
  #REPLACE GET_MATRIX_SIZE          |CI$01A2
  #REPLACE SET_SKIP_STATE           |CI$01A3
  #REPLACE GET_SKIP_STATE           |CI$01A4
  #REPLACE GET_REQUEST_VALIDATE     |CI$01A5
  #REPLACE GET_AUTO_FILL_STATE      |CI$01A6
  #REPLACE SET_AUTO_FILL_STATE      |CI$01A7
  #REPLACE GET_FIND_PERMISSIVE_STATE |CI$01A8
  #REPLACE SET_FIND_PERMISSIVE_STATE |CI$01A9
  #REPLACE MSG_TRANSACTION_ABORTED  |CI$01AA
  #REPLACE MSG_CLEAR_ALL            |CI$01AB
  #REPLACE MSG_CREATING             |CI$01AC
  #REPLACE MSG_DESTROYING           |CI$01AD // OBSOLETE
  #REPLACE GET_SHOULD_SAVE          |CI$01AE
  #REPLACE GET_WHICH_DATA_SET       |CI$01AF
  #REPLACE GET_VALIDATE_CONSTRAINTS |CI$01B0
  #REPLACE MSG_ERROR_REPORT         |CI$01B1
  #REPLACE MSG_REQUEST_RELATE       |CI$01B2
  #REPLACE GET_ERROR_TEXT           |CI$01B3
  #REPLACE GET_SUGGESTED_ORDERING   |CI$01B4
  #REPLACE SET_SUGGESTED_ORDERING   |CI$01B5
  #REPLACE GET_NO_RELATE_STATE      |CI$01B6
  #REPLACE SET_NO_RELATE_STATE      |CI$01B7
  #REPLACE GET_WINDOW_LOCATION      |CI$01B8
  #REPLACE GET_SIGNON_STATUS        |CI$01B9
//  #REPLACE MSG_ADD_WATCHER          |CI$01BA
//  #REPLACE MSG_REMOVE_WATCHER       |CI$01BB
  #REPLACE GET_SEARCH_CASE          |CI$01BC
  #REPLACE GET_SHOULD_SAVE_ROW      |CI$01BD
  #REPLACE MSG_DISPLAY_STATUS       |CI$01BE
  #REPLACE MSG_CLEAR_SET            |CI$01BF
  #REPLACE GET_AUTOFIND_ITEM        |CI$01C0
  #REPLACE SET_KEY_PATH             |CI$01C1
  #REPLACE GET_KEY_PATH             |CI$01C2
  #REPLACE GET_CAN_DELETE           |CI$01C3
  #REPLACE MSG_UPDATE_DEPENDENT_ITEMS |CI$01C4
  #REPLACE GET_SUPERFIND_FIELD      |CI$01C5
  #REPLACE MSG_REFRESH              |CI$01C6
  #REPLACE MSG_PROCESS_ACCELERATOR  |CI$01C7
  #REPLACE GET_ERROR_TEXT_AVAILABLE |CI$01C8
  #REPLACE GET_PROTOTYPE_OBJECT     |CI$01C9
  #REPLACE MSG_REFIND_RECORDS       |CI$01CA
  #REPLACE MSG_END_CONSTRUCT_OBJECT |CI$01CB
  #REPLACE MSG_CLEAR_MAIN_FILE      |CI$01CC
  #REPLACE MSG_REQUEST_CLEAR_FILE   |CI$01CD
  #REPLACE GET_CALLBACK             |CI$01CE
  #REPLACE GET_IS_CRITICAL          |CI$01CF
  #REPLACE GET_VIRTUAL_CONSOLE      |CI$01D0
  #REPLACE SET_VIRTUAL_CONSOLE      |CI$01D1
  #REPLACE GET_KBD_INPUT_MODE       |CI$01D2
  #REPLACE GET_VERIFY_RETRY         |CI$01D3
  #REPLACE GET_DATA_SET_SERVER               |CI$0292
  #REPLACE GET_DATA_SET_CLIENT               |CI$0293
  #REPLACE GET_DATA_SET_USER_INTERFACE       |CI$0294
  #REPLACE GET_DATA_SET_SERVER_COUNT         |CI$0295
  #REPLACE GET_DATA_SET_CLIENT_COUNT         |CI$0296
  #REPLACE GET_DATA_SET_USER_INTERFACE_COUNT |CI$0297
  #REPLACE SET_ALWAYS_REFRESH_STATE          |CI$0298
  #REPLACE GET_ALWAYS_REFRESH_STATE          |CI$0299
  #REPLACE MSG_RESET_FILEMODES_FOR_LOCK      |CI$029A
  #REPLACE SET_SMART_FILEMODE_STATE          |CI$029B
  #REPLACE GET_SMART_FILEMODE_STATE          |CI$029C
  #REPLACE SET_SMART_FILEMODE_FOR_LOCK       |CI$029D
  #REPLACE GET_SMART_FILEMODE_FOR_LOCK       |CI$029E
  #REPLACE SET_SMART_FILEMODE_FOR_NO_LOCK    |CI$029F
  #REPLACE GET_SMART_FILEMODE_FOR_NO_LOCK    |CI$02A0
  #REPLACE SET_CASCADE_DELETE_STATE          |CI$02A1
  #REPLACE GET_CASCADE_DELETE_STATE          |CI$02A2
  #REPLACE GET_VALIDATE_DELETE_NO_CASCADE    |CI$02A3
  #REPLACE MSG_ADD_CLIENT_FILE               |CI$02A4
  #REPLACE MSG_REMOVE_CLIENT_FILE            |CI$02A5
  #REPLACE GET_CLIENT_FILE                   |CI$02A6
  #REPLACE GET_CLIENT_FILE_COUNT             |CI$02A7
  #REPLACE MSG_ADD_SERVER_FILE               |CI$02A8
  #REPLACE MSG_REMOVE_SERVER_FILE            |CI$02A9
  #REPLACE GET_SERVER_FILE                   |CI$02AA
  #REPLACE GET_SERVER_FILE_COUNT             |CI$02AB
  #REPLACE GET_PARENT_FILE                   |CI$02AC
  #REPLACE GET_PARENT_FILE_COUNT             |CI$02AD
  #REPLACE MSG_OPERATION_NOT_ALLOWED         |CI$02AE
  #REPLACE MSG_NEW_CURRENT_RECORD            |CI$02AF

  //#FREG |CI$01CE STRING PERCENTAGE RETURNS INTEGER

  #REPLACE DFLT$VALUE               __X__
  #REPLACE DFLT$MESSAGE             __X__
  #REPLACE DFLT$AUX_VALUE           __X__
  #REPLACE DFLT$SHADOW_STATE        __X__
  #REPLACE DFLT$SELECT_STATE        __X__
  #REPLACE DFLT$CHECKBOX_ITEM_STATE __X__
  #REPLACE DFLT$AUTOCLEAR_STATE     __X__
  #REPLACE DFLT$CENTER_STATE        __X__
  #REPLACE DFLT$ENTRY_STATE         __X__
  #REPLACE DFLT$ITEM_CHANGED_STATE  __X__
  #REPLACE DFLT$ITEM_ENTRY_MSG      __X__
  #REPLACE DFLT$ITEM_EXIT_MSG       __X__
  #REPLACE DFLT$ITEM_VALIDATE_MSG   __X__
  #REPLACE DFLT$DATA_FILE           __X__
  #REPLACE DFLT$DATA_FIELD          __X__
  #REPLACE DFLT$DATA_WINDOW         __X__
  #REPLACE DFLT$ITEM_OPTIONS        __X__
  #REPLACE DFLT$ITEM_OPTION         __X__
  #REPLACE DFLT$PROMPT_OBJECT       __X__
  #REPLACE DFLT$ZOOM_OBJECT         __X__

  //Reserve$Internal$Functions // this disallows these names to be used in
                               // in functions, properties or cts.
  #REPLACE FN$Abs                          __F__
  #REPLACE FN$Acos                         __F__
  #REPLACE FN$Append                       __F__
  #REPLACE FN$Ascii                        __F__
  #REPLACE FN$Asin                         __F__
  #REPLACE FN$Atan                         __F__
  #REPLACE FN$Center                       __F__
  #REPLACE FN$Character                    __F__
  #REPLACE FN$Cos                          __F__
  #REPLACE FN$Date                         __F__
  #REPLACE FN$Eval                         __F__
  #REPLACE FN$Exp                          __F__
  #REPLACE FN$Hi                           __F__
  #REPLACE FN$If                           __F__
  #REPLACE FN$Insert                       __F__
  #REPLACE FN$Integer                      __F__
  #REPLACE FN$Left                         __F__
  #REPLACE FN$Length                       __F__
  #REPLACE FN$Log                          __F__
  #REPLACE FN$Low                          __F__
  #REPLACE FN$Lowercase                    __F__
  #REPLACE FN$Ltrim                        __F__
  #REPLACE FN$Mid                          __F__
  #REPLACE FN$Mod                          __F__
  #REPLACE FN$Not                          __F__
  #REPLACE FN$Number                       __F__
  #REPLACE FN$Overstrike                   __F__
  #REPLACE FN$Pad                          __F__
  #REPLACE FN$Pos                          __F__
  #REPLACE FN$Random                       __F__
  #REPLACE FN$Real                         __F__
  #REPLACE FN$Remove                       __F__
  #REPLACE FN$Repeat                       __F__
  #REPLACE FN$Replace                      __F__
  #REPLACE FN$Replaces                     __F__
  #REPLACE FN$Right                        __F__
  #REPLACE FN$Round                        __F__
  #REPLACE FN$Rtrim                        __F__
  #REPLACE FN$Sin                          __F__
  #REPLACE FN$Sqrt                         __F__
  #REPLACE FN$String                       __F__
  #REPLACE FN$Tan                          __F__
  #REPLACE FN$Trim                         __F__
  #REPLACE FN$Uppercase                    __F__

  #IFDEF IS$WINDOWS
    // new internal functions for VDF7
    #REPLACE FN$CurrentDateTime              __F__
    #REPLACE FN$DateGetDay                   __F__
    #REPLACE FN$DateGetDayofWeek             __F__
    #REPLACE FN$DateGetDayofYear             __F__
    #REPLACE FN$DateGetHour                  __F__
    #REPLACE FN$DateGetMinute                __F__
    #REPLACE FN$DateGetMonth                 __F__
    #REPLACE FN$DateGetSecond                __F__
    #REPLACE FN$DateGetYear                  __F__
    #REPLACE FN$DateSetDay                   __F__
    #REPLACE FN$DateSetHour                  __F__
    #REPLACE FN$DateSetMinute                __F__
    #REPLACE FN$DateSetMonth                 __F__
    #REPLACE FN$DateSetSecond                __F__
    #REPLACE FN$DateSetYear                  __F__
    #REPLACE FN$IsDateValid                  __F__
    #REPLACE FN$SpanDays                     __F__
    #REPLACE FN$SpanHours                    __F__
    #REPLACE FN$SpanMinutes                  __F__
    #REPLACE FN$SpanSeconds                  __F__
    #REPLACE FN$SpanTotalDays                __F__
    #REPLACE FN$SpanTotalHours               __F__
    #REPLACE FN$SpanTotalMinutes             __F__
    #REPLACE FN$SpanTotalSeconds             __F__
    #REPLACE FN$Addressof                    __F__
    #REPLACE FN$Cast                         __F__
    #REPLACE FN$Convert                      __F__
    #REPLACE FN$InvokeXML                    __F__
    //
    #REPLACE FN$Storec                       __F__
    #REPLACE FN$Storew                       __F__
    #REPLACE FN$Storedw                      __F__
    #REPLACE FN$Derefc                       __F__
    #REPLACE FN$Derefw                       __F__
    #REPLACE FN$Derefdw                      __F__
    #REPLACE FN$MemCopy                      __F__
    #REPLACE FN$MemSet                       __F__
  #ENDIF // is windows


  // Object commands
  #REPLACE OBJ$INIT         $0440
  #REPLACE OBJ$CREATE       $0441
  #REPLACE OBJ$ILIST        $0442
  #REPLACE OBJ$ITEM         $0443
  #REPLACE OBJ$ENDILIST     $0444
  #REPLACE OBJ$ACCLIST      $0445 // not used
  #REPLACE OBJ$ONKEY        $0446
  #REPLACE OBJ$ENDALIST     $0447 // not used
  #REPLACE OBJ$ENDDEFINE    $0448 // not used
  #REPLACE OBJ$IODISPATCH   $0449
  #REPLACE OBJ$SET          $044A
  #REPLACE OBJ$GET          $044B
  #REPLACE OBJ$SEND         $044C
  #REPLACE OBJ$FIX          $044D  // not used
  #REPLACE OBJ$END          $044E
  #REPLACE OBJ$FWDFIX       $044F  // not used
  #REPLACE OBJ$HRET         $0450
  #REPLACE OBJ$ITEM_EXEC    $0451
  #REPLACE OBJ$ACCEPT       $0452
  #REPLACE CREATE$CLASS     $0453
  #REPLACE HANDLE$FOR       $0454
  #REPLACE OBJ$END$HANDLER  $0455
  #REPLACE LOCAL$ARGUMENT   $0456
  #REPLACE FIND$OBJECT      $0457
  #REPLACE END$CLASS        $0458
  #REPLACE CREATE$SUB$PAGE  $0459
  #REPLACE CLONE$CLASS      $045A
  #REPLACE OBJ$ENTRY$ITEM   $045B
  #REPLACE MOVE$SUB$PAGE    $045C
  #REPLACE OBJ$TIMER        $045D
  #REPLACE SCREEN$OPT       $045E
  #REPLACE CREATE$PROPERTY  $045F
  #REPLACE REDEFINE$SUB$PAGE $0464

  //Focus modes:
  #REPLACE FOCUSABLE    |CI0
  #REPLACE NONFOCUSABLE |CI1
  #REPLACE POINTER_ONLY |CI2
  #REPLACE NO_ACTIVATE  |CI3

  //Search modes:
  #REPLACE FIRST_CHARACTER  |CI0
  #REPLACE INCREMENTAL      |CI1
  #REPLACE CAPITAL          |CI2
  #REPLACE NO_SEARCH        |CI3

  //Delegation modes:
  #REPLACE DELEGATE_TO_PARENT       |CI0
  #REPLACE NO_DELEGATE_OR_ERROR     |CI1
  #REPLACE NO_DELEGATION            |CI2
  #REPLACE RETURN_INVALID_MESSAGE   |CI3
  #REPLACE DELEGATE_PRIOR_LEVEL     |CI4

  //Location modes:
  #REPLACE ABSOLUTE         |CI0
  #REPLACE RELATIVE         |CI1
  #REPLACE ITEM_RELATIVE    |CI2

  //Sort modes:
  #REPLACE ASCENDING        |CI0
  #REPLACE DESCENDING       |CI1

  //Select Modes:
  #REPLACE NO_SELECT        |CI0
  #REPLACE SINGLE_SELECT    |CI1
  #REPLACE MULTI_SELECT     |CI2
  #REPLACE AUTO_SELECT      |CI3

  //Entry item options:
  #REPLACE IWINDOW          $C0A1
  #REPLACE IENTRY           $C0A2
  #REPLACE IEXIT            $C0A3
  #REPLACE IVALIDATE        $C0A4
  #REPLACE IZOOM            $C0A5
  #REPLACE IPROMPT          $C0A6

  //Import modes
  #REPLACE INHERIT          1
  #REPLACE NO_OVERWRITE     2

  //System integers
  #REPLACE CURRENT_OBJECT     |VI85
  #REPLACE FORWARD$MESSAGE    |VI87
  #REPLACE CURRENT_MESSAGE    |VI88
  #REPLACE TOTAL_OBJECTS      |VI89

  // Define the desktop objects
  #REPLACE NULL_OBJECT          |CI0
  #REPLACE CLIPBOARD            |CI1
  #REPLACE CLIPBOARD.N          |CI0
  //#REPLACE DESKTOP              |CI2            // now defined in flex$init
  #REPLACE DESKTOP.N            |CI0
  //#REPLACE END_FUNCTION         END_PROCEDURE   // now defined in flex$init
  //#REPLACE PROCEDURE_RETURN     FUNCTION_RETURN // now defined in flex$init
  #REPLACE NO_IMAGE             |CI-9999

  #REPLACE CURRENT              |CI-99 //use current item#
  #REPLACE TOGGLE_STATE         |CI3   //toggle boolean state
  #REPLACE UPWARD_DIRECTION     |CI0   //scroll up
  #REPLACE DOWNWARD_DIRECTION   |CI1   //scroll down

//  #REPLACE GET_SCROLLBAR        |CI$4000
//  #REPLACE GET_CLIPBOARD        |CI$4001
//  #FREG |CI$4000 RETURNS INTEGER
//  #FREG |CI$4001 RETURNS INTEGER

// bumped up for 32-bit msg ids
  #REPLACE GET_SCROLLBAR        |CI$40000000
  #REPLACE GET_CLIPBOARD        |CI$40000001
  #FREG |CI$40000000 RETURNS INTEGER
  #FREG |CI$40000001 RETURNS INTEGER

  #REPLACE ERROR_OBJECT_ID      |VI100
  #REPLACE ERROR_TYPE           |VI101

  #REPLACE ERROR_CHILD_INHERITS_PARENT  |CI0
  #REPLACE ERROR_OFF_IN_CHILD           |CI1
  #REPLACE ERROR_DEFAULT_IN_CHILD       |CI2

  //deactivate search modes
  #REPLACE SCOPE_TYPE                   |CI1
  #REPLACE POPUP_TYPE                   |CI2
  #REPLACE AREA_TYPE                    |CI3

  //add_focus/activate/deactivate/release_focus error return codes
  #REPLACE ERROR_ENTERING               |CI1
  #REPLACE ERROR_EXITING                |CI2
  #REPLACE ERROR_ACTIVATING             |CI3
  #REPLACE ERROR_DEACTIVATING           |CI4
  #REPLACE ERROR_CANT_ACCEPT_FOCUS      |CI5
  #REPLACE ERROR_CANT_CREATE_TREE       |CI6
  #REPLACE ERROR_ADD_TO_INACTIVE_OBJECT |CI7
  #REPLACE ERROR_NO_FOCUSABLE_CHILDREN  |CI8


  #CHKSUB 1 1                   // Verify the UI subsystem.
  !A [] OBJ$INIT |CI0           // INITIALIZE_INTERFACE
  #FREF OBJ$DESK$NUM !a         // Number of desktop dependants
  #IFDEF IS$WINDOWS
     // in windows this is done in winbase.pkg
  #ELSE
     !A [] $2e4                     //  BEGIN$NEW$ERROR$SYSTEM  // this activates the new error system
     #REPLACE NEW$ERROR$SYSTEM |CI1 // for internal use only!
  #ENDIF