Index: AppSrc/cComCodeMax.pkg
===================================================================
--- AppSrc/cComCodeMax.pkg	(revision 58)
+++ AppSrc/cComCodeMax.pkg	(revision 59)
@@ -57,6 +57,10 @@
 Move "19.0" To gsRuntimeVersion
 Use cComCodeMax190.pkg
 #ENDIF
+#IF (!@=191)
+Move "19.1" To gsRuntimeVersion
+Use cComCodeMax191.pkg
+#ENDIF
 
 // throw this compiler error here if the compiler version did not match with any of the
 // above includes so that it is clear what is missing.
Index: AppSrc/cComCodeMax191.pkg
===================================================================
--- AppSrc/cComCodeMax191.pkg	(nonexistent)
+++ AppSrc/cComCodeMax191.pkg	(revision 59)
@@ -0,0 +1,4918 @@
+// DataFlex COM proxy classes generated from .\DataFlex 19.1\Bin\dfedit40.dll
+Use FlexCom20.pkg
+
+
+Define OLEcmLimit for Integer
+    Define OLEcmMaxFindReplText for 200
+    Define OLEcmFindReplaceMRUMax for 10
+    Define OLEcmFindReplaceMRUBuffSize for 2010
+    Define OLEcmMaxMacros for 10
+    Define OLEcmMaxCmdString for 50
+    Define OLEcmMaxCmdDescription for 200
+    Define OLEcmMaxLanguageName for 100
+    Define OLEcmMaxTabSize for 100
+    Define OLEcmMinTabSize for 2
+    Define OLEcmCmdUserBase for 1000
+
+Define OLEcmCommand for Integer
+    Define OLEcmCmdNone for 0
+    Define OLEcmCmdWordUppercase for 100
+    Define OLEcmCmdWordTranspose for 101
+    Define OLEcmCmdWordRightExtend for 102
+    Define OLEcmCmdWordRight for 103
+    Define OLEcmCmdWordEndRight for 104
+    Define OLEcmCmdWordEndRightExtend for 105
+    Define OLEcmCmdWordLowerCase for 106
+    Define OLEcmCmdWordLeftExtend for 107
+    Define OLEcmCmdWordLeft for 108
+    Define OLEcmCmdWordEndLeft for 109
+    Define OLEcmCmdWordEndLeftExtend for 110
+    Define OLEcmCmdWordDeleteToStart for 111
+    Define OLEcmCmdWordDeleteToEnd for 112
+    Define OLEcmCmdWordCapitalize for 113
+    Define OLEcmCmdWindowStart for 114
+    Define OLEcmCmdWindowScrollUp for 115
+    Define OLEcmCmdWindowScrollToTop for 116
+    Define OLEcmCmdWindowScrollToCenter for 117
+    Define OLEcmCmdWindowScrollToBottom for 118
+    Define OLEcmCmdWindowScrollRight for 119
+    Define OLEcmCmdWindowScrollLeft for 120
+    Define OLEcmCmdWindowScrollDown for 121
+    Define OLEcmCmdWindowRightEdge for 122
+    Define OLEcmCmdWindowLeftEdge for 123
+    Define OLEcmCmdWindowEnd for 124
+    Define OLEcmCmdUppercaseSelection for 125
+    Define OLEcmCmdUntabifySelection for 126
+    Define OLEcmCmdUnindentSelection for 127
+    Define OLEcmCmdUndoChanges for 128
+    Define OLEcmCmdUndo for 129
+    Define OLEcmCmdTabifySelection for 130
+    Define OLEcmCmdSentenceRight for 131
+    Define OLEcmCmdSentenceLeft for 132
+    Define OLEcmCmdSentenceCut for 133
+    Define OLEcmCmdSelectSwapAnchor for 134
+    Define OLEcmCmdSelectPara for 135
+    Define OLEcmCmdSelectLine for 136
+    Define OLEcmCmdSelectAll for 137
+    Define OLEcmCmdRedoChanges for 138
+    Define OLEcmCmdRedo for 139
+    Define OLEcmCmdPaste for 140
+    Define OLEcmCmdParaUp for 141
+    Define OLEcmCmdParaDown for 142
+    Define OLEcmCmdPageUpExtend for 143
+    Define OLEcmCmdPageUp for 144
+    Define OLEcmCmdPageDownExtend for 145
+    Define OLEcmCmdPageDown for 146
+    Define OLEcmCmdLowercaseSelection for 147
+    Define OLEcmCmdLineUpExtend for 148
+    Define OLEcmCmdLineUp for 149
+    Define OLEcmCmdLineTranspose for 150
+    Define OLEcmCmdLineStart for 151
+    Define OLEcmCmdLineOpenBelow for 152
+    Define OLEcmCmdLineOpenAbove for 153
+    Define OLEcmCmdLineEndExtend for 154
+    Define OLEcmCmdLineEnd for 155
+    Define OLEcmCmdLineDownExtend for 156
+    Define OLEcmCmdLineDown for 157
+    Define OLEcmCmdLineDeleteToStart for 158
+    Define OLEcmCmdLineDeleteToEnd for 159
+    Define OLEcmCmdLineDelete for 160
+    Define OLEcmCmdLineCut for 161
+    Define OLEcmCmdIndentToPrev for 162
+    Define OLEcmCmdIndentSelection for 163
+    Define OLEcmCmdHomeExtend for 164
+    Define OLEcmCmdHome for 165
+    Define OLEcmCmdGotoMatchBrace for 166
+    Define OLEcmCmdGotoIndentation for 167
+    Define OLEcmCmdGotoLine for 168
+    Define OLEcmCmdFindReplace for 169
+    Define OLEcmCmdReplace for 170
+    Define OLEcmCmdReplaceAllInBuffer for 171
+    Define OLEcmCmdReplaceAllInSelection for 172
+    Define OLEcmCmdFindPrevWord for 173
+    Define OLEcmCmdFindPrev for 174
+    Define OLEcmCmdFindNextWord for 175
+    Define OLEcmCmdFindNext for 176
+    Define OLEcmCmdFindMarkAll for 177
+    Define OLEcmCmdFind for 178
+    Define OLEcmCmdSetFindText for 179
+    Define OLEcmCmdSetReplaceText for 180
+    Define OLEcmCmdTogglePreserveCase for 181
+    Define OLEcmCmdToggleWholeWord for 182
+    Define OLEcmCmdToggleCaseSensitive for 183
+    Define OLEcmCmdEnd for 184
+    Define OLEcmCmdToggleWhitespaceDisplay for 185
+    Define OLEcmCmdToggleOvertype for 186
+    Define OLEcmCmdSetRepeatCount for 187
+    Define OLEcmCmdDocumentStartExtend for 188
+    Define OLEcmCmdDocumentStart for 189
+    Define OLEcmCmdDocumentEndExtend for 190
+    Define OLEcmCmdDocumentEnd for 191
+    Define OLEcmCmdDeleteHorizontalSpace for 192
+    Define OLEcmCmdDeleteBlankLines for 193
+    Define OLEcmCmdDeleteBack for 194
+    Define OLEcmCmdDelete for 195
+    Define OLEcmCmdCutSelection for 196
+    Define OLEcmCmdCut for 197
+    Define OLEcmCmdCopy for 198
+    Define OLEcmCmdCharTranspose for 199
+    Define OLEcmCmdCharRightExtend for 200
+    Define OLEcmCmdCharRight for 201
+    Define OLEcmCmdCharLeftExtend for 202
+    Define OLEcmCmdCharLeft for 203
+    Define OLEcmCmdBookmarkToggle for 204
+    Define OLEcmCmdBookmarkPrev for 205
+    Define OLEcmCmdBookmarkNext for 206
+    Define OLEcmCmdBookmarkClearAll for 207
+    Define OLEcmCmdBookmarkJumpToFirst for 208
+    Define OLEcmCmdBookmarkJumpToLast for 209
+    Define OLEcmCmdAppendNextCut for 210
+    Define OLEcmCmdInsertChar for 211
+    Define OLEcmCmdNewLine for 212
+    Define OLEcmCmdRecordMacro for 213
+    Define OLEcmCmdPlayMacro1 for 214
+    Define OLEcmCmdPlayMacro2 for 215
+    Define OLEcmCmdPlayMacro3 for 216
+    Define OLEcmCmdPlayMacro4 for 217
+    Define OLEcmCmdPlayMacro5 for 218
+    Define OLEcmCmdPlayMacro6 for 219
+    Define OLEcmCmdPlayMacro7 for 220
+    Define OLEcmCmdPlayMacro8 for 221
+    Define OLEcmCmdPlayMacro9 for 222
+    Define OLEcmCmdPlayMacro10 for 223
+    Define OLEcmCmdProperties for 224
+    Define OLEcmCmdBeginUndo for 225
+    Define OLEcmCmdEndUndo for 226
+    Define OLEcmCmdToggleRegExp for 228
+    Define OLEcmCmdClearSelection for 229
+    Define OLEcmCmdRegExpOn for 230
+    Define OLEcmCmdRegExpOff for 231
+    Define OLEcmCmdWholeWordOn for 232
+    Define OLEcmCmdWholeWordOff for 233
+    Define OLEcmCmdPreserveCaseOn for 234
+    Define OLEcmCmdPreserveCaseOff for 235
+    Define OLEcmCmdCaseSensitiveOn for 236
+    Define OLEcmCmdCaseSensitiveOff for 237
+    Define OLEcmCmdWhitespaceDisplayOn for 238
+    Define OLEcmCmdWhitespaceDisplayOff for 239
+    Define OLEcmCmdOvertypeOn for 240
+    Define OLEcmCmdOvertypeOff for 241
+    Define OLEcmCmdToggleSelExtend for 243
+    Define OLEcmCmdSelExtendOn for 244
+    Define OLEcmCmdSelExtendOff for 245
+    Define OLEcmCmdChooseCmd for 246
+    Define OLEcmCmdMoveLineUp for 247
+    Define OLEcmCmdMoveLineDown for 248
+    Define OLEcmCmdLineUpExtendCol for 249
+    Define OLEcmCmdLineDownExtendCol for 250
+    Define OLEcmCmdCharLeftExtendCol for 251
+    Define OLEcmCmdCharRightExtendCol for 252
+    Define OLEcmCmdSortLinesAscending for 253
+    Define OLEcmCmdSortLinesDescending for 254
+    Define OLEcmCmdInsertGUID for 255
+    Define OLEcmCmdLineDeleteEndSpace for 256
+    Define OLEcmCmdIncrementalSearch for 257
+    Define OLEcmCmdReverseIncrementalSearch for 258
+    Define OLEcmCmdListMembers for 259
+    Define OLEcmCmdCompleteWord for 260
+    Define OLEcmCmdCommitMember for 261
+    Define OLEcmCmdParameterInfo for 262
+    Define OLEcmCmdQuickInfo for 263
+    Define OLEcmCmdEndExtend for 264
+    Define OLEcmCmdCommentSelection for 265
+    Define OLEcmCmdUncommentSelection for 266
+    Define OLEcmCmdSelectWord for 267
+
+Define OLEcmCommandErr for Integer
+    Define OLEcmErrNone for 0
+    Define OLEcmErrFailure for 1
+    Define OLEcmErrInput for 2
+    Define OLEcmErrSelection for 3
+    Define OLEcmErrNotFound for 4
+    Define OLEcmErrEmptyBuf for 5
+    Define OLEcmErrReadOnly for 6
+    Define OLEcmErrNotAllowed for 7
+    Define OLEcmErrCanceled for 8
+    Define OLEcmErrNoLanguage for 9
+    Define OLEcmErrBadLanguage for 10
+
+Define OLEcmColorItem for Integer
+    Define OLEcmClrWindow for 0
+    Define OLEcmClrLeftMargin for 1
+    Define OLEcmClrBookmark for 2
+    Define OLEcmClrBookmarkBk for 3
+    Define OLEcmClrLineNumber for 4
+    Define OLEcmClrLineNumberBk for 5
+    Define OLEcmClrHDividerLines for 6
+    Define OLEcmClrVDividerLines for 7
+    Define OLEcmClrBraceHighlight for 8
+    Define OLEcmClrBraceHighlightBk for 9
+
+Define OLEcmFontStyleItem for Integer
+    Define OLEcmStyLineNumber for 0
+
+Define OLEcmFontStyle for Integer
+    Define OLEcmFontNormal for 0
+    Define OLEcmFontBold for 1
+    Define OLEcmFontItalic for 2
+    Define OLEcmFontBoldItalic for 3
+    Define OLEcmFontUnderline for 4
+
+Define OLEcmAutoIndentMode for Integer
+    Define OLEcmIndentOff for 0
+    Define OLEcmIndentScope for 1
+    Define OLEcmIndentPrevLine for 2
+
+Define OLEcmHitTestCode for Integer
+    Define OLEcmNowhere for 0
+    Define OLEcmHSplitter for 1
+    Define OLEcmVSplitter for 2
+    Define OLEcmHVSplitter for 3
+    Define OLEcmEditSpace for 4
+    Define OLEcmHScrollBar for 5
+    Define OLEcmVScrollBar for 6
+    Define OLEcmSizeBox for 7
+    Define OLEcmLeftMargin for 8
+    Define OLEcmHyperlink for 9
+    Define OLEcmSelection for 10
+    Define OLEcmCancelBtn for 11
+    Define OLEcmProgressBar for 12
+
+Define OLEcmLineNumStyle for Integer
+    Define OLEcmDecimal for 10
+    Define OLEcmHexadecimal for 16
+    Define OLEcmBinary for 2
+    Define OLEcmOctal for 8
+
+Define OLEcmPrintFlags for Integer
+    Define OLEcmPrnPromptDlg for 0
+    Define OLEcmPrnDefaultPrn for 1
+    Define OLEcmPrnHDC for 2
+    Define OLEcmPrnRichFonts for 4
+    Define OLEcmPrnColor for 8
+    Define OLEcmPrnPageNums for 16
+    Define OLEcmPrnDateTime for 32
+    Define OLEcmPrnBorderThin for 64
+    Define OLEcmPrnBorderThick for 128
+    Define OLEcmPrnBorderDouble for 256
+    Define OLEcmPrnSelection for 512
+    Define OLEcmPrnLineNums for 1024
+
+Define OLEcmBorderStyle for Integer
+    Define OLEcmBorderNone for 0
+    Define OLEcmBorderThin for 1
+    Define OLEcmBorderClient for 2
+    Define OLEcmBorderStatic for 4
+    Define OLEcmBorderModal for 8
+    Define OLEcmBorderCorral for 10
+
+Define OLEcmTokenSetID for Integer
+    Define OLEcmTsIdUnknown for 0
+    Define OLEcmTsIdText for 1
+    Define OLEcmTsIdNumbers for 2
+    Define OLEcmTsIdKeywords for 3
+    Define OLEcmTsIdOperators for 4
+    Define OLEcmTsIdScopeKeywords for 5
+    Define OLEcmTsIdBlockComments for 6
+    Define OLEcmTsIdLineComments for 7
+    Define OLEcmTsIdStrings for 8
+    Define OLEcmTsIdTagDelimiters for 9
+    Define OLEcmTsIdCharLiterals for 18
+    Define OLEcmTsIdTagText for 10
+    Define OLEcmTsIdTagEntities for 11
+    Define OLEcmTsIdTagElementNames for 12
+    Define OLEcmTsIdTagAttributeNames for 13
+    Define OLEcmTsIdLineNumbers for 14
+    Define OLEcmTsIdHyperlinks for 15
+    Define OLEcmTsIdVariables for 16
+    Define OLEcmTsIdEscapeSeqs for 17
+    Define OLEcmTsIdIdentifiers for 19
+    Define OLEcmTsIdAttributeBlocks for 20
+    Define OLEcmTsIdAttributeKeywordBlocks for 21
+    Define OLEcmTsIdAttributeText for 22
+    Define OLEcmTsIdEnvironmentVars for 23
+    Define OLEcmTsIdCDataDelimiters for 24
+    Define OLEcmTsIdCDataText for 25
+    Define OLEcmTsIdSectionHeadings for 26
+    Define OLEcmTsIdValueNames for 27
+    Define OLEcmTsIdParameterBlocks for 28
+    Define OLEcmTsIdArgSeparators for 29
+    Define OLEcmTsIdWhitespace for 30
+    Define OLEcmTsIdStatementDelims for 31
+    Define OLEcmTsIdUserBase for 1000
+
+Define OLEcmTokenSetType for Integer
+    Define OLEcmTsTypeList for 0
+    Define OLEcmTsTypeScope for 1
+
+Define OLEcmTokenSubset for Integer
+    Define OLEcmTsSubsetNone for 0
+    Define OLEcmTsSubsetFirst for 1
+    Define OLEcmTsSubsetSecond for 2
+    Define OLEcmTsSubsetBoth for 3
+
+Define OLEcmSaveFlags for Integer
+    Define OLEcmSaveAutoFmt for 0
+    Define OLEcmSaveClearUndoRedo for 1
+    Define OLEcmSaveMBCS for 16
+    Define OLEcmSaveUTF8 for 32
+    Define OLEcmSaveUnicode for 64
+    Define OLEcmSaveNoBOM for 128
+    Define OLEcmSaveOEM for 4096
+
+Define OLEcmMouseBtn for Integer
+    Define OLEcmBtnLeft for 1
+    Define OLEcmBtnRight for 2
+    Define OLEcmBtnMiddle for 4
+
+Define OLEcmKeyMod for Integer
+    Define OLEcmKeyShift for 1
+    Define OLEcmKeyCtrl for 2
+    Define OLEcmKeyAlt for 4
+
+Define OLEcmMode for Integer
+    Define OLEcmModeEdit for 0
+    Define OLEcmModeConstructing for 1
+    Define OLEcmModeDestructing for 2
+    Define OLEcmModeHSplitting for 4
+    Define OLEcmModeVSplitting for 8
+    Define OLEcmModePlayMacro for 16
+    Define OLEcmModeRecordMacro for 32
+    Define OLEcmModeDragSelecting for 64
+    Define OLEcmModeLineSelecting for 128
+    Define OLEcmModeDragAndDrop for 256
+    Define OLEcmModeIncrementalSearch for 512
+    Define OLEcmModeListMembers for 1024
+    Define OLEcmModeParameterInfo for 2048
+
+Define OLEcmMemberImage for Integer
+    Define OLEcmImgNone for -1
+    Define OLEcmImgClass for 0
+    Define OLEcmImgConstant for 1
+    Define OLEcmImgDelegate for 2
+    Define OLEcmImgEnum for 3
+    Define OLEcmImgEnumMember for 4
+    Define OLEcmImgEvent for 5
+    Define OLEcmImgException for 6
+    Define OLEcmImgField for 7
+    Define OLEcmImgInterface for 8
+    Define OLEcmImgMacro for 9
+    Define OLEcmImgMap for 10
+    Define OLEcmImgMapItem for 11
+    Define OLEcmImgMethod for 12
+    Define OLEcmImgOverload for 13
+    Define OLEcmImgModule for 14
+    Define OLEcmImgNamespace for 15
+    Define OLEcmImgOperator for 16
+    Define OLEcmImgProperty for 17
+    Define OLEcmImgStruct for 18
+    Define OLEcmImgTemplate for 19
+    Define OLEcmImgTypedef for 20
+    Define OLEcmImgType for 21
+    Define OLEcmImgUnion for 22
+    Define OLEcmImgVariable for 23
+    Define OLEcmImgValueType for 24
+    Define OLEcmImgIntrinsic for 25
+
+Define OLEcmParseDirection for Integer
+    Define OLEcmParseDirForward for 0
+    Define OLEcmParseDirBackward for 1
+
+Define OLEcmParseFlags for Integer
+    Define OLEcmParseDefault for 0
+    Define OLEcmParseSkipWhitespace for 1
+    Define OLEcmParseSkipComments for 2
+
+Define OLEcmProgressFlags for Integer
+    Define OLEcmProgressNone for 0
+    Define OLEcmProgressNotify for 1
+    Define OLEcmProgressShowUI for 2
+    Define OLEcmProgressAllowCancel for 4
+
+Define OLEcmProgressPhase for Integer
+    Define OLEcmProgressStart for 0
+    Define OLEcmProgressUpdate for 1
+    Define OLEcmProgressEnd for 2
+
+Define OLEcmQueryParamaterBlockResult for Integer
+    Define OLEcmQueryParameterBlockDefault for 0
+    Define OLEcmQueryParameterBlockNotFound for 1
+    Define OLEcmQueryParameterBlockFound for 2
+
+Define OLEcmQueryParamaterPositionResult for Integer
+    Define OLEcmQueryParameterPositionDefault for 0
+    Define OLEcmQueryParameterPositionNotFound for 1
+    Define OLEcmQueryParameterPositionFound for 2
+
+Define OLEcmLoadFlags for Integer
+    Define OLEcmLoadAutoFmt for 0
+    Define OLEcmLoadMBCS for 16
+    Define OLEcmLoadUTF8 for 32
+    Define OLEcmLoadUnicode for 64
+    Define OLEcmLoadOEM for 4096
+
+Define OLEcmMemberListStyle for Integer
+    Define OLEcmMemberSubListTile for 0
+    Define OLEcmMemberSubListCascade for 1
+    Define OLEcmMemberListSpaceAllowed for 2
+
+Struct _LARGE_INTEGER
+    BigInt QuadPart
+End_Struct
+
+Struct _ULARGE_INTEGER
+    UBigInt QuadPart
+End_Struct
+
+Struct _FILETIME
+    UInteger dwLowDateTime
+    UInteger dwHighDateTime
+End_Struct
+
+//Struct GUID
+    //UInteger Data1
+    //UShort Data2
+    //UShort Data3
+    // Data4  // Bad type member
+//End_Struct
+
+//Struct tagSTATSTG
+    // pwcsName  // Bad type member
+    //UInteger Type
+    //_ULARGE_INTEGER cbSize
+    //_FILETIME mtime
+    //_FILETIME ctime
+    //_FILETIME atime
+    //UInteger grfMode
+    //UInteger grfLocksSupported
+    // clsid  // Bad type member
+    //UInteger grfStateBits
+    //UInteger reserved
+//End_Struct
+
+// CLSID: {0305218F-24FB-42AB-8DEB-24CB6988F721}
+// ICodeMax Interface
+Class cComICodeMax is a Mixin
+
+    // The font used to display code
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComFontRef Variant value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver -512 OLE_VT_DISPATCH to value
+    End_Procedure
+
+    // The font used to display code
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComFont Variant value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver -512 OLE_VT_DISPATCH to value
+    End_Procedure
+
+    // The font used to display code
+    { MethodType=Property DesignTime=False }
+    Function ComFont Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -512 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // The enabled/disabled state of the window
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComEnabled Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver -514 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The enabled/disabled state of the window
+    { MethodType=Property DesignTime=False }
+    Function ComEnabled Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -514 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The HWND window handle
+    { MethodType=Property DesignTime=False }
+    Function ComHWnd Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -515 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The complete contents of the code buffer
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComText String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver -517 OLE_VT_BSTR to value
+    End_Procedure
+
+    // The complete contents of the code buffer
+    { MethodType=Property DesignTime=False }
+    Function ComText Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -517 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // The color syntax highlighting state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComColorSyntax Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 0 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The color syntax highlighting state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComColorSyntax Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 0 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The 'display whitespace' state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComDisplayWhitespace Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 1 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The 'display whitespace' state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComDisplayWhitespace Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The 'convert tabs to spaces' state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComExpandTabs Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 2 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The 'convert tabs to spaces' state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComExpandTabs Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 2 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The 'smooth scrolling' state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComSmoothScrolling Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 3 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The 'smooth scrolling' state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComSmoothScrolling Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 3 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The read-only state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComReadOnly Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 4 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The read-only state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComReadOnly Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 4 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The 'display line tooltips' state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComLineToolTips Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 5 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The 'display line tooltips' state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComLineToolTips Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 5 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The left margin visibility state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComDisplayLeftMargin Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 6 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The left margin visibility state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComDisplayLeftMargin Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 6 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The column selection enabled state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComColumnSel Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 7 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The column selection enabled state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComColumnSel Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 7 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The drag and drop enabled state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComDragDrop Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 8 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The drag and drop enabled state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComDragDrop Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 8 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The character overtype state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComOvertype Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 9 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The character overtype state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComOvertype Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 9 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The case sensitive searching state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComSearchCaseSensitive Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 10 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The case sensitive searching state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComSearchCaseSensitive Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 10 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The intelligent case preservation replacing state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComReplacePreserveCase Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 11 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The intelligent case preservation replacing state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComReplacePreserveCase Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 11 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The whole word searching state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComSearchWholeWord Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 12 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The whole word searching state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComSearchWholeWord Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 12 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The buffer modified state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComModified Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 13 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The buffer modified state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComModified Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 13 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The CRLF line delimiter buffer modified state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComCRLF Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 14 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The CRLF line delimiter buffer modified state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComCRLF Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 14 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The global properties state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComGlobalProps Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 15 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The global properties state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComGlobalProps Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 15 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The vscroll visibility state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComVScrollVisible Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 16 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The vscroll visibility state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComVScrollVisible Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 16 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The hscroll visibility state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComHScrollVisible Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 17 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The hscroll visibility state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComHScrollVisible Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 17 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The vsplitter visibility state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComVSplitter Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 18 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The vsplitter visibility state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComVSplitter Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 18 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The hsplitter visibility state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComHSplitter Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 19 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The hsplitter visibility state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComHSplitter Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 19 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The currently selected language
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComLanguage Variant value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 20 OLE_VT_DISPATCH to value
+    End_Procedure
+
+    // The currently selected language
+    { MethodType=Property DesignTime=False }
+    Function ComLanguage Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 20 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // The current tab size (characters, including NULL terminator)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComTabSize Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 21 OLE_VT_I4 to value
+    End_Procedure
+
+    // The current tab size (characters, including NULL terminator)
+    { MethodType=Property DesignTime=False }
+    Function ComTabSize Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 21 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The topmost visible line number in view 0
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComTopIndex Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 22 OLE_VT_I4 to value
+    End_Procedure
+
+    // The topmost visible line number in view 0
+    { MethodType=Property DesignTime=False }
+    Function ComTopIndex Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 22 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The max number of undoable edit actions (0 = none, n = limit, -1 = unlimited)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComUndoLimit Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 23 OLE_VT_I4 to value
+    End_Procedure
+
+    // The max number of undoable edit actions (0 = none, n = limit, -1 = unlimited)
+    { MethodType=Property DesignTime=False }
+    Function ComUndoLimit Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 23 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The currently active view number
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComCurrentView Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 24 OLE_VT_I4 to value
+    End_Procedure
+
+    // The currently active view number
+    { MethodType=Property DesignTime=False }
+    Function ComCurrentView Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 24 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The length of the entire buffer contents in bytes
+    { MethodType=Property DesignTime=False }
+    Function ComTextLength Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 25 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The buffer line count
+    { MethodType=Property DesignTime=False }
+    Function ComLineCount Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 26 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The word under the caret
+    { MethodType=Property DesignTime=False }
+    Function ComCurrentWord Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 27 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // The length of the word under the caret (in bytes)
+    { MethodType=Property DesignTime=False }
+    Function ComCurrentWordLength Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 28 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The current auto indent mode as defined in cmAutoIndentMode
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComAutoIndentMode OLEcmAutoIndentMode value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 29 OLE_VT_I4 to value
+    End_Procedure
+
+    // The current auto indent mode as defined in cmAutoIndentMode
+    { MethodType=Property DesignTime=False }
+    Function ComAutoIndentMode Returns OLEcmAutoIndentMode
+        Handle hDispatchDriver
+        OLEcmAutoIndentMode retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 29 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The total number of open views
+    { MethodType=Property DesignTime=False }
+    Function ComViewCount Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 30 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The vertical position of the vsplitter
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComVSplitterPos Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 31 OLE_VT_I4 to value
+    End_Procedure
+
+    // The vertical position of the vsplitter
+    { MethodType=Property DesignTime=False }
+    Function ComVSplitterPos Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 31 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The horizontal position of the hsplitter
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComHSplitterPos Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 32 OLE_VT_I4 to value
+    End_Procedure
+
+    // The horizontal position of the hsplitter
+    { MethodType=Property DesignTime=False }
+    Function ComHSplitterPos Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 32 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The current find text
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComFindText String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 33 OLE_VT_BSTR to value
+    End_Procedure
+
+    // The current find text
+    { MethodType=Property DesignTime=False }
+    Function ComFindText Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 33 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // The current replace text
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComReplText String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 34 OLE_VT_BSTR to value
+    End_Procedure
+
+    // The current replace text
+    { MethodType=Property DesignTime=False }
+    Function ComReplText Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 34 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Line numbering (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComLineNumbering Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 84 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Line numbering (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComLineNumbering Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 84 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Line number starting value
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComLineNumberStart Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 85 OLE_VT_I4 to value
+    End_Procedure
+
+    // Line number starting value
+    { MethodType=Property DesignTime=False }
+    Function ComLineNumberStart Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 85 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Line number style (cmDecimal, cmHex, etc.)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComLineNumberStyle OLEcmLineNumStyle value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 86 OLE_VT_I4 to value
+    End_Procedure
+
+    // Line number style (cmDecimal, cmHex, etc.)
+    { MethodType=Property DesignTime=False }
+    Function ComLineNumberStyle Returns OLEcmLineNumStyle
+        Handle hDispatchDriver
+        OLEcmLineNumStyle retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 86 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Retrieves the word at a specific buffer location
+    Function ComGetWord Variant llPos Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llPos
+        Get InvokeComMethod of hDispatchDriver 35 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Retrieves the length of the word at a specific buffer location
+    Function ComGetWordLength Variant llPos Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llPos
+        Get InvokeComMethod of hDispatchDriver 36 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Retrieves the topmost visible line in a specific view
+    Function ComGetTopIndex Integer llView Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llView
+        Get InvokeComMethod of hDispatchDriver 37 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Sets the topmost visible line in a specific view
+    Procedure ComSetTopIndex Integer llView Integer llLine
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llView
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Send InvokeComMethod to hDispatchDriver 38 OLE_VT_VOID
+    End_Procedure
+
+    // Retrieves the current selection
+    Function ComGetSel Boolean llNormalized Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_BOOL llNormalized
+        Get InvokeComMethod of hDispatchDriver 39 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // Changes the current selection
+    Procedure ComSetSel Variant llSel Boolean llMakeVisible
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llSel
+        Send DefineParam to hDispatchDriver OLE_VT_BOOL llMakeVisible
+        Send InvokeComMethod to hDispatchDriver 40 OLE_VT_VOID
+    End_Procedure
+
+    // Retrieves the buffer coordinates under a specific window (x,y) client position
+    Function ComGetSelFromPoint Integer llxClientPos Integer llyClientPos Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llxClientPos
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llyClientPos
+        Get InvokeComMethod of hDispatchDriver 41 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // Returns the total number of fully or partially visible lines in a specific view
+    Function ComGetVisibleLineCount Integer llView Boolean llFullyVisible Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llView
+        Send DefineParam to hDispatchDriver OLE_VT_BOOL llFullyVisible
+        Get InvokeComMethod of hDispatchDriver 42 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Retrieves the text of a specific line
+    Function ComGetLine Integer llLine Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Get InvokeComMethod of hDispatchDriver 43 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Returns the length of a specific line's text
+    Function ComGetLineLength Integer llLine Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Get InvokeComMethod of hDispatchDriver 44 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Sets the color of a specific window aspect defined in cmColorItem
+    Procedure ComSetColor OLEcmColorItem lllColorItem Integer llColorRGB
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 lllColorItem
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llColorRGB
+        Send InvokeComMethod to hDispatchDriver 45 OLE_VT_VOID
+    End_Procedure
+
+    // Retrieves the color of a specific window aspect defined in cmColorItem
+    Function ComGetColor OLEcmColorItem lllColorItem Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 lllColorItem
+        Get InvokeComMethod of hDispatchDriver 46 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Places a file's contents into the edit buffer
+    Procedure ComOpenFile String llFileName
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llFileName
+        Send InvokeComMethod to hDispatchDriver 47 OLE_VT_VOID
+    End_Procedure
+
+    // Saves the buffer contents into a file
+    Procedure ComSaveFile String llFileName OLEcmSaveFlags llFlags
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llFileName
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llFlags
+        Send InvokeComMethod to hDispatchDriver 48 OLE_VT_VOID
+    End_Procedure
+
+    // Inserts a file's contents into the edit buffer at a specific location
+    Procedure ComInsertFile String llFileName Variant llInsertPos
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llFileName
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llInsertPos
+        Send InvokeComMethod to hDispatchDriver 49 OLE_VT_VOID
+    End_Procedure
+
+    // Inserts a block of text into the edit buffer at a specific location
+    Procedure ComInsertText String llText Variant llPos
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llText
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llPos
+        Send InvokeComMethod to hDispatchDriver 50 OLE_VT_VOID
+    End_Procedure
+
+    // Replaces buffer text with a separate block of text
+    Procedure ComReplaceText String llText Variant llRange
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llText
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llRange
+        Send InvokeComMethod to hDispatchDriver 51 OLE_VT_VOID
+    End_Procedure
+
+    // Determines the CodeMax window component (defined in cmHitTestCode) under a specific (x,y) window client coordinate
+    Function ComHitTest Integer llClientCoordX Integer llClientCoordY Variant llParser Integer ByRef llView Returns OLEcmHitTestCode
+        Handle hDispatchDriver
+        OLEcmHitTestCode retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 4
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llClientCoordX
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llClientCoordY
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llParser
+        Send DefineParam to hDispatchDriver (OLE_VT_BYREF ior OLE_VT_I4) llView
+        Get InvokeComMethod of hDispatchDriver 52 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Appends text to the end of the buffer
+    Procedure ComAddText String llText
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llText
+        Send InvokeComMethod to hDispatchDriver 53 OLE_VT_VOID
+    End_Procedure
+
+    // Deletes a specific line
+    Procedure ComDeleteLine Integer llLine
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Send InvokeComMethod to hDispatchDriver 54 OLE_VT_VOID
+    End_Procedure
+
+    // Inserts a single line of text at a specific line position
+    Procedure ComInsertLine Integer llLine String llText
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llText
+        Send InvokeComMethod to hDispatchDriver 55 OLE_VT_VOID
+    End_Procedure
+
+    // Selects a specific line
+    Procedure ComSelectLine Integer llLine Boolean llMakeVisible
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Send DefineParam to hDispatchDriver OLE_VT_BOOL llMakeVisible
+        Send InvokeComMethod to hDispatchDriver 56 OLE_VT_VOID
+    End_Procedure
+
+    // Deletes the buffer contents marked by the current selection
+    Procedure ComDeleteSel
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 57 OLE_VT_VOID
+    End_Procedure
+
+    // Replaces the buffer contents marked by the current selection with a body of text
+    Procedure ComReplaceSel String llText
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llText
+        Send InvokeComMethod to hDispatchDriver 58 OLE_VT_VOID
+    End_Procedure
+
+    // Executes a CodeMax command defined in cmCommands
+    Procedure ComExecuteCmd OLEcmCommand llCmd Variant llCmdData
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llCmd
+        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llCmdData
+        Send InvokeComMethod to hDispatchDriver 59 OLE_VT_VOID
+    End_Procedure
+
+    // Determines if it is possible to undo an edit action
+    Function ComCanUndo Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 60 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Determines if it is possible to redo an edit action
+    Function ComCanRedo Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 61 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Determines if it is possible to cut the current selection and place it on the clipboard
+    Function ComCanCut Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 62 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Determines if it is possible to copy the current selection onto the clipboard
+    Function ComCanCopy Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 63 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Determines if it is possible to place the clipboard contents at the current edit selection position
+    Function ComCanPaste Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 64 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Undos the last edit action
+    Procedure ComUndo
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 65 OLE_VT_VOID
+    End_Procedure
+
+    // Redos the last edit action
+    Procedure ComRedo
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 66 OLE_VT_VOID
+    End_Procedure
+
+    // Cuts the current selection and places it on the clipboard
+    Procedure ComCut
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 67 OLE_VT_VOID
+    End_Procedure
+
+    // Copies the current selection onto the clipboard
+    Procedure ComCopy
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 68 OLE_VT_VOID
+    End_Procedure
+
+    // Pastes the clipboard contents at the current edit selection position
+    Procedure ComPaste
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 69 OLE_VT_VOID
+    End_Procedure
+
+    // Clears the undo buffer so that undo/redo is not possible
+    Procedure ComClearUndoBuffer
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 70 OLE_VT_VOID
+    End_Procedure
+
+    // Sets the HWND window that will be used as the parent of all dialog boxes displayed by CodeMax
+    Procedure ComSetDlgParent Integer llhWnd
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llhWnd
+        Send InvokeComMethod to hDispatchDriver 71 OLE_VT_VOID
+    End_Procedure
+
+    // Retrieves the selected text
+    { MethodType=Property DesignTime=False }
+    Function ComSelText Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -546 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Retrieves the selected text
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComSelText String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver -546 OLE_VT_BSTR to value
+    End_Procedure
+
+    // Allow caret positioning beyond text boundary.
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComVirtualSpace Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 72 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Allow caret positioning beyond text boundary.
+    { MethodType=Property DesignTime=False }
+    Function ComVirtualSpace Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 72 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Sets the font style of a specific text token category defined in cmFontStyleItem
+    Procedure ComSetFontStyle OLEcmFontStyleItem llFontStyleItem OLEcmFontStyle llFontStyle
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llFontStyleItem
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llFontStyle
+        Send InvokeComMethod to hDispatchDriver 73 OLE_VT_VOID
+    End_Procedure
+
+    // Retrieves the font style of a specific text token category defined in cmFontStyleItem
+    Function ComGetFontStyle OLEcmFontStyleItem llFontStyleItem Returns OLEcmFontStyle
+        Handle hDispatchDriver
+        OLEcmFontStyle retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llFontStyleItem
+        Get InvokeComMethod of hDispatchDriver 74 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The regular expression searching state (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComSearchRegExp Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 75 OLE_VT_BOOL to value
+    End_Procedure
+
+    // The regular expression searching state (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComSearchRegExp Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 75 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Sets per-line item data meaningful to the application
+    Procedure ComSetItemData Integer llLine Integer llData
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llData
+        Send InvokeComMethod to hDispatchDriver 76 OLE_VT_VOID
+    End_Procedure
+
+    // Retrieves the per-line item data set with SetItemData()
+    Function ComGetItemData Integer llLine Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Get InvokeComMethod of hDispatchDriver 77 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Sets a line's style bits
+    Procedure ComSetLineStyle Integer llLine Integer llStyle
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llStyle
+        Send InvokeComMethod to hDispatchDriver 78 OLE_VT_VOID
+    End_Procedure
+
+    // Retrieves a line's style bits
+    Function ComGetLineStyle Integer llLine Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Get InvokeComMethod of hDispatchDriver 79 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Turns on or off a bookmark for a single line
+    Procedure ComSetBookmark Integer llLine Boolean llVal
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Send DefineParam to hDispatchDriver OLE_VT_BOOL llVal
+        Send InvokeComMethod to hDispatchDriver 80 OLE_VT_VOID
+    End_Procedure
+
+    // Gets the bookmark state (on/off) for a single line
+    Function ComGetBookmark Integer llLine Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Get InvokeComMethod of hDispatchDriver 81 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // clears all bookmarks and then sets multiple bookmarks at once
+    Procedure ComSetAllBookmarks Integer[] ByRef llLines
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver (OLE_VT_BYREF ior (OLE_VT_ARRAY ior OLE_VT_I4)) llLines
+        Send InvokeComMethod to hDispatchDriver 82 OLE_VT_VOID
+    End_Procedure
+
+    // Collects a list of all bookmarks
+    Function ComGetAllBookmarks Returns Integer[]
+        Handle hDispatchDriver
+        Integer[] retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 83 (OLE_VT_ARRAY ior OLE_VT_I4) to retVal
+        Function_Return retVal
+    End_Function
+
+    // returns a client rect surrounding a character at a specified buffer position
+    Function ComPosFromChar Variant llPos Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llPos
+        Get InvokeComMethod of hDispatchDriver 87 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // Hide selection when control loses focus (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComHideSel Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 88 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Hide selection when control loses focus (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComHideSel Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 88 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Language keyword case fixup on-the-fly (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComNormalizeCase Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 89 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Language keyword case fixup on-the-fly (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComNormalizeCase Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 89 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Sets a line's divider line state (on/off)
+    Procedure ComSetDivider Integer llLine Boolean llVal
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Send DefineParam to hDispatchDriver OLE_VT_BOOL llVal
+        Send InvokeComMethod to hDispatchDriver 90 OLE_VT_VOID
+    End_Procedure
+
+    // Retrieves a line's divider line state (on/off)
+    Function ComGetDivider Integer llLine Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Get InvokeComMethod of hDispatchDriver 91 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Fat overtype caret (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComOvertypeCaret Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 92 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Fat overtype caret (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComOvertypeCaret Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 92 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // turns on/off margin images for a specific line
+    Procedure ComSetMarginImages Integer llLine UChar llImages
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Send DefineParam to hDispatchDriver OLE_VT_UI1 llImages
+        Send InvokeComMethod to hDispatchDriver 93 OLE_VT_VOID
+    End_Procedure
+
+    // retrieves the current margin images state for a specific line
+    Function ComGetMarginImages Integer llLine Returns UChar
+        Handle hDispatchDriver
+        UChar retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Get InvokeComMethod of hDispatchDriver 94 OLE_VT_UI1 to retVal
+        Function_Return retVal
+    End_Function
+
+    // sets the line margin images
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComHImageList OLE_HANDLE value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 95 OLE_VT_I4 to value
+    End_Procedure
+
+    // sets the line margin images
+    { MethodType=Property DesignTime=False }
+    Function ComHImageList Returns OLE_HANDLE
+        Handle hDispatchDriver
+        OLE_HANDLE retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 95 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // retrieves the ImageList control to be used.  Try ICodeMax.hImageList property if this fails.
+    { MethodType=Property DesignTime=False }
+    Function ComImageList Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 96 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // retrieves the ImageList control to be used.  Try ICodeMax.hImageList property if this fails.
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComImageList Variant value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 96 OLE_VT_DISPATCH to value
+    End_Procedure
+
+    // retrieves the ImageList control to be used.  Try ICodeMax.hImageList property if this fails.
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComImageListRef Variant value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 96 OLE_VT_DISPATCH to value
+    End_Procedure
+
+    // prints the contents of the edit buffer
+    Procedure ComPrintContents Integer llhdc OLEcmPrintFlags llFlags
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llhdc
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llFlags
+        Send InvokeComMethod to hDispatchDriver 97 OLE_VT_VOID
+    End_Procedure
+
+    // Sets the caret position to a specific line and column
+    Procedure ComSetCaretPos Integer llLine Integer llCol
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llCol
+        Send InvokeComMethod to hDispatchDriver 98 OLE_VT_VOID
+    End_Procedure
+
+    // Converts a view column position (physical coordinates) to buffer coords which correspond to actual character offsets in the buffer text
+    Function ComViewColToBufferCol Integer llLine Integer llViewCol Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llViewCol
+        Get InvokeComMethod of hDispatchDriver 99 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Converts a buffer column position to view coords which correspond to character offsets displayed in the editor
+    Function ComBufferColToViewCol Integer llLine Integer llBuffCol Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llBuffCol
+        Get InvokeComMethod of hDispatchDriver 100 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The length of the selection in bytes
+    { MethodType=Property DesignTime=False }
+    Function ComSelLength Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -548 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // the current border style
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComBorderStyle OLEcmBorderStyle value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 101 OLE_VT_I4 to value
+    End_Procedure
+
+    // the current border style
+    { MethodType=Property DesignTime=False }
+    Function ComBorderStyle Returns OLEcmBorderStyle
+        Handle hDispatchDriver
+        OLEcmBorderStyle retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 101 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Cancels the current event or operation
+    Procedure ComCancelEvent
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 102 OLE_VT_VOID
+    End_Procedure
+
+    // Redraws the window
+    Procedure ComRedraw
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 103 OLE_VT_VOID
+    End_Procedure
+
+    // Creates a new line parser object based on the current language
+    Function ComCreateParser Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 104 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // Process keyboard input without censorship from parent form
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComStealKeys Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 105 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Process keyboard input without censorship from parent form
+    { MethodType=Property DesignTime=False }
+    Function ComStealKeys Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 105 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Sets a line's background color.  Set to 0xff000000 (CLR_INVALID) to clear
+    Procedure ComSetLineColor Integer llLine Integer llColorRGB
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llColorRGB
+        Send InvokeComMethod to hDispatchDriver 106 OLE_VT_VOID
+    End_Procedure
+
+    // Retrieves a line's background color
+    Function ComGetLineColor Integer llLine Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Get InvokeComMethod of hDispatchDriver 107 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Fixup keyword case on-the-fly for a single line (zero-based index) or the entire buffer (-1)
+    Procedure ComNormalizeCaseNow Integer llLine
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llLine
+        Send InvokeComMethod to hDispatchDriver 108 OLE_VT_VOID
+    End_Procedure
+
+    // Accept dropped files from Explorer and issue a DropFiles notification
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComDropFiles Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 109 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Accept dropped files from Explorer and issue a DropFiles notification
+    { MethodType=Property DesignTime=False }
+    Function ComDropFiles Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 109 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Single click navigation of hyperlinks
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComOneClickURL Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 110 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Single click navigation of hyperlinks
+    { MethodType=Property DesignTime=False }
+    Function ComOneClickURL Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 110 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Saves all user settings to the Windows Registry
+    Procedure ComSaveSettingsToRegistry String llRegistryKeyPath
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llRegistryKeyPath
+        Send InvokeComMethod to hDispatchDriver 111 OLE_VT_VOID
+    End_Procedure
+
+    // Loads all user settings from the Windows Registry
+    Procedure ComLoadSettingsFromRegistry String llRegistryKeyPath
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llRegistryKeyPath
+        Send InvokeComMethod to hDispatchDriver 112 OLE_VT_VOID
+    End_Procedure
+
+    // Saves all user settings to a stream
+    Procedure ComSaveSettingsToStream Variant llStream
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_UNKNOWN llStream
+        Send InvokeComMethod to hDispatchDriver 113 OLE_VT_VOID
+    End_Procedure
+
+    // Loads all user settings from a stream
+    Procedure ComLoadSettingsFromStream Variant llStream
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_UNKNOWN llStream
+        Send InvokeComMethod to hDispatchDriver 114 OLE_VT_VOID
+    End_Procedure
+
+    // Converts a (line,col) buffer position to a file offset value
+    Function ComPosToOffset Variant llPos Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llPos
+        Get InvokeComMethod of hDispatchDriver 115 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Converts a file offset value to a (line,col) buffer position
+    Function ComOffsetToPos Integer llOffset Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llOffset
+        Get InvokeComMethod of hDispatchDriver 116 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // file offset at start of normalized selection
+    { MethodType=Property DesignTime=False }
+    Function ComSelStart Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 117 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // file offset at start of normalized selection
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComSelStart Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 117 OLE_VT_I4 to value
+    End_Procedure
+
+    // file offset at start of normalized selection
+    { MethodType=Property DesignTime=False }
+    Function ComSelEnd Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 118 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // file offset at start of normalized selection
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComSelEnd Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 118 OLE_VT_I4 to value
+    End_Procedure
+
+    // The complete contents of the code buffer as RTF text
+    { MethodType=Property DesignTime=False }
+    Function ComTextRTF Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 119 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // The selected text as RTF text
+    { MethodType=Property DesignTime=False }
+    Function ComSelTextRTF Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 120 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Place RTF on the clipboard during Copy operation
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComRTFCopy Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 121 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Place RTF on the clipboard during Copy operation
+    { MethodType=Property DesignTime=False }
+    Function ComRTFCopy Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 121 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Sets the input focus on the CodeMax window
+    Procedure ComSetFocus
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 122 OLE_VT_VOID
+    End_Procedure
+
+    // Highlight matching scope keywords
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComBraceMatching Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 123 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Highlight matching scope keywords
+    { MethodType=Property DesignTime=False }
+    Function ComBraceMatching Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 123 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The current user action in progress
+    { MethodType=Property DesignTime=False }
+    Function ComMode Returns OLEcmMode
+        Handle hDispatchDriver
+        OLEcmMode retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 124 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // True to track selection with bold line numbers
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComLineNumberBoldSel Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 125 OLE_VT_BOOL to value
+    End_Procedure
+
+    // True to track selection with bold line numbers
+    { MethodType=Property DesignTime=False }
+    Function ComLineNumberBoldSel Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 125 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The member list to display when invoked by the user
+    { MethodType=Property DesignTime=False }
+    Function ComMemberList Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 126 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // The member list to display when invoked by the user
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComMemberList Variant value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 126 OLE_VT_DISPATCH to value
+    End_Procedure
+
+    // true to enable memberlist popups while typing
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComAutoListMembers Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 127 OLE_VT_BOOL to value
+    End_Procedure
+
+    // true to enable memberlist popups while typing
+    { MethodType=Property DesignTime=False }
+    Function ComAutoListMembers Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 127 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // true to enable parameter info tooltips
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComParameterInfo Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 128 OLE_VT_BOOL to value
+    End_Procedure
+
+    // true to enable parameter info tooltips
+    { MethodType=Property DesignTime=False }
+    Function ComParameterInfo Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 128 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Enables and disables all painting and updating
+    Procedure ComSetRedraw Boolean llRedraw
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_BOOL llRedraw
+        Send InvokeComMethod to hDispatchDriver 129 OLE_VT_VOID
+    End_Procedure
+
+    // Retrieves text within a specific range or the entire buffer
+    Function ComGetText Variant llRange Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llRange
+        Get InvokeComMethod of hDispatchDriver 130 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Creates and connects the VDF code objects, CDS, Metadata, and CodeComplete
+    Procedure ComCreateVDFCodeObjects
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 500 OLE_VT_VOID
+    End_Procedure
+
+    // Retrieves the VDF Code Data Structure object
+    Function ComGetVDFCodeDataStructure Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 501 OLE_VT_UNKNOWN to retVal
+        Function_Return retVal
+    End_Function
+
+    // Retrieves the VDF Code Metadata object
+    Function ComGetVDFCodeMetadata Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 502 OLE_VT_UNKNOWN to retVal
+        Function_Return retVal
+    End_Function
+
+    // Retrieves the VDF Code Complete object
+    Function ComGetVDFCodeComplete Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 503 OLE_VT_UNKNOWN to retVal
+        Function_Return retVal
+    End_Function
+
+    // Clears item data for all lines
+    Procedure ComClearAllItemData
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 504 OLE_VT_VOID
+    End_Procedure
+
+    // Returns the first line number with the specified item data
+    Function ComFindItemData Integer llData Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llData
+        Get InvokeComMethod of hDispatchDriver 505 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Returns the first line number with the specified margin images
+    Function ComFindLineMatchingMarginImages Integer llStartLine UChar llImages Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llStartLine
+        Send DefineParam to hDispatchDriver OLE_VT_UI1 llImages
+        Get InvokeComMethod of hDispatchDriver 506 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Swaps the editor buffer/contents with an other editor control
+    Procedure ComSwapBuffer Variant llOther
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llOther
+        Send InvokeComMethod to hDispatchDriver 507 OLE_VT_VOID
+    End_Procedure
+
+    // Places a file's contents into the edit buffer
+    Procedure ComOpenFileEx String llFileName OLEcmLoadFlags llFlags
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llFileName
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llFlags
+        Send InvokeComMethod to hDispatchDriver 508 OLE_VT_VOID
+    End_Procedure
+
+    // Retrieves the word, using extended word chars, at a specific buffer location
+    Function ComGetWordEx Variant llPos String llleadingExtWordChars String lltrailingExtWordChars Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 3
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llPos
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llleadingExtWordChars
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR lltrailingExtWordChars
+        Get InvokeComMethod of hDispatchDriver 509 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Returns TRUE if the specified position is in the specified scope
+    Procedure ComIsInScope Variant llPos OLEcmTokenSetID llScope Boolean ByRef llVal
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 3
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llPos
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llScope
+        Send DefineParam to hDispatchDriver (OLE_VT_BYREF ior OLE_VT_BOOL) llVal
+        Send InvokeComMethod to hDispatchDriver 510 OLE_VT_VOID
+    End_Procedure
+
+    // Changes the current selection, like SetSel but without cancelling the current mode
+    Procedure ComSetSel2 Variant llSel Boolean llMakeVisible
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llSel
+        Send DefineParam to hDispatchDriver OLE_VT_BOOL llMakeVisible
+        Send InvokeComMethod to hDispatchDriver 511 OLE_VT_VOID
+    End_Procedure
+End_Class
+
+// CLSID: {BC71C358-375A-47B6-838E-F2D065D4C482}
+// ICodeMaxEvents Interface
+Class cComICodeMaxEvents is a Mixin
+
+    // The buffer changed
+    { MethodType=Event }
+    Procedure OnComChange
+    End_Procedure
+
+    // A view was scrolled horizontally
+    { MethodType=Event }
+    Procedure OnComHScroll
+    End_Procedure
+
+    // A view was scrolled vertically
+    { MethodType=Event }
+    Procedure OnComVScroll
+    End_Procedure
+
+    // The caret position changed
+    { MethodType=Event }
+    Procedure OnComSelChange
+    End_Procedure
+
+    // The active view changed
+    { MethodType=Event }
+    Procedure OnComViewChange
+    End_Procedure
+
+    // The modified flag changed state
+    { MethodType=Event }
+    Procedure OnComModifiedChange
+    End_Procedure
+
+    // The user requested to show the properties dialog box
+    { MethodType=Event }
+    Procedure OnComShowProps
+    End_Procedure
+
+    // The user pressed the Apply or OK button in the Window Properties dialog box
+    { MethodType=Event }
+    Procedure OnComPropsChange
+    End_Procedure
+
+    // A CodeMax window was created
+    { MethodType=Event }
+    Procedure OnComCreate
+    End_Procedure
+
+    // A CodeMax window was destroyed
+    { MethodType=Event }
+    Procedure OnComDestroy
+    End_Procedure
+
+    // A CodeMax window received the input focus
+    { MethodType=Event }
+    Procedure OnComSetFocus
+    End_Procedure
+
+    // A CodeMax window lost the input focus
+    { MethodType=Event }
+    Procedure OnComKillFocus
+    End_Procedure
+
+    // The user invoked the context menu
+    { MethodType=Event }
+    Procedure OnComContextMenu Integer llX Integer llY
+    End_Procedure
+
+    // The user deleted a line
+    { MethodType=Event }
+    Procedure OnComDeleteLine Integer llLine Integer llItemData
+    End_Procedure
+
+    // A keystroke command failed
+    { MethodType=Event }
+    Procedure OnComCmdFailure OLEcmCommand llCmd OLEcmCommandErr llErr
+    End_Procedure
+
+    // A registered command has been invoked
+    { MethodType=Event }
+    Procedure OnComRegisteredCmd OLEcmCommand llCmd
+    End_Procedure
+
+    // A key was pressed
+    { MethodType=Event }
+    Procedure OnComKeyDown Integer llKeyCode OLEcmKeyMod llModifiers
+    End_Procedure
+
+    // A key was released
+    { MethodType=Event }
+    Procedure OnComKeyUp Integer llKeyCode OLEcmKeyMod llModifiers
+    End_Procedure
+
+    // A key was pressed and released
+    { MethodType=Event }
+    Procedure OnComKeyPress Integer llKeyAscii OLEcmKeyMod llModifiers
+    End_Procedure
+
+    // A mouse button was pressed
+    { MethodType=Event }
+    Procedure OnComMouseDown OLEcmMouseBtn llButton OLEcmKeyMod llModifiers Integer llX Integer llY
+    End_Procedure
+
+    // The mouse pointer moved
+    { MethodType=Event }
+    Procedure OnComMouseMove OLEcmMouseBtn llButton OLEcmKeyMod llModifiers Integer llX Integer llY
+    End_Procedure
+
+    // A mouse button was released
+    { MethodType=Event }
+    Procedure OnComMouseUp OLEcmMouseBtn llButton OLEcmKeyMod llModifiers Integer llX Integer llY
+    End_Procedure
+
+    // A mouse button was double clicked
+    { MethodType=Event }
+    Procedure OnComMouseDblClick OLEcmMouseBtn llButton OLEcmKeyMod llModifiers Integer llX Integer llY
+    End_Procedure
+
+    // The overtype mode has changed
+    { MethodType=Event }
+    Procedure OnComOvertypeChange
+    End_Procedure
+
+    // A search operation wrapped to the start or end of the buffer
+    { MethodType=Event }
+    Procedure OnComFindWrapped OLEcmCommand llCmd Boolean llForward
+    End_Procedure
+
+    // Files were dragged from Explorer and dropped onto CodeMax
+    { MethodType=Event }
+    Procedure OnComDropFiles String llFiles
+    End_Procedure
+
+    // A member list is about to be displayed
+    { MethodType=Event }
+    Procedure OnComQueryMemberList OLEcmCommand llCmd Boolean llAutoList Variant llItem Variant llList
+    End_Procedure
+
+    // A lengthy process has reported progress toward completion
+    { MethodType=Event }
+    Procedure OnComProgress OLEcmProgressPhase llPhase Integer llPercentComplete Boolean llCanceled
+    End_Procedure
+
+    // A QuickInfo tooltip is about to be displayed
+    { MethodType=Event }
+    Procedure OnComQuickInfo Integer llLine Integer llColumn String ByRef llTipText
+    End_Procedure
+
+    // A member's bounds are being calculated as part of a statement completion operation
+    { MethodType=Event }
+    Procedure OnComQueryMemberBounds Variant llBounds Variant llItem
+    End_Procedure
+
+    // a hyperlink was clicked
+    { MethodType=Event }
+    Procedure OnComHyperlink String llUrl
+    End_Procedure
+
+    // A parameter block start position is calculated as part of ParameterInfo
+    { MethodType=Event }
+    Procedure OnComQueryParameterBlock Integer ByRef llStartLine Integer ByRef llStartCol Integer ByRef llArgIndex Integer ByRef llArgCount OLEcmQueryParamaterBlockResult ByRef llFoundParameterBlock
+    End_Procedure
+
+    // A parameter position in prototype string is calculated as part of ParameterInfo
+    { MethodType=Event }
+    Procedure OnComQueryParameterPosition String llPrototype Integer llParameter Integer llParameterCount Integer ByRef llStartIndex Integer ByRef llEndIndex OLEcmQueryParamaterPositionResult ByRef llFoundParameter
+    End_Procedure
+
+    // A cmCmdCompleteWord command was completed
+    { MethodType=Event }
+    Procedure OnComAfterCompleteWord
+    End_Procedure
+
+    // After a key was pressed and released and the character was inserted
+    { MethodType=Event }
+    Procedure OnComKeyPress2 Integer llKeyAscii OLEcmKeyMod llModifiers
+    End_Procedure
+
+    { Visibility=Private }
+    Procedure RegisterComEvents
+        Send RegisterComEvent 0 msg_OnComChange
+        Send RegisterComEvent 1 msg_OnComHScroll
+        Send RegisterComEvent 2 msg_OnComVScroll
+        Send RegisterComEvent 3 msg_OnComSelChange
+        Send RegisterComEvent 4 msg_OnComViewChange
+        Send RegisterComEvent 5 msg_OnComModifiedChange
+        Send RegisterComEvent 6 msg_OnComShowProps
+        Send RegisterComEvent 7 msg_OnComPropsChange
+        Send RegisterComEvent 8 msg_OnComCreate
+        Send RegisterComEvent 9 msg_OnComDestroy
+        Send RegisterComEvent 10 msg_OnComSetFocus
+        Send RegisterComEvent 11 msg_OnComKillFocus
+        Send RegisterComEvent 12 msg_OnComContextMenu
+        Send RegisterComEvent 13 msg_OnComDeleteLine
+        Send RegisterComEvent 14 msg_OnComCmdFailure
+        Send RegisterComEvent 15 msg_OnComRegisteredCmd
+        Send RegisterComEvent 16 msg_OnComKeyDown
+        Send RegisterComEvent 17 msg_OnComKeyUp
+        Send RegisterComEvent 18 msg_OnComKeyPress
+        Send RegisterComEvent 19 msg_OnComMouseDown
+        Send RegisterComEvent 20 msg_OnComMouseMove
+        Send RegisterComEvent 21 msg_OnComMouseUp
+        Send RegisterComEvent 22 msg_OnComMouseDblClick
+        Send RegisterComEvent 23 msg_OnComOvertypeChange
+        Send RegisterComEvent 24 msg_OnComFindWrapped
+        Send RegisterComEvent 25 msg_OnComDropFiles
+        Send RegisterComEvent 26 msg_OnComQueryMemberList
+        Send RegisterComEvent 27 msg_OnComProgress
+        Send RegisterComEvent 28 msg_OnComQuickInfo
+        Send RegisterComEvent 29 msg_OnComQueryMemberBounds
+        Send RegisterComEvent 30 msg_OnComHyperlink
+        Send RegisterComEvent 500 msg_OnComQueryParameterBlock
+        Send RegisterComEvent 501 msg_OnComQueryParameterPosition
+        Send RegisterComEvent 502 msg_OnComAfterCompleteWord
+        Send RegisterComEvent 503 msg_OnComKeyPress2
+    End_Procedure
+End_Class
+
+// CoClass
+// ProgID: VDFCodeMax.Control.19.1
+// CLSID: {41C2F83C-DB38-4CDF-8BB9-8FAF01318761}
+// VDFCodeMax 4.0 Edit Control
+{ CLSID="{41C2F83C-DB38-4CDF-8BB9-8FAF01318761}" }
+Class cComCodeMax is a cComActiveXControl
+    Import_Class_Protocol cComICodeMax
+    Import_Class_Protocol cComICodeMaxEvents
+
+    Procedure Construct_Object
+        Forward Send Construct_Object
+        Set psProgID to "{41C2F83C-DB38-4CDF-8BB9-8FAF01318761}"
+        Set psEventId to "{BC71C358-375A-47B6-838E-F2D065D4C482}"
+        Set peAutoCreate to acDeferredAutoCreate
+    End_Procedure
+End_Class
+
+// CLSID: {41BD355B-016D-4992-9726-2C8C01D9E9B3}
+// IRange Interface
+Class cComIRange is a Mixin
+
+    // The anchor line pos
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComStartLineNo Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 0 OLE_VT_I4 to value
+    End_Procedure
+
+    // The anchor line pos
+    { MethodType=Property DesignTime=False }
+    Function ComStartLineNo Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 0 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The anchor column pos
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComStartColNo Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 1 OLE_VT_I4 to value
+    End_Procedure
+
+    // The anchor column pos
+    { MethodType=Property DesignTime=False }
+    Function ComStartColNo Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The extension line pos
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComEndLineNo Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 2 OLE_VT_I4 to value
+    End_Procedure
+
+    // The extension line pos
+    { MethodType=Property DesignTime=False }
+    Function ComEndLineNo Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 2 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The extension col pos
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComEndColNo Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 3 OLE_VT_I4 to value
+    End_Procedure
+
+    // The extension col pos
+    { MethodType=Property DesignTime=False }
+    Function ComEndColNo Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 3 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Column selection mode - on/off
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComColumnSel Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 7 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Column selection mode - on/off
+    { MethodType=Property DesignTime=False }
+    Function ComColumnSel Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 7 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // True if range is empty
+    Function ComIsEmpty Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 4 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Makes the range empty
+    Procedure ComEmpty
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 5 OLE_VT_VOID
+    End_Procedure
+
+    // Makes sure the anchor is before the extension
+    Procedure ComNormalize
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 6 OLE_VT_VOID
+    End_Procedure
+End_Class
+
+// CoClass
+// ProgID: CodeMax.Range.4
+// CLSID: {00D90F76-413E-4A8E-AD09-8DD175B52958}
+// Range Class
+Class cComRange is a cComAutomationObject
+    Import_Class_Protocol cComIRange
+
+    Procedure Construct_Object
+        Forward Send Construct_Object
+        Set psProgID to "{00D90F76-413E-4A8E-AD09-8DD175B52958}"
+        Set peAutoCreate to acNoAutoCreate
+    End_Procedure
+End_Class
+
+// CLSID: {79699703-7DF1-4A08-871D-4B215D4B4BBC}
+// IPosition Interface
+Class cComIPosition is a Mixin
+
+    // The line position
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComLineNo Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 0 OLE_VT_I4 to value
+    End_Procedure
+
+    // The line position
+    { MethodType=Property DesignTime=False }
+    Function ComLineNo Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 0 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The line position
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComColNo Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 1 OLE_VT_I4 to value
+    End_Procedure
+
+    // The line position
+    { MethodType=Property DesignTime=False }
+    Function ComColNo Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+End_Class
+
+// CoClass
+// ProgID: CodeMax.Position.4
+// CLSID: {C6E0D8FC-8332-4463-BF28-4DA9936FCE5F}
+// Position Class
+Class cComPosition is a cComAutomationObject
+    Import_Class_Protocol cComIPosition
+
+    Procedure Construct_Object
+        Forward Send Construct_Object
+        Set psProgID to "{C6E0D8FC-8332-4463-BF28-4DA9936FCE5F}"
+        Set peAutoCreate to acNoAutoCreate
+    End_Procedure
+End_Class
+
+// CLSID: {F279A551-C1E9-4EB7-99C8-2B01EA5C989F}
+// ILanguage Interface
+Class cComILanguage is a Mixin
+
+    // The global collection of registered languages, if language registered
+    { MethodType=Property DesignTime=False }
+    Function ComParent Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -803 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // The name of the language
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComName String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver -800 OLE_VT_BSTR to value
+    End_Procedure
+
+    // The name of the language
+    { MethodType=Property DesignTime=False }
+    Function ComName Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -800 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Registers a language for use in CodeMax controls
+    Procedure ComRegister
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 0 OLE_VT_VOID
+    End_Procedure
+
+    // Unregisters a language by name or object
+    Procedure ComUnregister
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 1 OLE_VT_VOID
+    End_Procedure
+
+    // the collection of tokensets
+    { MethodType=Property DesignTime=False }
+    Function ComTokenSets Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 2 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // the language definition as XML
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComXml String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 3 OLE_VT_BSTR to value
+    End_Procedure
+
+    // the language definition as XML
+    { MethodType=Property DesignTime=False }
+    Function ComXml Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 3 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Retrieves a language definition from an XML file
+    Procedure ComLoadXmlDefinition String llFileName
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llFileName
+        Send InvokeComMethod to hDispatchDriver 4 OLE_VT_VOID
+    End_Procedure
+
+    // Saves a language definition to an XML file
+    Procedure ComSaveXmlDefinition String llFileName
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llFileName
+        Send InvokeComMethod to hDispatchDriver 5 OLE_VT_VOID
+    End_Procedure
+
+    // The characters defining an identifier.  Must be a regular expression (e.g. [a-zA-Z_] or [w]).
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComWordChars String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 6 OLE_VT_BSTR to value
+    End_Procedure
+
+    // The characters defining an identifier.  Must be a regular expression (e.g. [a-zA-Z_] or [w]).
+    { MethodType=Property DesignTime=False }
+    Function ComWordChars Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 6 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // The default member list to display when invoked by the user
+    { MethodType=Property DesignTime=False }
+    Function ComMemberList Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 7 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // The default member list to display when invoked by the user
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComMemberList Variant value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 7 OLE_VT_DISPATCH to value
+    End_Procedure
+
+    // True if whitespace can start a parameter block
+    { MethodType=Property DesignTime=False }
+    Function ComWhitespaceAsParamBlock Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 8 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // True if whitespace can start a parameter block
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComWhitespaceAsParamBlock Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 8 OLE_VT_BOOL to value
+    End_Procedure
+End_Class
+
+// CoClass
+// ProgID: CodeMax.Language.4
+// CLSID: {B5F1C6D7-84EC-4669-8A30-00F4904383D3}
+// Language Class
+Class cComLanguage is a cComAutomationObject
+    Import_Class_Protocol cComILanguage
+
+    Procedure Construct_Object
+        Forward Send Construct_Object
+        Set psProgID to "{B5F1C6D7-84EC-4669-8A30-00F4904383D3}"
+        Set peAutoCreate to acNoAutoCreate
+    End_Procedure
+End_Class
+
+// CLSID: {2A5B6C63-4684-4DB1-8A62-69C07B914E60}
+// ITokenSet Interface
+Class cComITokenSet is a Mixin
+
+    // The language which owns this object
+    { MethodType=Property DesignTime=False }
+    Function ComParent Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -803 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // The name of the tokenset
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComName String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver -800 OLE_VT_BSTR to value
+    End_Procedure
+
+    // The name of the tokenset
+    { MethodType=Property DesignTime=False }
+    Function ComName Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -800 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Tokenset identifier
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComId OLEcmTokenSetID value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 0 OLE_VT_I4 to value
+    End_Procedure
+
+    // Tokenset identifier
+    { MethodType=Property DesignTime=False }
+    Function ComId Returns OLEcmTokenSetID
+        Handle hDispatchDriver
+        OLEcmTokenSetID retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 0 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Tokenset type (scope or keyword list)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComType OLEcmTokenSetType value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 1 OLE_VT_I4 to value
+    End_Procedure
+
+    // Tokenset type (scope or keyword list)
+    { MethodType=Property DesignTime=False }
+    Function ComType Returns OLEcmTokenSetType
+        Handle hDispatchDriver
+        OLEcmTokenSetType retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Tokenset is case-sensitive
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComCaseSensitive Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 2 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Tokenset is case-sensitive
+    { MethodType=Property DesignTime=False }
+    Function ComCaseSensitive Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 2 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Fixup keyword case on-the-fly (on/off)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComNormalizeCase Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 3 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Fixup keyword case on-the-fly (on/off)
+    { MethodType=Property DesignTime=False }
+    Function ComNormalizeCase Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 3 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // font style (bold, italic, underline, normal, etc.)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComFontStyle OLEcmFontStyle value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 4 OLE_VT_I4 to value
+    End_Procedure
+
+    // font style (bold, italic, underline, normal, etc.)
+    { MethodType=Property DesignTime=False }
+    Function ComFontStyle Returns OLEcmFontStyle
+        Handle hDispatchDriver
+        OLEcmFontStyle retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 4 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // foreground color
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComForeColor Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver -513 OLE_VT_I4 to value
+    End_Procedure
+
+    // foreground color
+    { MethodType=Property DesignTime=False }
+    Function ComForeColor Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -513 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // background color
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComBackColor Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver -501 OLE_VT_I4 to value
+    End_Procedure
+
+    // background color
+    { MethodType=Property DesignTime=False }
+    Function ComBackColor Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -501 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Tokenset definition is hidden to the user
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComHidden Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 5 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Tokenset definition is hidden to the user
+    { MethodType=Property DesignTime=False }
+    Function ComHidden Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 5 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Tokenset represents scope which supports auto-indent
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComAutoIndent Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 14 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Tokenset represents scope which supports auto-indent
+    { MethodType=Property DesignTime=False }
+    Function ComAutoIndent Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 14 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Tokenset represents scope which auto-terminates at end of line
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComSingleLineScope Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 15 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Tokenset represents scope which auto-terminates at end of line
+    { MethodType=Property DesignTime=False }
+    Function ComSingleLineScope Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 15 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Tokenset represents scope which can chain together with itself (e.g. if else else else end)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComChain Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 16 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Tokenset represents scope which can chain together with itself (e.g. if else else else end)
+    { MethodType=Property DesignTime=False }
+    Function ComChain Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 16 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Tokenset to inherit color and font settings from
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComInheritFrom Variant value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 17 OLE_VT_DISPATCH to value
+    End_Procedure
+
+    // Tokenset to inherit color and font settings from
+    { MethodType=Property DesignTime=False }
+    Function ComInheritFrom Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 17 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // The scopes this tokenset is valid in
+    { MethodType=Property DesignTime=False }
+    Function ComValidScopes Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 18 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // The primary token collection
+    { MethodType=Property DesignTime=False }
+    Function ComTokens Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 19 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // The secondary token collection
+    { MethodType=Property DesignTime=False }
+    Function ComTokens2 Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 20 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // Match scope end tokens only if interior scopes are fully closed
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComSymmetrical Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 21 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Match scope end tokens only if interior scopes are fully closed
+    { MethodType=Property DesignTime=False }
+    Function ComSymmetrical Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 21 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The member list to display when invoked by the user while the caret is inside this scope or immediately after a token in this collection
+    { MethodType=Property DesignTime=False }
+    Function ComMemberList Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 22 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // The member list to display when invoked by the user while the caret is inside this scope or immediately after a token in this collection
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComMemberList Variant value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 22 OLE_VT_DISPATCH to value
+    End_Procedure
+
+    // Allow brace matching to occur on this tokenset
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComMatchBraces Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 23 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Allow brace matching to occur on this tokenset
+    { MethodType=Property DesignTime=False }
+    Function ComMatchBraces Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 23 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Enable/disable tokenset while parsing (True = Enable)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComEnabled Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 24 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Enable/disable tokenset while parsing (True = Enable)
+    { MethodType=Property DesignTime=False }
+    Function ComEnabled Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 24 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+End_Class
+
+// CoClass
+// ProgID: CodeMax.TokenSet.4
+// CLSID: {7325F330-89E3-4FAE-8AEE-F77DE0557757}
+// TokenSet Class
+Class cComTokenSet is a cComAutomationObject
+    Import_Class_Protocol cComITokenSet
+
+    Procedure Construct_Object
+        Forward Send Construct_Object
+        Set psProgID to "{7325F330-89E3-4FAE-8AEE-F77DE0557757}"
+        Set peAutoCreate to acNoAutoCreate
+    End_Procedure
+End_Class
+
+// CLSID: {FF285595-AC87-488F-B68B-FCB46A552513}
+// HotKey Interface
+Class cComIHotKey is a Mixin
+
+    // The modifiers for keystroke #1
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComModifiers1 Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 1 OLE_VT_I4 to value
+    End_Procedure
+
+    // The modifiers for keystroke #1
+    { MethodType=Property DesignTime=False }
+    Function ComModifiers1 Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The virtual key for keystroke #1 as a one-character string
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComVirtKey1 String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 2 OLE_VT_BSTR to value
+    End_Procedure
+
+    // The virtual key for keystroke #1 as a one-character string
+    { MethodType=Property DesignTime=False }
+    Function ComVirtKey1 Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 2 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // The modifiers for keystroke #2
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComModifiers2 Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 3 OLE_VT_I4 to value
+    End_Procedure
+
+    // The modifiers for keystroke #2
+    { MethodType=Property DesignTime=False }
+    Function ComModifiers2 Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 3 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The virtual key for keystroke #2 as a one-character string
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComVirtKey2 String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 4 OLE_VT_BSTR to value
+    End_Procedure
+
+    // The virtual key for keystroke #2 as a one-character string
+    { MethodType=Property DesignTime=False }
+    Function ComVirtKey2 Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 4 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Bind this hotkey to a CodeMax command
+    Procedure ComBindTo OLEcmCommand llCmd
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llCmd
+        Send InvokeComMethod to hDispatchDriver 5 OLE_VT_VOID
+    End_Procedure
+
+    // Unbind this hotkey from its associated CodeMax command
+    Procedure ComUnbind
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 6 OLE_VT_VOID
+    End_Procedure
+End_Class
+
+// CoClass
+// ProgID: CodeMax.HotKey.4
+// CLSID: {E9836F95-FFB3-4F25-843A-DF4477EBB45F}
+// HotKey Class
+Class cComHotKey is a cComAutomationObject
+    Import_Class_Protocol cComIHotKey
+
+    Procedure Construct_Object
+        Forward Send Construct_Object
+        Set psProgID to "{E9836F95-FFB3-4F25-843A-DF4477EBB45F}"
+        Set peAutoCreate to acNoAutoCreate
+    End_Procedure
+End_Class
+
+// CLSID: {EA666776-957E-47D9-B52A-29D7E3C7AA2A}
+// IGlobals Interface
+Class cComIGlobals is a Mixin
+
+
+    // Sets the MRU list displayed in the Find/Find-Replace dialog boxes, delimited by 
+    // 
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComFindMRUList String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 0 OLE_VT_BSTR to value
+    End_Procedure
+
+
+    // Sets the MRU list displayed in the Find/Find-Replace dialog boxes, delimited by 
+    // 
+    { MethodType=Property DesignTime=False }
+    Function ComFindMRUList Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 0 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Sets the MRU list displayed in the Find-Replace dialog box
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComReplaceMRUList String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 1 OLE_VT_BSTR to value
+    End_Procedure
+
+    // Sets the MRU list displayed in the Find-Replace dialog box
+    { MethodType=Property DesignTime=False }
+    Function ComReplaceMRUList Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Retrieves the keyboard assignments into a buffer
+    Procedure ComGetHotKeys UChar[] ByRef llHotKeysBuff
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver (OLE_VT_BYREF ior (OLE_VT_ARRAY ior OLE_VT_UI1)) llHotKeysBuff
+        Send InvokeComMethod to hDispatchDriver 2 OLE_VT_VOID
+    End_Procedure
+
+    // Loads the keyboard assignments into CodeMax from a buffer
+    Procedure ComSetHotKeys UChar[] ByRef llHotKeysBuff
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver (OLE_VT_BYREF ior (OLE_VT_ARRAY ior OLE_VT_UI1)) llHotKeysBuff
+        Send InvokeComMethod to hDispatchDriver 3 OLE_VT_VOID
+    End_Procedure
+
+    // Resets all keyboards settings back to the factory settings
+    Procedure ComResetDefaultHotKeys
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 4 OLE_VT_VOID
+    End_Procedure
+
+    // Returns the collection of hotkeys assigned to a CodeMax command
+    Function ComGetHotKeysForCmd OLEcmCommand llCmd Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llCmd
+        Get InvokeComMethod of hDispatchDriver 5 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // Retrieves a human-readable title or description of a CodeMax command
+    Function ComGetCmdString OLEcmCommand llCmd Boolean llDescription Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llCmd
+        Send DefineParam to hDispatchDriver OLE_VT_BOOL llDescription
+        Get InvokeComMethod of hDispatchDriver 6 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Retrieves a macro definition into a byte buffer
+    Procedure ComGetMacro Integer llMacro UChar[] ByRef llMacroBuff
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llMacro
+        Send DefineParam to hDispatchDriver (OLE_VT_BYREF ior (OLE_VT_ARRAY ior OLE_VT_UI1)) llMacroBuff
+        Send InvokeComMethod to hDispatchDriver 7 OLE_VT_VOID
+    End_Procedure
+
+    // Loads a macro into CodeMax from a buffer
+    Procedure ComSetMacro Integer llMacro UChar[] ByRef llMacroBuff
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llMacro
+        Send DefineParam to hDispatchDriver (OLE_VT_BYREF ior (OLE_VT_ARRAY ior OLE_VT_UI1)) llMacroBuff
+        Send InvokeComMethod to hDispatchDriver 8 OLE_VT_VOID
+    End_Procedure
+
+    // Registers a custom command
+    Procedure ComRegisterCmd Integer llCmd String llName String llDescription
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 3
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llCmd
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llName
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llDescription
+        Send InvokeComMethod to hDispatchDriver 9 OLE_VT_VOID
+    End_Procedure
+
+    // Unregisters a custom command registered with RegisterCommand()
+    Procedure ComUnregisterCmd Integer llCmd
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llCmd
+        Send InvokeComMethod to hDispatchDriver 10 OLE_VT_VOID
+    End_Procedure
+
+    // Saves all global user settings to the Windows Registry
+    Procedure ComSaveSettingsToRegistry String llRegistryKeyPath
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llRegistryKeyPath
+        Send InvokeComMethod to hDispatchDriver 11 OLE_VT_VOID
+    End_Procedure
+
+    // Loads all global user settings from the Windows Registry
+    Procedure ComLoadSettingsFromRegistry String llRegistryKeyPath
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llRegistryKeyPath
+        Send InvokeComMethod to hDispatchDriver 12 OLE_VT_VOID
+    End_Procedure
+
+    // Saves all global user settings to a stream
+    Procedure ComSaveSettingsToStream Variant llStream
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_UNKNOWN llStream
+        Send InvokeComMethod to hDispatchDriver 13 OLE_VT_VOID
+    End_Procedure
+
+    // Loads all global user settings from a stream
+    Procedure ComLoadSettingsFromStream Variant llStream
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_UNKNOWN llStream
+        Send InvokeComMethod to hDispatchDriver 14 OLE_VT_VOID
+    End_Procedure
+
+    // Registers a custom token parsing rule
+    Procedure ComRegisterTokenRule Variant llTokenRule
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llTokenRule
+        Send InvokeComMethod to hDispatchDriver 15 OLE_VT_VOID
+    End_Procedure
+
+    // Unregisters a custom token parsing rule
+    Procedure ComUnregisterTokenRule Variant llTokenRule
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llTokenRule
+        Send InvokeComMethod to hDispatchDriver 16 OLE_VT_VOID
+    End_Procedure
+
+    // The master collection of all registered languages
+    { MethodType=Property DesignTime=False }
+    Function ComLanguages Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 17 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // Test a regular expression for syntax errors
+    Function ComValidateRegExp String llRegExp Integer ByRef llErrorCol String ByRef llErrMsg Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 3
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llRegExp
+        Send DefineParam to hDispatchDriver (OLE_VT_BYREF ior OLE_VT_I4) llErrorCol
+        Send DefineParam to hDispatchDriver (OLE_VT_BYREF ior OLE_VT_BSTR) llErrMsg
+        Get InvokeComMethod of hDispatchDriver 18 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // specifies how progress feedback should behave.
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComProgressBehavior OLEcmProgressFlags value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 19 OLE_VT_I4 to value
+    End_Procedure
+
+    // specifies how progress feedback should behave.
+    { MethodType=Property DesignTime=False }
+    Function ComProgressBehavior Returns OLEcmProgressFlags
+        Handle hDispatchDriver
+        OLEcmProgressFlags retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 19 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // A DLL whose resources should override those in the CodeMax DLL.
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComResourceOverrideDLL String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 20 OLE_VT_BSTR to value
+    End_Procedure
+
+    // A DLL whose resources should override those in the CodeMax DLL.
+    { MethodType=Property DesignTime=False }
+    Function ComResourceOverrideDLL Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 20 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // The master collection of all registered memberlists
+    { MethodType=Property DesignTime=False }
+    Function ComMemberLists Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 21 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+End_Class
+
+// CoClass
+// ProgID: CodeMax.Globals.4
+// CLSID: {485A9B56-CCAB-4AE8-ACC0-886CE5482739}
+// Globals Class
+Class cComGlobals is a cComAutomationObject
+    Import_Class_Protocol cComIGlobals
+
+    Procedure Construct_Object
+        Forward Send Construct_Object
+        Set psProgID to "{485A9B56-CCAB-4AE8-ACC0-886CE5482739}"
+        Set peAutoCreate to acNoAutoCreate
+    End_Procedure
+End_Class
+
+// CLSID: {2037F55D-936E-4B12-86EC-934050337A7D}
+// IRect Interface
+Class cComIRect is a Mixin
+
+    // left
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComLeft Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 0 OLE_VT_I4 to value
+    End_Procedure
+
+    // left
+    { MethodType=Property DesignTime=False }
+    Function ComLeft Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 0 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // top
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComTop Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 1 OLE_VT_I4 to value
+    End_Procedure
+
+    // top
+    { MethodType=Property DesignTime=False }
+    Function ComTop Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // right
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComRight Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 2 OLE_VT_I4 to value
+    End_Procedure
+
+    // right
+    { MethodType=Property DesignTime=False }
+    Function ComRight Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 2 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // bottom
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComBottom Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 3 OLE_VT_I4 to value
+    End_Procedure
+
+    // bottom
+    { MethodType=Property DesignTime=False }
+    Function ComBottom Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 3 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+End_Class
+
+// CoClass
+// ProgID: CodeMax.Rect.4
+// CLSID: {AE454008-1651-45D2-84E1-4A86BF6AFC18}
+// Rect Class
+Class cComRect is a cComAutomationObject
+    Import_Class_Protocol cComIRect
+
+    Procedure Construct_Object
+        Forward Send Construct_Object
+        Set psProgID to "{AE454008-1651-45D2-84E1-4A86BF6AFC18}"
+        Set peAutoCreate to acNoAutoCreate
+    End_Procedure
+End_Class
+
+// CLSID: {6922D56F-B1AD-43D8-A386-412EB1D3AE29}
+// IMemberList Interface
+Class cComIMemberList is a Mixin
+
+    // Get member by text or zero-based index
+    { MethodType=Property DesignTime=False }
+    Function ComItem Variant llIndex Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llIndex
+        Get InvokeComMethod of hDispatchDriver 0 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // The associated language
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComLanguage Variant value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 1 OLE_VT_DISPATCH to value
+    End_Procedure
+
+    // The associated language
+    { MethodType=Property DesignTime=False }
+    Function ComLanguage Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // Total number of members
+    { MethodType=Property DesignTime=False }
+    Function ComCount Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 2 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The name of the member list
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComName String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver -800 OLE_VT_BSTR to value
+    End_Procedure
+
+    // The name of the member list
+    { MethodType=Property DesignTime=False }
+    Function ComName Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -800 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Create and add a member to the collection
+    Function ComAdd String llName String llPrototype Short llImage Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 3
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llName
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llPrototype
+        Send DefineParam to hDispatchDriver OLE_VT_I2 llImage
+        Get InvokeComMethod of hDispatchDriver 3 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // Additional member lists to include when this list displayed in the UI.
+    { MethodType=Property DesignTime=False }
+    Function ComInheritedLists Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 4 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // removes a member from the collection by name, zero-based index, or object
+    Procedure ComRemove Variant llMember
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llMember
+        Send InvokeComMethod to hDispatchDriver 5 OLE_VT_VOID
+    End_Procedure
+
+    // removes all members
+    Procedure ComRemoveAll
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 6 OLE_VT_VOID
+    End_Procedure
+
+    // sets the line margin images
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComHImageList OLE_HANDLE value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 7 OLE_VT_I4 to value
+    End_Procedure
+
+    // sets the line margin images
+    { MethodType=Property DesignTime=False }
+    Function ComHImageList Returns OLE_HANDLE
+        Handle hDispatchDriver
+        OLE_HANDLE retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 7 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // retrieves the ImageList control to be used.  Try Imember.hImageList property if this fails.
+    { MethodType=Property DesignTime=False }
+    Function ComImageList Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 8 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // retrieves the ImageList control to be used.  Try Imember.hImageList property if this fails.
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComImageList Variant value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 8 OLE_VT_DISPATCH to value
+    End_Procedure
+
+    // retrieves the ImageList control to be used.  Try Imember.hImageList property if this fails.
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComImageListRef Variant value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 8 OLE_VT_DISPATCH to value
+    End_Procedure
+
+    // Display images next to members
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComShowImages Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 9 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Display images next to members
+    { MethodType=Property DesignTime=False }
+    Function ComShowImages Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 9 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // the member list definition as XML
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComXml String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 10 OLE_VT_BSTR to value
+    End_Procedure
+
+    // the member list definition as XML
+    { MethodType=Property DesignTime=False }
+    Function ComXml Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 10 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Retrieves a member list definition from an XML file
+    Procedure ComLoadXmlDefinition String llFileName
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llFileName
+        Send InvokeComMethod to hDispatchDriver 11 OLE_VT_VOID
+    End_Procedure
+
+    // Saves a member list definition to an XML file
+    Procedure ComSaveXmlDefinition String llFileName
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llFileName
+        Send InvokeComMethod to hDispatchDriver 12 OLE_VT_VOID
+    End_Procedure
+
+    // Registers a memberlist to be referenced later
+    Procedure ComRegister
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 13 OLE_VT_VOID
+    End_Procedure
+
+    // Unregisters a memberlist by name or object
+    Procedure ComUnregister
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 14 OLE_VT_VOID
+    End_Procedure
+
+    // Width (in characters) of memberlist popup window.  Set to -1 for auto-size.
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComWidth Short value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 15 OLE_VT_I2 to value
+    End_Procedure
+
+    // Width (in characters) of memberlist popup window.  Set to -1 for auto-size.
+    { MethodType=Property DesignTime=False }
+    Function ComWidth Returns Short
+        Handle hDispatchDriver
+        Short retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 15 OLE_VT_I2 to retVal
+        Function_Return retVal
+    End_Function
+
+    // member list is case-sensitive
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComCaseSensitive Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 16 OLE_VT_BOOL to value
+    End_Procedure
+
+    // member list is case-sensitive
+    { MethodType=Property DesignTime=False }
+    Function ComCaseSensitive Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 16 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // member list styles
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComStyle OLEcmMemberListStyle value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 500 OLE_VT_I4 to value
+    End_Procedure
+
+    // member list styles
+    { MethodType=Property DesignTime=False }
+    Function ComStyle Returns OLEcmMemberListStyle
+        Handle hDispatchDriver
+        OLEcmMemberListStyle retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 500 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+End_Class
+
+// CoClass
+// ProgID: CodeMax.MemberList.4
+// CLSID: {25648F10-859F-4A25-9FAC-FAAB44F1168D}
+// MemberList Class
+Class cComMemberList is a cComAutomationObject
+    Import_Class_Protocol cComIMemberList
+
+    Procedure Construct_Object
+        Forward Send Construct_Object
+        Set psProgID to "{25648F10-859F-4A25-9FAC-FAAB44F1168D}"
+        Set peAutoCreate to acNoAutoCreate
+    End_Procedure
+End_Class
+
+// CLSID: {A2B7C904-9428-43B3-9F43-4F721115256D}
+// ILanguages Interface
+Class cComILanguages is a cComAutomationObject
+
+    // Get language by name or zero-based index
+    { MethodType=Property DesignTime=False }
+    Function ComItem Variant llIndex Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llIndex
+        Get InvokeComMethod of hDispatchDriver 0 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // Total number of registered languages
+    { MethodType=Property DesignTime=False }
+    Function ComCount Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // register a language for use in a CodeMax control
+    Procedure ComAdd Variant llLanguage
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llLanguage
+        Send InvokeComMethod to hDispatchDriver 2 OLE_VT_VOID
+    End_Procedure
+
+    // Unregister a language
+    Procedure ComRemove Variant llLanguage
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llLanguage
+        Send InvokeComMethod to hDispatchDriver 3 OLE_VT_VOID
+    End_Procedure
+
+    // Unregister all languages
+    Procedure ComRemoveAll
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 4 OLE_VT_VOID
+    End_Procedure
+End_Class
+
+// CLSID: {BA2CAFE7-FAD2-42BF-AAE1-8DAC1AB8FEBB}
+// ITokenSets Interface
+Class cComITokenSets is a cComAutomationObject
+
+    // Get tokenset by name or zero-based index
+    { MethodType=Property DesignTime=False }
+    Function ComItem Variant llIndex Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llIndex
+        Get InvokeComMethod of hDispatchDriver 0 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // Total number of tokensets
+    { MethodType=Property DesignTime=False }
+    Function ComCount Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // add a tokenset to the collection
+    Procedure ComAdd Variant llTokenSet
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llTokenSet
+        Send InvokeComMethod to hDispatchDriver 2 OLE_VT_VOID
+    End_Procedure
+
+    // removes a tokenset from the collection
+    Procedure ComRemove Variant llTokenSet
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llTokenSet
+        Send InvokeComMethod to hDispatchDriver 3 OLE_VT_VOID
+    End_Procedure
+End_Class
+
+// CLSID: {F9F6C8B9-42B0-4698-827C-4E63CC439180}
+// ITokens Interface
+Class cComITokens is a cComAutomationObject
+
+    // The TokenSet that owns this collection
+    { MethodType=Property DesignTime=False }
+    Function ComParent Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -803 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // Get token by text or zero-based index
+    { MethodType=Property DesignTime=False }
+    Function ComItem Variant llIndex Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llIndex
+        Get InvokeComMethod of hDispatchDriver 0 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // Total number of tokens
+    { MethodType=Property DesignTime=False }
+    Function ComCount Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Create and add a token to the collection
+    Function ComAdd String llText Boolean llRegExp Variant llRule Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 3
+        Send DefineParam to hDispatchDriver OLE_VT_BSTR llText
+        Send DefineParam to hDispatchDriver OLE_VT_BOOL llRegExp
+        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llRule
+        Get InvokeComMethod of hDispatchDriver 2 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // removes a token from the collection by text, zero-based index, or object
+    Procedure ComRemove Variant llToken
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llToken
+        Send InvokeComMethod to hDispatchDriver 3 OLE_VT_VOID
+    End_Procedure
+
+    // removes all tokens
+    Procedure ComRemoveAll
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 4 OLE_VT_VOID
+    End_Procedure
+End_Class
+
+// CLSID: {45206547-DB80-43F5-B066-7C1B3B613AF5}
+// IToken Interface
+Class cComIToken is a cComAutomationObject
+
+    // The text of the token
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComText String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 1 OLE_VT_BSTR to value
+    End_Procedure
+
+    // The text of the token
+    { MethodType=Property DesignTime=False }
+    Function ComText Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // True if the token text is a regular expression
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComRegExp Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 2 OLE_VT_BOOL to value
+    End_Procedure
+
+    // True if the token text is a regular expression
+    { MethodType=Property DesignTime=False }
+    Function ComRegExp Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 2 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The verification rule to invoke when token text is matched
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComRule Variant value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 3 OLE_VT_VARIANT to value
+    End_Procedure
+
+    // The verification rule to invoke when token text is matched
+    { MethodType=Property DesignTime=False }
+    Function ComRule Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 3 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // Action to take when token text is typed by user
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComAction OLEcmCommand value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 4 OLE_VT_I4 to value
+    End_Procedure
+
+    // Action to take when token text is typed by user
+    { MethodType=Property DesignTime=False }
+    Function ComAction Returns OLEcmCommand
+        Handle hDispatchDriver
+        OLEcmCommand retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 4 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+End_Class
+
+// CLSID: {55029E7C-BF57-4DAA-A56E-1A4257C514A6}
+// ITokenRule Interface
+Class cComITokenRule is a cComAutomationObject
+
+    // Called when a token is detected and needs final approval
+    Function ComVerifyToken Variant llParser Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llParser
+        Get InvokeComMethod of hDispatchDriver 0 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The name of the token rule
+    { MethodType=Property DesignTime=False }
+    Function ComName Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -800 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+End_Class
+
+// CLSID: {F0E222F5-38DF-4332-A770-FDD197E31DC9}
+// IParser Interface
+Class cComILineParser is a cComAutomationObject
+
+    // The language to parse with
+    { MethodType=Property DesignTime=False }
+    Function ComLanguage Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 0 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // parser is locked against updates -- you may only query properties
+    { MethodType=Property DesignTime=False }
+    Function ComReadOnly Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // current buffer line number (zero-based)
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComLineNo Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 2 OLE_VT_I4 to value
+    End_Procedure
+
+    // current buffer line number (zero-based)
+    { MethodType=Property DesignTime=False }
+    Function ComLineNo Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 2 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Scan in the next token
+    Procedure ComGetNextToken OLEcmParseDirection llDirection OLEcmParseFlags llFlags
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llDirection
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llFlags
+        Send InvokeComMethod to hDispatchDriver 4 OLE_VT_VOID
+    End_Procedure
+
+    // True if a line has been fully parsed in a particular direction
+    { MethodType=Property DesignTime=False }
+    Function ComDone OLEcmParseDirection llDirection Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llDirection
+        Get InvokeComMethod of hDispatchDriver 5 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // current token text
+    { MethodType=Property DesignTime=False }
+    Function ComTokenText Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 6 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // current token length
+    { MethodType=Property DesignTime=False }
+    Function ComTokenLength Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 7 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The tokenset which holds the current token
+    { MethodType=Property DesignTime=False }
+    Function ComTokenSet Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 8 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // index of current token in tokenset
+    { MethodType=Property DesignTime=False }
+    Function ComTokenIndex Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 9 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // token subset of current token
+    { MethodType=Property DesignTime=False }
+    Function ComTokenSubset Returns OLEcmTokenSubset
+        Handle hDispatchDriver
+        OLEcmTokenSubset retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 10 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // start buffer column number of current token (zero-based)
+    { MethodType=Property DesignTime=False }
+    Function ComTokenStartColNo Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 11 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // End buffer column number of current token (zero-based)
+    { MethodType=Property DesignTime=False }
+    Function ComTokenEndColNo Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 12 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The first character of the current token
+    { MethodType=Property DesignTime=False }
+    Function ComTokenStartChar Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 13 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The last character of the current token
+    { MethodType=Property DesignTime=False }
+    Function ComTokenEndChar Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 14 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The character immediately before the start of the current token
+    { MethodType=Property DesignTime=False }
+    Function ComTokenLeadingChar Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 15 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // The character immediately after the end of the current token
+    { MethodType=Property DesignTime=False }
+    Function ComTokenTrailingChar Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 16 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // point parser at a different column (zero-based), possibly at the start of the current token
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComColNo Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 17 OLE_VT_I4 to value
+    End_Procedure
+
+    // point parser at a different column (zero-based), possibly at the end of the current token
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComColNoAfterToken Integer value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 18 OLE_VT_I4 to value
+    End_Procedure
+
+    // Automatically wrap to adjacent lines while parsing
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComWrap Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 19 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Automatically wrap to adjacent lines while parsing
+    { MethodType=Property DesignTime=False }
+    Function ComWrap Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 19 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // Advance parser to matching scope keyword
+    Function ComMatchBraces OLEcmParseDirection llDirection Integer llSearchDist Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 2
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llDirection
+        Send DefineParam to hDispatchDriver OLE_VT_I4 llSearchDist
+        Get InvokeComMethod of hDispatchDriver 20 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+End_Class
+
+// CLSID: {72715143-238E-4ACE-B992-F88CC582073D}
+// IMember Interface
+Class cComIMember is a cComAutomationObject
+
+    // The memberlist that contains this member
+    { MethodType=Property DesignTime=False }
+    Function ComParent Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -803 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // The name of the member with no parameters or qualifiers
+    { MethodType=Property DesignTime=False }
+    Function ComName Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver -800 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // The full prototype of the member
+    { MethodType=Property DesignTime=False }
+    Function ComPrototype Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // The image to display in the member list.  Specified as a zero-based index into the members collection's imagelist
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComImage Short value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 2 OLE_VT_I2 to value
+    End_Procedure
+
+    // The image to display in the member list.  Specified as a zero-based index into the members collection's imagelist
+    { MethodType=Property DesignTime=False }
+    Function ComImage Returns Short
+        Handle hDispatchDriver
+        Short retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 2 OLE_VT_I2 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Text to display in a tooltip when the member is selected in a list
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComHelpString String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 3 OLE_VT_BSTR to value
+    End_Procedure
+
+    // Text to display in a tooltip when the member is selected in a list
+    { MethodType=Property DesignTime=False }
+    Function ComHelpString Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 3 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Whether the member is a sublist
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComSubList Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 500 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Whether the member is a sublist
+    { MethodType=Property DesignTime=False }
+    Function ComSubList Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 500 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+
+    // The text to be inserted, if not the same as the name
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComText String value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 501 OLE_VT_BSTR to value
+    End_Procedure
+
+    // The text to be inserted, if not the same as the name
+    { MethodType=Property DesignTime=False }
+    Function ComText Returns String
+        Handle hDispatchDriver
+        String retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 501 OLE_VT_BSTR to retVal
+        Function_Return retVal
+    End_Function
+
+    // Whether the member should be considered in find best match algorithm
+    { MethodType=Property DesignTime=False }
+    Procedure Set ComEnableMatch Boolean value
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Set ComProperty of hDispatchDriver 502 OLE_VT_BOOL to value
+    End_Procedure
+
+    // Whether the member should be considered in find best match algorithm
+    { MethodType=Property DesignTime=False }
+    Function ComEnableMatch Returns Boolean
+        Handle hDispatchDriver
+        Boolean retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 502 OLE_VT_BOOL to retVal
+        Function_Return retVal
+    End_Function
+End_Class
+
+// CLSID: {EFE9AF2C-85F9-48EF-B099-E215BD7B60B3}
+// IMemberLists Interface
+Class cComIMemberLists is a cComAutomationObject
+
+    // Retrieve a member list by name or zero-based index
+    { MethodType=Property DesignTime=False }
+    Function ComItem Variant llIndex Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llIndex
+        Get InvokeComMethod of hDispatchDriver 0 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // Total number of member lists
+    { MethodType=Property DesignTime=False }
+    Function ComCount Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // Add a member list to the collection
+    Procedure ComAdd Variant llMemberList
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llMemberList
+        Send InvokeComMethod to hDispatchDriver 2 OLE_VT_VOID
+    End_Procedure
+
+    // removes a member list from the collection by name, zero-based index, or object
+    Procedure ComRemove Variant llMemberList
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llMemberList
+        Send InvokeComMethod to hDispatchDriver 3 OLE_VT_VOID
+    End_Procedure
+
+    // removes all member lists
+    Procedure ComRemoveAll
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send InvokeComMethod to hDispatchDriver 4 OLE_VT_VOID
+    End_Procedure
+End_Class
+
+// CLSID: {16F66F6A-4646-4020-8ABA-2E85994962F6}
+// IHotKeys Interface
+Class cComIHotKeys is a cComAutomationObject
+
+    // Get hotkey by zero-based index
+    { MethodType=Property DesignTime=False }
+    Function ComItem Variant llIndex Returns Variant
+        Handle hDispatchDriver
+        Variant retVal
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llIndex
+        Get InvokeComMethod of hDispatchDriver 0 OLE_VT_DISPATCH to retVal
+        Function_Return retVal
+    End_Function
+
+    // Total number of HotKeys
+    { MethodType=Property DesignTime=False }
+    Function ComCount Returns Integer
+        Handle hDispatchDriver
+        Integer retVal
+        Get phDispatchDriver to hDispatchDriver
+        Get InvokeComMethod of hDispatchDriver 1 OLE_VT_I4 to retVal
+        Function_Return retVal
+    End_Function
+
+    // binds a hotkey to the command associated with this collection
+    Procedure ComAdd Variant llHotKey
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_DISPATCH llHotKey
+        Send InvokeComMethod to hDispatchDriver 2 OLE_VT_VOID
+    End_Procedure
+
+    // unbinds a hotkey from the command associated with this collection
+    Procedure ComRemove Variant llHotKey
+        Handle hDispatchDriver
+        Get phDispatchDriver to hDispatchDriver
+        Send PrepareParams to hDispatchDriver 1
+        Send DefineParam to hDispatchDriver OLE_VT_VARIANT llHotKey
+        Send InvokeComMethod to hDispatchDriver 3 OLE_VT_VOID
+    End_Procedure
+End_Class
Index: VdfSplat191.sws
===================================================================
--- VdfSplat191.sws	(nonexistent)
+++ VdfSplat191.sws	(revision 59)
@@ -0,0 +1,11 @@
+[Properties]
+Version=19.1
+[WorkspacePaths]
+ConfigFile=.\Programs\Config.ws
+[TestProjects]
+TestWindowsProject=Test.src
+[Projects]
+Project0=VdfSplat.src
+Project1=Test.src
+[Conditionals]
+Is$WebApp=False
