SuperEdit DLL



Fast syntax highlight edit control.

Functions


SetHostDll(hWnd As HWND(LONG))
set dll host (sometime no need for this)
Editor_Create(Parent As HWND(LONG),X,Y,Width,Height As Integer) As HWND
create instance of editor 
Editor_Free(hEdit As HWND(LONG))
destroy instance specified by the hEdit parameter
FreeAll NO PARAMETER(S)
free all instances of editor

Messages


Editor Comments Style
______________________

 SE_VBSTYLE                   0
 SE_PASCALSTYLE               1
 SE_CSTYLE                    2
 SE_BASICSTYLE                3
 SE_ANSISTYLE                 4
 SE_ASMSTYLE                  5

Used with SEM_SETCOMENTSTYLE , ex. SendMessage(hEdit,SEM_SETCOMMENTSTYLE,SE_VBSTYLE,0) 

Editor Options
______________

 SEO_ALTSETSCOLUMNMODE        0  
 SEO_AUTOINDENT               1  
 SEO_AUTOSIZEMAXSCROLLWIDTH   2  
 SEO_DISABLESCROLLARROWS      3  
 SEO_DRAGDROPEDITING          4  
 SEO_DROPFILES                5  
 SEO_ENHANCEHOMEKEY           6  
 SEO_GROUPUNDO                7  
 SEO_HALFPAGESCROLL           8  
 SEO_HIDESHOWSCROLLBARS       9  
 SEO_KEEPCARETX               10 
 SEO_NOCARET                  11 
 SEO_NOSELECTION              12 
 SEO_RIGHTMOUSEMOVESCURSOR    13 
 SEO_SCROLLBYONELESS          14 
 SEO_SCROLLHINTFOLLOWS        15 
 SEO_SCROLLPASTEOF            16 
 SEO_SCROLLPASTEOL            17 
 SEO_SHOWSCROLLHINT           18 
 SEO_SHOWSPECIALCHARS         19 
 SEO_SMARTTABDELETE           20 
 SEO_SMARTTABS                21 
 SEO_SPECIALLINEDEFAULTFG     22 
 SEO_TABINDENT                23 
 SEO_TABSTOSPACES             24 
 SEO_TRIMTRAILINGSPACES       25 

Used with SEM_SETOPTIONS, ex. SendMessage(hEdit,SEM_SETOPTIONS,SE_AUTOINDENT,True/False)

Editor Messages
_______________

 SEM_ADDLINETEXT              40000
lParam = address of buffer text
 SEM_DELLINE                  40001
wParam = line index
 SEM_LINECOUNT                40134
return linecount
 SEM_INSERTLINE               40004
lParam = address of buffer text
wParam = index
 SEM_INDEXOF                  40005
lParam = address of buffer text
return index of text if any else -1
 SEM_EXCHANGE                 40006
wParam = line index to be change
lparam = lineindex who be change
 SEM_CLEAR                    40007
wParam = 0
lParam = 0  
 SEM_LOADFROMFILE             40008
lParam = address of buffer with filename
 SEM_SAVETOFILE               40009
lParam = address of buffer with filename
 SEM_PRINT                    40010
lParam = address of buffer with T_PRINTINFO Struct
 SEM_EXPORTHTML               40011
lParam = (optional) address of buffer with filename
 SEM_EXPORTRTF                40012
lParam = (optional) address of buffer with filename
 SEM_ADDBOOKMARKBMP           40013
lParam = address of buffer with filename bitmap 
 SEM_ADDBOOKMARKRESOURCE      40133
lParam = address of buffer with resourcename bitmap 
 SEM_SETBOOKMARK              40014
lParam = LoWord - Index bookmark,HiWord - Index of line, ex. SendMessage(hEdit,SEM_SETBOOKMARK,0,MakeLong(1,1))
 SEM_DELBOOKMARK              40015
wParam = bookmark index 

 SEM_SETBOUNDS                40016
lParam = address of RECT structure with editor coordinates
 SEM_GETBOUNDS                40017
lParam = address of RECT structure who get editor coordinates
 SEM_SETTEXT                  40018
lParam = address of buffer with text
 SEM_GETTEXT                  40019
lParam = address of buffer who get text
 SEM_SETLINETEXT              40020
wParam = index of line
lParam = address of buffer with text
 SEM_GETLINETEXT              40021
wParam = index of line
lParam = address of buffer who get text
 SEM_SETCARETXY               40022
lParam = LoWord - caretx, HiWord - carety
 SEM_GETCARETXY               40023
return LoWord - caretx,HiWord - carety
 SEM_SETBKCOLOR               40024
lParam = color for background
 SEM_GETBKCOLOR               40025
return bkcolor
 SEM_SETACTIVELINECOLOR       40026
lParam = color for active line 
 SEM_GETACTIVELINECOLOR       40027
return active line color
 SEM_SETSPECIALLINEINFO       40028
lParam = address of T_SPECIALLINEINFO struct
 SEM_GETSPECIALLINEINFO       40144
lParam = address of T_SPECIALLINEINFO struct who get the info 
 SEM_SETTOPLINE               40029
wParam = top line index
 SEM_GETTOPLINE               40030
return top line index
 SEM_SETGUTTERWIDTH           40031
wParam = gutter width
 SEM_GETGUTTERWIDTH           40032
return gutter width
 SEM_SETGUTTERCOLOR           40033
wParam = gutter color
 SEM_GETGUTTERCOLOR           40034
return gutter color
 SEM_SETFONTNAME              40035
lParam = address of buffer with fontname string
 SEM_GETFONTNAME              40036
lParam = address of buffer string who get fontname
 SEM_SETFONTSIZE              40037
wParam = editor font size
 SEM_GETFONTSIZE              40038
return editor font size
 SEM_SETSELECTIONMODE         40039
wParam = selection mode
 SEM_GETSELECTIONMODE         40040
return selection mode
 SEM_SETSELECTIONCOLOR        40041
wParam = selection color
 SEM_GETSELECTIONCOLOR        40042
return selection color
 SEM_SETWANTTABS              40043
wParam = boolean True/False for wanttabs
 SEM_GETWANTTABS              40044
return boolean of wanttabs 
 SEM_SETWANTRETURNS           40045
wParam = boolean True/False for wantreturns
 SEM_GETWANTRETURNS           40046
return boolean of wantreturns
 SEM_SETWORDWRAP              40047
wParam = boolean True/False for wordwrap
 SEM_GETWORDWRAP              40048
return boolean of wordwrap
 SEM_SETWORDWRAPBMP           40049
lParam = address of buffer string with fbitmap filename
 SEM_GETWORDWRAPBMP           40050
return handle of bitmap wordwrap glyph
 SEM_SETREADONLY              40051
wParam = boolean True/False for readonly
 SEM_GETREADONLY              40052
return boolean of readonly
 SEM_SETCARETSTYLE            40053
wParam = caretstyle
 SEM_GETCARETSTYLE            40054
return caretstyle
 SEM_SETRIGHTEDGE             40055
wParam = rightedge in pixel
 SEM_GETRIGHTEDGE             40056
return right edge
 SEM_SETRIGHTEDGECOLOR        40057
wParam = rightedge color
 SEM_GETRIGHTEDGECOLOR        40058
return rightedge color 
 SEM_SETOPTIONS               40059
wParam = option(see SEO_ constants)
lParam = boolean True/False
 SEM_GETOPTIONS               40060
return options
 SEM_SETKEYWORDS              40061
lParam = address of buffer text with keywords(strings must be separated with CRLF, ex ."if" + CRLF + "then" +CRLF ...)
 SEM_GETKEYWORDS              40062
lParam = address of buffer string who get keywords
 SEM_SETKEYSATTRIBUTES        40063
lParam = address of T_ATTRIBUTES struct buffer
 SEM_GETKEYSATTRIBUTES        40064
lParam = address of T_ATTRIBUTTES struct buffer who get attributes 
 SEM_SETSTRINGATTRIBUTES      40065
lParam = address of T_ATTRIBUTES struct buffer
 SEM_GETSTRINGATTRIBUTES      40066
lParam = address of T_ATTRIBUTTES struct buffer who get attributes
 SEM_SETSYMBOLATTRIBUTES      40067
lParam = address of T_ATTRIBUTES struct buffer
 SEM_GETSYMBOLATTRIBUTTES     40068
lParam = address of T_ATTRIBUTTES struct buffer who get attributes
 SEM_SETCOMMENTATTRIBUTES     40069
lParam = address of T_ATTRIBUTES struct buffer
 SEM_GETCOMMENTATTRIBUTES     40070
lParam = address of T_ATTRIBUTTES struct buffer who get attributes
 SEM_SETDOTATTRIBUTES         40071
lParam = address of T_ATTRIBUTES struct buffer
 SEM_GETDOTATTRIBUTES         40072
lParam = address of T_ATTRIBUTTES struct buffer who get attributes
 SEM_SETNUMBERATTRIBUTES      40073
lParam = address of T_ATTRIBUTES struct buffer
 SEM_GETNUMBERATTRIBUTES      40074
lParam = address of T_ATTRIBUTTES struct buffer who get attributes
 SEM_SETIDENTIFIERATTRIBUTES  40075
lParam = address of T_ATTRIBUTES struct buffer
 SEM_GETIDENTIFIERATTRIBUTES  40076
lParam = address of T_ATTRIBUTTES struct buffer who get attributes
 SEM_SETIDENTIFIERCHAR        40077
lParam = address of buffer string with identifiers
 SEM_GETIDENTIFIERCHAR        40078
lParam = address of buffer string who get identifiers
 SEM_SETDOLARVARIBLES         40079
wParam = boolean True/False
 SEM_GETDOLARVARIBLES         40080
return dollarvariables boolean True/False
 SEM_SETDOTACTIVE             40081
wParam = boolean Tru/False
 SEM_GETDOTACTIVE             40082
return dotactive boolean True/False
 SEM_SETDOUBLEQUOTES          40083
wParam = boolean True/False (double/single quoted string reprezentation) 
 SEM_GETDOUBLEQUOTES          40084
return doublequotes boolean True/False
 SEM_SETERRORLINE             40085
wParam = index of error line
 SEM_GETERRORLINE             40086
return ierror line index
 SEM_SETBREAKLINE             40087
wParam = index of break line
 SEM_GETBREAKLINE             40088
return breakline index
 SEM_GETERRORLINECOLOR        40089
return errorline color
 SEM_GETBREAKLINECOLOR        40090
return breakline color
 SEM_LOADATTRIBUTESFROMINI    40097
lParam = addres of buffer with highlighter filename for load and set
 SEM_SAVEATTRIBUTESTOINI      40107
lParam = addres of buffer with highlighter filename for save
 SEM_SETCOMMENTSTYLE          40098
wParam = comment style constant (see SE_ constants)
 SEM_GETCOMMENTSTYLE          40099
return comment style
 SEM_INVALIDATE               40100
invalidate editor
return 0
 SEM_INVALIDATEGUTTER         40101
invalidate gutter
return 0
 SEM_REPAINT                  40102
repaint editor
return 0
 SEM_UPDATE                   40103
update editor
return 0
 SEM_ADDKEYWORD               40108
lParam = address of sbuffer string with new keyword 
 SEM_DELETEKEYWORD            40109
lParam = address of buffer string with keywprd for deleting
 SEM_SETMAXUNDO               40110
wParam = maxundo (default 1024)
 SEM_GETMAXUNDO               40111
return maxundo value
 SEM_SETHIDESELECTION         40112
wParam = hideselection value boolean True/False
 SEM_GETHIDESELECTION         40113
return hideselection value
 SEM_SETTABSTOP               40114
wParam = boolean value of tabstop
 SEM_GETTABSTOP               40115
return boolean value of tabstop
 SEM_SETTABWIDTH              40116
wParam = value of tabwidth
 SEM_GETTABWIDTH              40117
return value of tabwidth
 SEM_SETSCROLLBARS            40118
wParam = scrollbars visiblity
 SEM_GETSCROLLBARS            40119
return scrollbars visibility (none = 0,vertscrollbar = 1,horzscrollbar = 2,both = 3)
 SEM_SETSCROLLHINTCOLOR       40120
wParam = scrollhint color
 SEM_GETSCROLLHINTCOLOR       40121
return srollhint color
 SEM_SETSCROLLHINTFORMAT      40122
wParam = scrollhint format
 SEM_GETSCROLLHINTFORMAT      40123
return scrollhint format
 SEM_SETHINT                  40124
lParam = address of buffer hint string
 SEM_GETHINT                  40125
lParam = address of buffer string who get hint
 SEM_SETSHOWHINT              40126
wParam = boolean True/False
 SEM_GETSHOWHINT              40127
return boolean True/False of showhint
 SEM_FINDSTRING               40130
lParam = address of T_SEARCHREPLACE buffer
 SEM_REPLACESTRING            40131
lParam = address of T_SEARCHREPLACE buffer 
 SEM_GETPATHNAME              40132
lParam = address of buffer who get filename of loaded text 
 SEM_REDO                     40135
redo command
return 0
 SEM_UNDO                     40136
undo command
return 0
 SEM_PASTE                    40137
paste from clipboard
return 0
 SEM_CUT                      40138
cut selected text in clipboard
return 0
 SEM_COPY                     40139
copy selected text in clipboard
return 0
 SEM_SELECTALL                40140
select entire textin editor
return 0
 SEM_CANREDO                  40141
return canredo boolean True/False
 SEM_CANUNDO                  40142
return canundo boolean True/False
 SEM_CANPASTE                 40143
return canpaste boolean True/False

Editor Notyfications
____________________

 SEN_CLICK                    40091
wParam = edit handle
lParam = LoWord - caretx,HiWord - caretY
 SEN_DBLCLICK                 40092
wParam = edit handle
lParam = LoWord - caretx,HiWord - caretY
 SEN_GUTTERCLICK              40093
wParam = edit handle
lParam = line index
 SEN_CHANGE                   40094
wParam = edit handle
lParam = LoWord - caretx,HiWord - caretY
 SEN_SCROLL                   40095
wParam = edit handle
 SEN_MOUSECURSOR              40096
wParam = edit handle
lParam = LoWord - caretx,HiWord - caretY
 SEN_GUTTERPAINT              40104
wParam = edit handle
 SEN_PAINT                    40105
wParam = edit handle
 SEN_STATUSCHANGE             40106
wParam = edit handle
lParam = editor status 
value can be one of this :
scAll        = 0
scCaretX     = 1
scCaretY     = 2
scLeftChar   = 3
scTopLine    = 4
scInsertMode = 5
scModified   = 6
scSelection  = 7
scReadOnly   = 8
 SEN_ENTER                    40128
wParam = edit handle
 SEN_EXIT                     40129
wParam = edit handle

Structures


type T_PRINTINFO
       Title    As Long
       Header   As Long
       Footer   As Long
       FontFace As Long
       FontSize As Integer
end type

type T_ATTRIBUTES
       Background As Integer
       Foreground As Integer
       Bold       As Integer
       Italic     As Integer
       Underline  As Integer
       Strikeout  As Integer
end type

type T_SEARCHREPLACE
       FindString    As Long
       ReplaceString As Long
       MatchCase     As Integer
       WholeWord     As Integer
       Backwards     As Integer
       EntireScope   As Integer
       SelectedOnly  As Integer
       Replace       As Integer
       ReplaceAll    As Integer
       Prompt        As Integer
end type

type T_SPECIALLINEINFO
       ErrorLine  As Integer
       BreakLine  As Integer
       ErrorColor As Integer
       BreakColor As Integer
end type