diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/LexPB.cxx | 22 | 
1 files changed, 4 insertions, 18 deletions
| diff --git a/src/LexPB.cxx b/src/LexPB.cxx index 3564207df..d35944ecf 100644 --- a/src/LexPB.cxx +++ b/src/LexPB.cxx @@ -1,12 +1,13 @@  // Scintilla source code edit control  /** @file LexPB.cxx   ** Lexer for PowerBasic by Roland Walter, roland@rowalt.de + ** Last update: 17.10.2003 (toggling of subs/functions now until next sub/functin - this gives better results)   **/  //  // Necessary changes in Scintilla project:  //  - In SciLexer.h and Scintilla.iface:  // -//    #define SCLEX_PB 49				//Provisional inofficial ID for PowerBasic lexer, +//    #define SCLEX_PB 51				//ID for PowerBasic lexer  //    (...)  //    #define SCE_B_DEFAULT 0			//in both VB and PB lexer  //    #define SCE_B_COMMENT 1			//in both VB and PB lexer @@ -19,7 +20,7 @@  //    #define SCE_B_DATE 8				//VB lexer only, unsupported by PB lexer  //  - Statement added to KeyWords.cxx:      'LINK_LEXER(lmPB);' -//  - Statement added to scintilla_vc6.mak: '$(DIR_O)\LexPB.obj: ..\src\LexPB.cxx $(LEX_HEADERS)' +//  - Statement added to scintilla_vc6.mak: '$(DIR_O)\LexPB.obj: ...\src\LexPB.cxx $(LEX_HEADERS)'  //  // Copyright for Scintilla: 1998-2001 by Neil Hodgson <neilh@scintilla.org>  // The License.txt file describes the conditions under which this software may be distributed. @@ -172,14 +173,10 @@ static void FoldPBDoc(unsigned int startPos, int length, int, WordList *[], Acce  	{  		char ch = chNext;  		chNext = styler.SafeGetCharAt(i + 1); -		// Functions Start: Function, Sub -		// Functions End: End Function, End Sub  		if( atEOL )			//Begin of a new line (The Sub/Function/Macro keywords may occur at begin of line only)  		{ -			if( MatchUpperCase(styler,i,"END FUNCTION") ) -				levelNext=SC_FOLDLEVELBASE; -			else if( MatchUpperCase(styler,i,"FUNCTION") ) +			if( MatchUpperCase(styler,i,"FUNCTION") )  //else if(  			{  				styler.SetLevel(lineCurrent, (SC_FOLDLEVELBASE << 16) | SC_FOLDLEVELHEADERFLAG);  				levelNext=SC_FOLDLEVELBASE+1; @@ -194,8 +191,6 @@ static void FoldPBDoc(unsigned int startPos, int length, int, WordList *[], Acce  				styler.SetLevel(lineCurrent, (SC_FOLDLEVELBASE << 16) | SC_FOLDLEVELHEADERFLAG);  				levelNext=SC_FOLDLEVELBASE+1;  			} -			else if( MatchUpperCase(styler,i,"END SUB") ) -				levelNext=SC_FOLDLEVELBASE;  			else if( MatchUpperCase(styler,i,"SUB") )  			{  				styler.SetLevel(lineCurrent, (SC_FOLDLEVELBASE << 16) | SC_FOLDLEVELHEADERFLAG); @@ -206,21 +201,12 @@ static void FoldPBDoc(unsigned int startPos, int length, int, WordList *[], Acce  				styler.SetLevel(lineCurrent, (SC_FOLDLEVELBASE << 16) | SC_FOLDLEVELHEADERFLAG);  				levelNext=SC_FOLDLEVELBASE+1;  			} -			//else if( MatchUpperCase(styler,i,"END MACRO") ) -			//	levelNext--;  			//else if( MatchUpperCase(styler,i,"MACRO") )  //ToDo: What's with single-line macros? -			//	levelNext++;  		}  		atEOL = (ch == '\r' && chNext != '\n') || (ch == '\n');  		if( atEOL )  		{ -			if (levelNext == SC_FOLDLEVELBASE) -			{ -				int levelUse = levelCurrent; -				int lev = levelUse | levelNext << 16; -				styler.SetLevel(lineCurrent, lev); -			}  			lineCurrent++;  			levelCurrent = levelNext;  		} | 
