home *** CD-ROM | disk | FTP | other *** search
- /////////////////////////////////////////////////////////////////////////////////
- //
- // CodeMax Code Editor Control
- //
- // Copyright ⌐ 1997-2000 WinMain Software
- //
- // This header file declares all exported functionality of the CodeMax custom
- // control. For a complete description of all declarations below, please refer
- // to the CodeMax documentation.
- //
- /////////////////////////////////////////////////////////////////////////////////
-
- #ifndef __CODEMAX_H__
- #define __CODEMAX_H__
-
- #define CODEMAXWNDCLASS _T("CodeMax")
-
- #ifdef __cplusplus
- #define EXTERN_C extern "C"
- #else
- #define EXTERN_C
- #endif
-
- /////////////////////////////////////////////////////////////
- //
- // Constants
- //
- //
- // maximum size (TCHARs) of text to find or replace
- #define CM_MAX_FINDREPL_TEXT 100
- // maximum MRU size in find and find/replace dialogs
- #define CM_FIND_REPLACE_MRU_MAX 10
- // required buffer size for pszMRUList argument CMSetFindReplaceMRUList() and CMGetFindReplaceMRUList()
- #define CM_FIND_REPLACE_MRU_BUFF_SIZE ( ( CM_MAX_FINDREPL_TEXT + 1 ) * CM_FIND_REPLACE_MRU_MAX )
- // maximum number of keystroke macros supported by CodeMax
- #define CM_MAX_MACROS 10
- // maximum size of command string returned in pszBuff param of CMGetCommandString() if bDescription is FALSE
- #define CM_MAX_CMD_STRING 50
- // maximum size of command string returned in pszBuff param of CMGetCommandString() if bDescription is TRUE
- #define CM_MAX_CMD_DESCRIPTION 100
- // maximum size of a language name set with CMRegisterLanguage
- #define CM_MAX_LANGUAGE_NAME 30
- // maximum tab size (characters)
- #define CM_MAX_TABSIZE 100
- // minimum tab size (characters)
- #define CM_MIN_TABSIZE 2
- // left margin width (pixels)
- #define CM_CXLEFTMARGIN 24
- /////////////////////////////////////////////////////////////
- //
- // CMM_SETLINESTYLE style bits
- //
- //
- #define CML_OWNERDRAW 0x1 // Parent window should receive CMN_DRAWLINE notifications
- #define CML_NOTIFY_DEL 0x2 // Parent window should receive CMN_LINEDELETED notifications
-
- /////////////////////////////////////////////////////////////
- //
- // Messages
- //
- //
- #define CMM_SETLANGUAGE ( WM_USER + 1600 )
- #define CMM_GETLANGUAGE ( WM_USER + 1601 )
- #define CMM_ENABLECOLORSYNTAX ( WM_USER + 1610 )
- #define CMM_ISCOLORSYNTAXENABLED ( WM_USER + 1620 )
- #define CMM_SETCOLORS ( WM_USER + 1630 )
- #define CMM_GETCOLORS ( WM_USER + 1640 )
- #define CMM_ENABLEWHITESPACEDISPLAY ( WM_USER + 1800 )
- #define CMM_ISWHITESPACEDISPLAYENABLED ( WM_USER + 1810 )
- #define CMM_ENABLETABEXPAND ( WM_USER + 1811 )
- #define CMM_ISTABEXPANDENABLED ( WM_USER + 1812 )
- #define CMM_ENABLESMOOTHSCROLLING ( WM_USER + 1820 )
- #define CMM_SETTABSIZE ( WM_USER + 1821 )
- #define CMM_GETTABSIZE ( WM_USER + 1822 )
- #define CMM_ISSMOOTHSCROLLINGENABLED ( WM_USER + 1830 )
- #define CMM_SETREADONLY ( WM_USER + 1840 )
- #define CMM_ISREADONLY ( WM_USER + 1850 )
- #define CMM_ENABLELINETOOLTIPS ( WM_USER + 1860 )
- #define CMM_ISLINETOOLTIPSENABLED ( WM_USER + 1870 )
- #define CMM_ENABLELEFTMARGIN ( WM_USER + 1880 )
- #define CMM_ISLEFTMARGINENABLED ( WM_USER + 1890 )
- #define CMM_ENABLECOLUMNSEL ( WM_USER + 1891 )
- #define CMM_ISCOLUMNSELENABLED ( WM_USER + 1892 )
- #define CMM_ENABLEDRAGDROP ( WM_USER + 1893 )
- #define CMM_ISDRAGDROPENABLED ( WM_USER + 1894 )
- #define CMM_ENABLEOVERTYPE ( WM_USER + 1900 )
- #define CMM_ISOVERTYPEENABLED ( WM_USER + 1910 )
- #define CMM_ENABLECASESENSITIVE ( WM_USER + 1920 )
- #define CMM_ISCASESENSITIVEENABLED ( WM_USER + 1930 )
- #define CMM_ENABLEPRESERVECASE ( WM_USER + 1931 )
- #define CMM_ISPRESERVECASEENABLED ( WM_USER + 1932 )
- #define CMM_ENABLEWHOLEWORD ( WM_USER + 1940 )
- #define CMM_ISWHOLEWORDENABLED ( WM_USER + 1950 )
- #define CMM_SETTOPINDEX ( WM_USER + 1960 )
- #define CMM_GETTOPINDEX ( WM_USER + 1970 )
- #define CMM_GETVISIBLELINECOUNT ( WM_USER + 1980 )
- #define CMM_HITTEST ( WM_USER + 1990 )
- #define CMM_OPENFILE ( WM_USER + 2300 )
- #define CMM_SAVEFILE ( WM_USER + 2310 )
- #define CMM_INSERTFILE ( WM_USER + 2320 )
- #define CMM_INSERTTEXT ( WM_USER + 2330 )
- #define CMM_SETTEXT ( WM_USER + 2335 )
- #define CMM_REPLACETEXT ( WM_USER + 2340 )
- #define CMM_GETTEXTLENGTH ( WM_USER + 2350 )
- #define CMM_GETTEXT ( WM_USER + 2360 )
- #define CMM_GETLINECOUNT ( WM_USER + 2365 )
- #define CMM_GETLINE ( WM_USER + 2370 )
- #define CMM_GETLINELENGTH ( WM_USER + 2380 )
- #define CMM_GETWORD ( WM_USER + 2381 )
- #define CMM_GETWORDLENGTH ( WM_USER + 2382 )
- #define CMM_ADDTEXT ( WM_USER + 2390 )
- #define CMM_DELETELINE ( WM_USER + 2400 )
- #define CMM_INSERTLINE ( WM_USER + 2410 )
- #define CMM_GETSEL ( WM_USER + 2420 )
- #define CMM_GETSELFROMPOINT ( WM_USER + 2425 )
- #define CMM_SETSEL ( WM_USER + 2430 )
- #define CMM_SELECTLINE ( WM_USER + 2435 )
- #define CMM_DELETESEL ( WM_USER + 2440 )
- #define CMM_REPLACESEL ( WM_USER + 2450 )
- #define CMM_ISMODIFIED ( WM_USER + 2460 )
- #define CMM_SETMODIFIED ( WM_USER + 2461 )
- #define CMM_ENABLECRLF ( WM_USER + 2470 )
- #define CMM_ISCRLFENABLED ( WM_USER + 2480 )
- #define CMM_SETFONTOWNERSHIP ( WM_USER + 2485 )
- #define CMM_GETFONTOWNERSHIP ( WM_USER + 2486 )
- #define CMM_EXECUTECMD ( WM_USER + 2700 )
- #define CMM_SETSPLITTERPOS ( WM_USER + 2900 )
- #define CMM_GETSPLITTERPOS ( WM_USER + 2901 )
- #define CMM_SETAUTOINDENTMODE ( WM_USER + 3100 )
- #define CMM_GETAUTOINDENTMODE ( WM_USER + 3110 )
- #define CMM_CANUNDO ( WM_USER + 3300 )
- #define CMM_CANREDO ( WM_USER + 3310 )
- #define CMM_CANCUT ( WM_USER + 3320 )
- #define CMM_CANCOPY ( WM_USER + 3330 )
- #define CMM_CANPASTE ( WM_USER + 3340 )
- #define CMM_REDO ( WM_USER + 3350 )
- #define CMM_CLEARUNDOBUFFER ( WM_USER + 3351 )
- #define CMM_UNDO ( WM_USER + 3360 )
- #define CMM_CUT ( WM_USER + 3370 )
- #define CMM_COPY ( WM_USER + 3380 )
- #define CMM_PASTE ( WM_USER + 3390 )
- #define CMM_SETUNDOLIMIT ( WM_USER + 3400 )
- #define CMM_GETUNDOLIMIT ( WM_USER + 3410 )
- #define CMM_GETVIEWCOUNT ( WM_USER + 3600 )
- #define CMM_GETCURRENTVIEW ( WM_USER + 3610 )
- #define CMM_SHOWSCROLLBAR ( WM_USER + 3700 )
- #define CMM_HASSCROLLBAR ( WM_USER + 3710 )
- #define CMM_ENABLESPLITTER ( WM_USER + 3720 )
- #define CMM_ISSPLITTERENABLED ( WM_USER + 3730 )
- #define CMM_ISRECORDINGMACRO ( WM_USER + 3731 )
- #define CMM_ISPLAYINGMACRO ( WM_USER + 3732 )
- #define CMM_ENABLEGLOBALPROPS ( WM_USER + 3740 )
- #define CMM_ISGLOBALPROPSENABLED ( WM_USER + 3741 )
- #define CMM_SETDLGPARENT ( WM_USER + 3750 )
-
- // 2.0
- #define CMM_ENABLESELBOUNDS ( WM_USER + 3760 )
- #define CMM_ISSELBOUNDSENABLED ( WM_USER + 3770 )
- #define CMM_SETFONTSTYLES ( WM_USER + 3780 )
- #define CMM_GETFONTSTYLES ( WM_USER + 3790 )
- #define CMM_ENABLEREGEXP ( WM_USER + 3800 )
- #define CMM_ISREGEXPENABLED ( WM_USER + 3810 )
- #define CMM_SETITEMDATA ( WM_USER + 3820 )
- #define CMM_GETITEMDATA ( WM_USER + 3830 )
- #define CMM_SETLINESTYLE ( WM_USER + 3840 )
- #define CMM_GETLINESTYLE ( WM_USER + 3850 )
- #define CMM_SETBOOKMARK ( WM_USER + 3860 )
- #define CMM_GETBOOKMARK ( WM_USER + 3870 )
- #define CMM_SETALLBOOKMARKS ( WM_USER + 3880 )
- #define CMM_GETALLBOOKMARKS ( WM_USER + 3890 )
- #define CMM_SETLINENUMBERING ( WM_USER + 3900 )
- #define CMM_GETLINENUMBERING ( WM_USER + 3910 )
- #define CMM_POSFROMCHAR ( WM_USER + 3920 )
- #define CMM_ENABLEHIDESEL ( WM_USER + 3930 )
- #define CMM_ISHIDESELENABLED ( WM_USER + 3940 )
- #define CMM_SETHIGHLIGHTEDLINE ( WM_USER + 3950 )
- #define CMM_GETHIGHLIGHTEDLINE ( WM_USER + 3960 )
- #define CMM_ENABLENORMALIZECASE ( WM_USER + 3970 )
- #define CMM_ISNORMALIZECASEENABLED ( WM_USER + 3980 )
- #define CMM_SETDIVIDER ( WM_USER + 3990 )
- #define CMM_GETDIVIDER ( WM_USER + 4000 )
- #define CMM_ENABLEOVERTYPECARET ( WM_USER + 4010 )
- #define CMM_ISOVERTYPECARETENABLED ( WM_USER + 4020 )
- #define CMM_SETFINDTEXT ( WM_USER + 4030 )
- #define CMM_GETFINDTEXT ( WM_USER + 4040 )
- #define CMM_SETREPLACETEXT ( WM_USER + 4050 )
- #define CMM_GETREPLACETEXT ( WM_USER + 4060 )
- #define CMM_SETIMAGELIST ( WM_USER + 4070 )
- #define CMM_GETIMAGELIST ( WM_USER + 4080 )
- #define CMM_SETMARGINIMAGES ( WM_USER + 4090 )
- #define CMM_GETMARGINIMAGES ( WM_USER + 4100 )
- #define CMM_ABOUTBOX ( WM_USER + 4110 )
- #define CMM_PRINT ( WM_USER + 4120 )
- #define CMM_SETCARETPOS ( WM_USER + 4130 )
- #define CMM_VIEWCOLTOBUFFERCOL ( WM_USER + 4140 )
- #define CMM_BUFFERCOLTOVIEWCOL ( WM_USER + 4150 )
-
- // 2.1
- #define CMM_SETBORDERSTYLE ( WM_USER + 4160 )
- #define CMM_GETBORDERSTYLE ( WM_USER + 4170 )
-
- /////////////////////////////////////////////////////////////
- //
- // Notifications
- //
- //
- #define CMN_CHANGE 100 // buffer contents changed
- #define CMN_HSCROLL 110 // horizontal scrollbar pos changed
- #define CMN_VSCROLL 120 // vertical scrollbar pos changed
- #define CMN_SELCHANGE 130 // active selection has changed
- #define CMN_VIEWCHANGE 140 // the user switched to a different splitter view
- #define CMN_MODIFIEDCHANGE 150 // the modified state of the buffer has changed
- #define CMN_SHOWPROPS 160 // the user is about to show the props window
- #define CMN_PROPSCHANGE 170 // the user changed properties via the props window
- #define CMN_CREATE 180 // the control has been created
- #define CMN_DESTROY 190 // the control is about to be destroyed
-
- // 2.0
- #define CMN_DRAWLINE 200 // owner-draw functionality
- #define CMN_DELETELINE 210 // line is about to be deleted
- #define CMN_CMDFAILURE 220 // a keystroke command failed to successfully complete
- #define CMN_REGISTEREDCMD 230 // a registered command has been invoked by the user
- #define CMN_KEYDOWN 240 // a key was pressed (WM_KEYDOWN)
- #define CMN_KEYUP 250 // a key was released (WM_KEYUP)
- #define CMN_KEYPRESS 260 // a key was pressed and released (WM_CHAR)
- #define CMN_MOUSEDOWN 270 // a mouse button was pressed (WM_xBUTTONDOWN)
- #define CMN_MOUSEUP 280 // a mouse button was released (WM_xBUTTONUP)
- #define CMN_MOUSEMOVE 290 // the mouse pointer was moved (WM_MOUSEMOVE)
- #define CMN_OVERTYPECHANGE 300 // the overtype mode has changed
-
- // 2.1
- #define CMN_FINDWRAPPED 310 // a find operation wrapped to start/end of buffer
-
- /////////////////////////////////////////////////////////////
- //
- // Edit commands
- //
- //
-
- #define CMD_FIRST 100
- #define CMD_WORDUPPERCASE ( CMD_FIRST + 0 )
- #define CMD_WORDTRANSPOSE ( CMD_FIRST + 1 )
- #define CMD_WORDRIGHTEXTEND ( CMD_FIRST + 2 )
- #define CMD_WORDRIGHT ( CMD_FIRST + 3 )
- #define CMD_WORDENDRIGHT ( CMD_FIRST + 4 )
- #define CMD_WORDENDRIGHTEXTEND ( CMD_FIRST + 5 )
- #define CMD_WORDLOWERCASE ( CMD_FIRST + 6 )
- #define CMD_WORDLEFTEXTEND ( CMD_FIRST + 7 )
- #define CMD_WORDLEFT ( CMD_FIRST + 8 )
- #define CMD_WORDENDLEFT ( CMD_FIRST + 9 )
- #define CMD_WORDENDLEFTEXTEND ( CMD_FIRST + 10 )
- #define CMD_WORDDELETETOSTART ( CMD_FIRST + 11 )
- #define CMD_WORDDELETETOEND ( CMD_FIRST + 12 )
- #define CMD_WORDCAPITALIZE ( CMD_FIRST + 13 )
- #define CMD_WINDOWSTART ( CMD_FIRST + 14 )
- #define CMD_WINDOWSCROLLUP ( CMD_FIRST + 15 )
- #define CMD_WINDOWSCROLLTOTOP ( CMD_FIRST + 16 )
- #define CMD_WINDOWSCROLLTOCENTER ( CMD_FIRST + 17 )
- #define CMD_WINDOWSCROLLTOBOTTOM ( CMD_FIRST + 18 )
- #define CMD_WINDOWSCROLLRIGHT ( CMD_FIRST + 19 )
- #define CMD_WINDOWSCROLLLEFT ( CMD_FIRST + 20 )
- #define CMD_WINDOWSCROLLDOWN ( CMD_FIRST + 21 )
- #define CMD_WINDOWRIGHTEDGE ( CMD_FIRST + 22 )
- #define CMD_WINDOWLEFTEDGE ( CMD_FIRST + 23 )
- #define CMD_WINDOWEND ( CMD_FIRST + 24 )
- #define CMD_UPPERCASESELECTION ( CMD_FIRST + 25 )
- #define CMD_UNTABIFYSELECTION ( CMD_FIRST + 26 )
- #define CMD_UNINDENTSELECTION ( CMD_FIRST + 27 )
- #define CMD_UNDOCHANGES ( CMD_FIRST + 28 )
- #define CMD_UNDO ( CMD_FIRST + 29 )
- #define CMD_TABIFYSELECTION ( CMD_FIRST + 30 )
- #define CMD_SENTENCERIGHT ( CMD_FIRST + 31 )
- #define CMD_SENTENCELEFT ( CMD_FIRST + 32 )
- #define CMD_SENTENCECUT ( CMD_FIRST + 33 )
- #define CMD_SELECTSWAPANCHOR ( CMD_FIRST + 34 )
- #define CMD_SELECTPARA ( CMD_FIRST + 35 )
- #define CMD_SELECTLINE ( CMD_FIRST + 36 )
- #define CMD_SELECTALL ( CMD_FIRST + 37 )
- #define CMD_REDOCHANGES ( CMD_FIRST + 38 )
- #define CMD_REDO ( CMD_FIRST + 39 )
- #define CMD_PASTE ( CMD_FIRST + 40 )
- #define CMD_PARAUP ( CMD_FIRST + 41 )
- #define CMD_PARADOWN ( CMD_FIRST + 42 )
- #define CMD_PAGEUPEXTEND ( CMD_FIRST + 43 )
- #define CMD_PAGEUP ( CMD_FIRST + 44 )
- #define CMD_PAGEDOWNEXTEND ( CMD_FIRST + 45 )
- #define CMD_PAGEDOWN ( CMD_FIRST + 46 )
- #define CMD_LOWERCASESELECTION ( CMD_FIRST + 47 )
- #define CMD_LINEUPEXTEND ( CMD_FIRST + 48 )
- #define CMD_LINEUP ( CMD_FIRST + 49 )
- #define CMD_LINETRANSPOSE ( CMD_FIRST + 50 )
- #define CMD_LINESTART ( CMD_FIRST + 51 )
- #define CMD_LINEOPENBELOW ( CMD_FIRST + 52 )
- #define CMD_LINEOPENABOVE ( CMD_FIRST + 53 )
- #define CMD_LINEENDEXTEND ( CMD_FIRST + 54 )
- #define CMD_LINEEND ( CMD_FIRST + 55 )
- #define CMD_LINEDOWNEXTEND ( CMD_FIRST + kx#define CMD_lRm)
- #define CMD_Lfine fine CMD_lRm)
- #define CMD_Lfine fine CMDeUMD_lRm)
- #defyINDOIRST + 55 )
- # CMDeUMD_lRm)Me CMD_Lfine finene finla EXTENyINDOIRST + 55 )
- # ID_lRm)
- #defyINDOIRST + 55 )
- # PlRm)
- #defyINe )
- #define CMD_S + 4 slerhefineos
- # ID_lRs