Edit object
Add an easy-to-use edit control that supports built-in HTML format, and syntax highlighting as well. You can define your own keywords and expressions using built-in HTML expressions. The control is fully written in C++ using ATL. You should know that the control is written from scratch and it does NOT use or subclass the RichEdit control or Windows Edit control. The Edit control supports the following methods and properties:

 NameDescription 
  AddExpressionAdds a single or multiple lines expression to a sensitive control. 
  AddKeywordAdds a keyword to a sensitive control. 
  AddWildAdds a wild characters expression to a sensitive control. 
  AllowContextMenuSpecifies whether the control's default context menu is available. 
  AllowFindSpecifies whether control displays a find dialog when user presses CTRL+F key.  
  AllowIncrementalSearchSpecifies whether the control allows incremental search. 
  AllowMarkSpecifies a value that indicates whether the positions in text of expressions are marked on the vertical scroll bar. 
  AllowReplaceSpecifies whether control displays a replace dialog when user presses CTRL+H key.  
  AllowSplitterSpecifies whether the control's splitter is visible or hidden. 
  AllowUndoRedoSpecifies whether the control allows undo/redo actions. 
  AppearanceRetrieves or sets the control's appearance. 
  ApplyColorsSpecifies whether the control applies the HTML colors. 
  AutoIndentSpecifies whether the control indents the line when ENTER key is pressed. 
  BackColorRetrieves or sets a value that indicates the control's background color.  
  BackColorAlternateReturns or sets the background color used to display alternate lines in the control. 
  BackColorCaretLineReturns or sets the background color used to display the cursor line. 
  BackColorLineSpecifies the line's background color. 
  BackColorLockedLineRetrieves or sets a value that indicates the line's background color when it is locked.  
  BackgroundReturns or sets a value that indicates the background color for parts in the control. 
  BookmarkAdds or removes a bookmark. 
  BookMarkBackColorSpecifies the bookmark bar background's color. 
  BookMarkBackColor2Specifies the bookmark bar background's color. 
  BookmarkBorderColorSpecifies the color for bookmark's border. 
  BookmarkImageSpecifies the index of image being displayed when the line has a bookmark. 
  BookmarkImageLineRetrieves or sets a value that indicates the index of image being displayed on the bookmark header. 
  BookmarksListSpecifies the list of bookmarks.. 
  BookmarkWidthSpecifies the bookmarks border's width. 
  CanRedoDetermines if the redo queue contains any actions. 
  CanUndoDetermines whether the last edit operation can be undone. 
  CaptionSpecifies the caption for a field on the Find or Replace dialog. 
  CaretLineSpecifies the line of caret. 
  CaretPosRetrieves or sets a value that indicates the position of the caret in the line. 
  CaretPosXRetrieves the x-coordinate of the caret in pixels, relative to the control's client area. 
  CaretPosYRetrieves the y-coordinate of the caret, in pixels relative to the control's client area. 
  ClearBackColorLineClears the line's background color. 
  ClearBookmarksClears all bookmarks. 
  ClearExpressionsClears the expressions collection into a sensitive control. 
  ClearForeColorLineClears the line's foreground color. 
  ClearKeywordsClears the keywords collection into a sensitive control. 
  ClearWildsClears the wild characters expressions collection into a sensitive control. 
  ClientToCursorConverts client coordinates to cursor coordinates. 
  CloseBracketsSpecifies the list of closed brackets. 
  CodeCompletionSpecifies whether the code completion feature is enabled or disabled. 
  ContextGets the context's collection. 
  ContextKeySpecifies the key combination that opens the control's context window. 
  ContextMenuItemsSpecifies a list of items that are added to the control's context menu. 
  CountCounts the lines in the control. 
  CursorGets or sets the cursor that is displayed when the mouse pointer hovers the control. 
  DeleteExpressionDeletes an expression from expressions collection. 
  DeleteKeywordDeletes a keyword from keywords collection. 
  DeleteLineDeletes the line. 
  DeleteWildDeletes an entry from the wild characters expressions collection. 
  DisplaySelectionSpecifies whether the control displays the selection. 
  DrawGridLinesReturns or sets a value that determines whether lines are drawn between rows, or unpopulated areas. 
  EditTypeSpecifies the control's type. 
  EnabledEnables or disables the control. 
  EnsureVisibleLineEnsures that specified line is visible. 
  ExecuteTemplateExecutes a template and returns the result. 
  FileNameSpecifies the name of the file being loaded or saved. 
  FindFinds a string and selects the string if it is found. 
  FocusPaneSpecifies the index of pane that has the focus. 
  FontRetrieves or sets the control's font. 
  ForeColorRetrieves or sets a value that indicates the control's foreground color. 
  ForeColorLineSpecifies the line's foreground color. 
  ForeColorLockedLineRetrieves or sets a value that indicates the line's foreground color when it is locked.  
  FormatNumbersSpecifies the HTML format that's applied to numbers. 
  GetSelectionRetrieves the coordinates of the selection. 
  HideSelectionSpecifies whether the selection in the control is hidden when the control loses the focus. 
  hWndGets the window's handle. 
  hWndPaneGets the window handle of the control's pane. 
  IgnorePrefixInExpressionSpecifies a value that indicates the prefix that's ignored in the expression. 
  ImagesSets the control's images list at runtime. The Handle should be a handle to an Image List control. 
  IndentOnTabSpecifies whether the multiple lines selection is indented when user presses the TAB key. 
  IndentSelIndents the selected text. 
  InsertTextInserts text to control. 
  LineNumberBackColorSpecifies the background color of the line number bar. 
  LineNumberBorderColorSpecifies the color for line number's border. 
  LineNumberFontRetrieves or sets the font of the line numbers bar. 
  LineNumberForeColorSpecifies the foreground color of the line number bar. 
  LineNumberWidthSpecifies the width of the border where the that contains the line numbers. 
  LoadLoads a file. 
  LockedDetermines whether a control can be edited. 
  LockedLineSpecifies whether a line is locked or unlocked. 
  MarkColorSpecifies a color being used to mark the position of the expression, on the control's vertical scroll bar. 
  MarkContinueBlocksMarks continuously the blocks. 
  MultiLineSpecifies whether the control accepts multiple lines. 
  NextBookmarkMoves the cursor to the next bookmark. 
  OLEDragCauses a component to initiate an OLE drag/drop operation. 
  OLEDropModeReturns or sets how a target component handles drop operations 
  OpenBracketsSpecifies the list of opened brackets. 
  OvertypeSpecifies whether the control is running in overtype mode. 
  PictureRetrieves or sets a graphic to be displayed in the control. 
  PictureDisplayRetrieves or sets a value that indicates the way how the graphic is displayed on the control's background 
  PrevBookmarkMoves the cursor to the prior bookmark. 
  RClickSpecifies whether the control's cursor is placed at the mouse position when user right clicks the control. 
  RedoRedoes the next action in the control's redo queue. 
  RefreshRefreshes the control. 
  ReplaceIconAdds a new icon, replaces an icon or clears the control's image list. 
  SaveSaves the control's text to a file. 
  ScrollBarsSpecifies the type of scroll bars that control has. 
  ScrollButtonHeightSpecifies the height of the button in the vertical scrollbar. 
  ScrollButtonWidthSpecifies the width of the button in the horizontal scrollbar. 
  ScrollFontRetrieves or sets the scrollbar's font. 
  ScrollHeightSpecifies the height of the horizontal scrollbar. 
  ScrollOrderPartsSpecifies the order of the buttons in the scroll bar. 
  ScrollPartCaptionSpecifies the caption being displayed on the specified scroll part. 
  ScrollPartCaptionAlignmentSpecifies the alignment of the caption in the part of the scroll bar. 
  ScrollPartEnableIndicates whether the specified scroll part is enabled or disabled. 
  ScrollPartVisibleIndicates whether the specified scroll part is visible or hidden. 
  ScrollThumbSizeSpecifies the size of the thumb in the scrollbar. 
  ScrollToolTipSpecifies the tooltip being shown when the user moves the scroll box. 
  ScrollWidthSpecifies the width of the vertical scrollbar. 
  SelBackColorSpecifies the selection's background color. 
  SelectLineSelects a line by code. 
  SelForeColorSpecifies the selection's foreground color. 
  SelLengthReturns or sets the number of characters selected. 
  SelStartReturns or sets the starting point of text selected; indicates the position of the insertion point if no text is selected. 
  SelTextReturns or sets the string containing the currently selected text. 
  SetSelectionSelects the text giving the start and end coordinates. 
  ShowCaretSpecifies whether the control's caret is visible or hidden. 
  ShowImageListSpecifies whether the control's images panel dialog is visible or hidden. 
  SplitPaneHeightSpecifies a value that indicates the height in pixels of the top pane(s) when splitting. 
  SplitPaneWidthSpecifies a value that indicates the width in pixels of the left pane(s) when splitting. 
  TabLengthSpecifies the size of each tab stop, in units equal to the average character width. 
  TemplateSpecifies the control's template. 
  TextSpecifies the control's text. 
  TextLineSpecifies the line based on its index. 
  ToolTipDelaySpecifies the time in ms that passes before the ToolTip appears. 
  ToolTipFontRetrieves or sets the tooltip's font. 
  ToolTipOnTypingSpecifies a value that indicates whether the tooltip of the keyword is shown while typing. 
  ToolTipPopDelaySpecifies the period in ms of time the ToolTip remains visible if the mouse pointer is stationary within a control. 
  ToolTipWidthSpecifies a value that indicates the width of the tooltip window, in pixels. 
  UndoCall this function to undo the last edit-control operation. 
  UseTabKeySpecifies whether the control uses the TAB key. 
  VersionRetrieves the control's version. 
  VisualAppearanceRetrieves the control's appearance.