diff options
| author | Neil <nyamatongwe@gmail.com> | 2018-05-14 13:57:03 +1000 | 
|---|---|---|
| committer | Neil <nyamatongwe@gmail.com> | 2018-05-14 13:57:03 +1000 | 
| commit | 3fc8c97d80a6797e60e6b203c9b4aa9d553df8a7 (patch) | |
| tree | 9875855a197986e4ba8bf8ab1e8a491d1d1b321f /src | |
| parent | 9948c490832acd4d211070adfef982d1c0e8b4c4 (diff) | |
| download | scintilla-mirror-3fc8c97d80a6797e60e6b203c9b4aa9d553df8a7.tar.gz | |
Modernize Platform.h (2) - noexcept, const, constexpr.
ColourDesired is an int instead of long for consistency over different platforms.
Changes made to Point, PRectangle, and ColourDesired.
RoundXYPosition removed.
Diffstat (limited to 'src')
| -rw-r--r-- | src/Editor.cxx | 56 | ||||
| -rw-r--r-- | src/ScintillaBase.cxx | 6 | ||||
| -rw-r--r-- | src/ViewStyle.h | 4 | ||||
| -rw-r--r-- | src/XPM.cxx | 29 | 
4 files changed, 59 insertions, 36 deletions
| diff --git a/src/Editor.cxx b/src/Editor.cxx index c89f3b6b8..80cdbc97a 100644 --- a/src/Editor.cxx +++ b/src/Editor.cxx @@ -5593,10 +5593,10 @@ void Editor::StyleSetMessage(unsigned int iMessage, uptr_t wParam, sptr_t lParam  	vs.EnsureStyle(wParam);  	switch (iMessage) {  	case SCI_STYLESETFORE: -		vs.styles[wParam].fore = ColourDesired(static_cast<long>(lParam)); +		vs.styles[wParam].fore = ColourDesired(static_cast<int>(lParam));  		break;  	case SCI_STYLESETBACK: -		vs.styles[wParam].back = ColourDesired(static_cast<long>(lParam)); +		vs.styles[wParam].back = ColourDesired(static_cast<int>(lParam));  		break;  	case SCI_STYLESETBOLD:  		vs.styles[wParam].weight = lParam != 0 ? SC_WEIGHT_BOLD : SC_WEIGHT_NORMAL; @@ -5648,9 +5648,9 @@ sptr_t Editor::StyleGetMessage(unsigned int iMessage, uptr_t wParam, sptr_t lPar  	vs.EnsureStyle(wParam);  	switch (iMessage) {  	case SCI_STYLEGETFORE: -		return vs.styles[wParam].fore.AsLong(); +		return vs.styles[wParam].fore.AsInteger();  	case SCI_STYLEGETBACK: -		return vs.styles[wParam].back.AsLong(); +		return vs.styles[wParam].back.AsInteger();  	case SCI_STYLEGETBOLD:  		return vs.styles[wParam].weight > SC_WEIGHT_NORMAL;  	case SCI_STYLEGETWEIGHT: @@ -6790,13 +6790,13 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {  	case SCI_MARKERSETFORE:  		if (wParam <= MARKER_MAX) -			vs.markers[wParam].fore = ColourDesired(static_cast<long>(lParam)); +			vs.markers[wParam].fore = ColourDesired(static_cast<int>(lParam));  		InvalidateStyleData();  		RedrawSelMargin();  		break;  	case SCI_MARKERSETBACKSELECTED:  		if (wParam <= MARKER_MAX) -			vs.markers[wParam].backSelected = ColourDesired(static_cast<long>(lParam)); +			vs.markers[wParam].backSelected = ColourDesired(static_cast<int>(lParam));  		InvalidateStyleData();  		RedrawSelMargin();  		break; @@ -6806,7 +6806,7 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {  		break;  	case SCI_MARKERSETBACK:  		if (wParam <= MARKER_MAX) -			vs.markers[wParam].back = ColourDesired(static_cast<long>(lParam)); +			vs.markers[wParam].back = ColourDesired(static_cast<int>(lParam));  		InvalidateStyleData();  		RedrawSelMargin();  		break; @@ -6945,14 +6945,14 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {  	case SCI_SETMARGINBACKN:  		if (ValidMargin(wParam)) { -			vs.ms[wParam].back = ColourDesired(static_cast<long>(lParam)); +			vs.ms[wParam].back = ColourDesired(static_cast<int>(lParam));  			InvalidateStyleRedraw();  		}  		break;  	case SCI_GETMARGINBACKN:  		if (ValidMargin(wParam)) -			return vs.ms[wParam].back.AsLong(); +			return vs.ms[wParam].back.AsInteger();  		else  			return 0; @@ -7047,9 +7047,9 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {  		InvalidateStyleRedraw();  		break;  	case SCI_GETCARETLINEBACK: -		return vs.caretLineBackground.AsLong(); +		return vs.caretLineBackground.AsInteger();  	case SCI_SETCARETLINEBACK: -		vs.caretLineBackground = ColourDesired(static_cast<long>(wParam)); +		vs.caretLineBackground = ColourDesired(static_cast<int>(wParam));  		InvalidateStyleRedraw();  		break;  	case SCI_GETCARETLINEBACKALPHA: @@ -7197,13 +7197,13 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {  	case SCI_SETSELFORE:  		vs.selColours.fore = ColourOptional(wParam, lParam); -		vs.selAdditionalForeground = ColourDesired(static_cast<long>(lParam)); +		vs.selAdditionalForeground = ColourDesired(static_cast<int>(lParam));  		InvalidateStyleRedraw();  		break;  	case SCI_SETSELBACK:  		vs.selColours.back = ColourOptional(wParam, lParam); -		vs.selAdditionalBackground = ColourDesired(static_cast<long>(lParam)); +		vs.selAdditionalBackground = ColourDesired(static_cast<int>(lParam));  		InvalidateStyleRedraw();  		break; @@ -7235,12 +7235,12 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {  		break;  	case SCI_SETCARETFORE: -		vs.caretcolour = ColourDesired(static_cast<long>(wParam)); +		vs.caretcolour = ColourDesired(static_cast<int>(wParam));  		InvalidateStyleRedraw();  		break;  	case SCI_GETCARETFORE: -		return vs.caretcolour.AsLong(); +		return vs.caretcolour.AsInteger();  	case SCI_SETCARETSTYLE:  		if (wParam <= CARETSTYLE_BLOCK) @@ -7289,14 +7289,14 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {  	case SCI_INDICSETFORE:  		if (wParam <= INDIC_MAX) { -			vs.indicators[wParam].sacNormal.fore = ColourDesired(static_cast<long>(lParam)); -			vs.indicators[wParam].sacHover.fore = ColourDesired(static_cast<long>(lParam)); +			vs.indicators[wParam].sacNormal.fore = ColourDesired(static_cast<int>(lParam)); +			vs.indicators[wParam].sacHover.fore = ColourDesired(static_cast<int>(lParam));  			InvalidateStyleRedraw();  		}  		break;  	case SCI_INDICGETFORE: -		return (wParam <= INDIC_MAX) ? vs.indicators[wParam].sacNormal.fore.AsLong() : 0; +		return (wParam <= INDIC_MAX) ? vs.indicators[wParam].sacNormal.fore.AsInteger() : 0;  	case SCI_INDICSETHOVERSTYLE:  		if (wParam <= INDIC_MAX) { @@ -7310,13 +7310,13 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {  	case SCI_INDICSETHOVERFORE:  		if (wParam <= INDIC_MAX) { -			vs.indicators[wParam].sacHover.fore = ColourDesired(static_cast<long>(lParam)); +			vs.indicators[wParam].sacHover.fore = ColourDesired(static_cast<int>(lParam));  			InvalidateStyleRedraw();  		}  		break;  	case SCI_INDICGETHOVERFORE: -		return (wParam <= INDIC_MAX) ? vs.indicators[wParam].sacHover.fore.AsLong() : 0; +		return (wParam <= INDIC_MAX) ? vs.indicators[wParam].sacHover.fore.AsInteger() : 0;  	case SCI_INDICSETFLAGS:  		if (wParam <= INDIC_MAX) { @@ -7547,10 +7547,10 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {  		break;  	case SCI_GETEDGECOLOUR: -		return vs.theEdge.colour.AsLong(); +		return vs.theEdge.colour.AsInteger();  	case SCI_SETEDGECOLOUR: -		vs.theEdge.colour = ColourDesired(static_cast<long>(wParam)); +		vs.theEdge.colour = ColourDesired(static_cast<int>(wParam));  		InvalidateStyleRedraw();  		break; @@ -7782,7 +7782,7 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {  		break;  	case SCI_GETHOTSPOTACTIVEFORE: -		return vs.hotspotColours.fore.AsLong(); +		return vs.hotspotColours.fore.AsInteger();  	case SCI_SETHOTSPOTACTIVEBACK:  		vs.hotspotColours.back = ColourOptional(wParam, lParam); @@ -7790,7 +7790,7 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {  		break;  	case SCI_GETHOTSPOTACTIVEBACK: -		return vs.hotspotColours.back.AsLong(); +		return vs.hotspotColours.back.AsInteger();  	case SCI_SETHOTSPOTACTIVEUNDERLINE:  		vs.hotspotUnderline = wParam != 0; @@ -8114,12 +8114,12 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {  		return virtualSpaceOptions;  	case SCI_SETADDITIONALSELFORE: -		vs.selAdditionalForeground = ColourDesired(static_cast<long>(wParam)); +		vs.selAdditionalForeground = ColourDesired(static_cast<int>(wParam));  		InvalidateStyleRedraw();  		break;  	case SCI_SETADDITIONALSELBACK: -		vs.selAdditionalBackground = ColourDesired(static_cast<long>(wParam)); +		vs.selAdditionalBackground = ColourDesired(static_cast<int>(wParam));  		InvalidateStyleRedraw();  		break; @@ -8132,12 +8132,12 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {  		return vs.selAdditionalAlpha;  	case SCI_SETADDITIONALCARETFORE: -		vs.additionalCaretColour = ColourDesired(static_cast<long>(wParam)); +		vs.additionalCaretColour = ColourDesired(static_cast<int>(wParam));  		InvalidateStyleRedraw();  		break;  	case SCI_GETADDITIONALCARETFORE: -		return vs.additionalCaretColour.AsLong(); +		return vs.additionalCaretColour.AsInteger();  	case SCI_ROTATESELECTION:  		sel.RotateMain(); diff --git a/src/ScintillaBase.cxx b/src/ScintillaBase.cxx index 71f42d856..824bcdfeb 100644 --- a/src/ScintillaBase.cxx +++ b/src/ScintillaBase.cxx @@ -1013,19 +1013,19 @@ sptr_t ScintillaBase::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lPara  		break;  	case SCI_CALLTIPSETBACK: -		ct.colourBG = ColourDesired(static_cast<long>(wParam)); +		ct.colourBG = ColourDesired(static_cast<int>(wParam));  		vs.styles[STYLE_CALLTIP].back = ct.colourBG;  		InvalidateStyleRedraw();  		break;  	case SCI_CALLTIPSETFORE: -		ct.colourUnSel = ColourDesired(static_cast<long>(wParam)); +		ct.colourUnSel = ColourDesired(static_cast<int>(wParam));  		vs.styles[STYLE_CALLTIP].fore = ct.colourUnSel;  		InvalidateStyleRedraw();  		break;  	case SCI_CALLTIPSETFOREHLT: -		ct.colourSel = ColourDesired(static_cast<long>(wParam)); +		ct.colourSel = ColourDesired(static_cast<int>(wParam));  		InvalidateStyleRedraw();  		break; diff --git a/src/ViewStyle.h b/src/ViewStyle.h index 2a4e7329a..800d8cb67 100644 --- a/src/ViewStyle.h +++ b/src/ViewStyle.h @@ -68,7 +68,7 @@ public:  	bool isSet;  	ColourOptional(ColourDesired colour_=ColourDesired(0,0,0), bool isSet_=false) : ColourDesired(colour_), isSet(isSet_) {  	} -	ColourOptional(uptr_t wParam, sptr_t lParam) : ColourDesired(static_cast<long>(lParam)), isSet(wParam != 0) { +	ColourOptional(uptr_t wParam, sptr_t lParam) : ColourDesired(static_cast<int>(lParam)), isSet(wParam != 0) {  	}  }; @@ -84,7 +84,7 @@ struct EdgeProperties {  		column(column_), colour(colour_) {  	}  	EdgeProperties(uptr_t wParam, sptr_t lParam) : -		column(static_cast<int>(wParam)), colour(static_cast<long>(lParam)) { +		column(static_cast<int>(wParam)), colour(static_cast<int>(lParam)) {  	}  }; diff --git a/src/XPM.cxx b/src/XPM.cxx index 65099a8b3..0d4a2a068 100644 --- a/src/XPM.cxx +++ b/src/XPM.cxx @@ -22,7 +22,9 @@  using namespace Scintilla; -static const char *NextField(const char *s) { +namespace { + +const char *NextField(const char *s) {  	// In case there are leading spaces in the string  	while (*s == ' ') {  		s++; @@ -37,13 +39,34 @@ static const char *NextField(const char *s) {  }  // Data lines in XPM can be terminated either with NUL or " -static size_t MeasureLength(const char *s) { +size_t MeasureLength(const char *s) {  	size_t i = 0;  	while (s[i] && (s[i] != '\"'))  		i++;  	return i;  } +unsigned int ValueOfHex(const char ch) noexcept { +	if (ch >= '0' && ch <= '9') +		return ch - '0'; +	else if (ch >= 'A' && ch <= 'F') +		return ch - 'A' + 10; +	else if (ch >= 'a' && ch <= 'f') +		return ch - 'a' + 10; +	else +		return 0; +} + +ColourDesired ColourFromHex(const char *val) noexcept { +	unsigned int r = ValueOfHex(val[0]) * 16 + ValueOfHex(val[1]); +	unsigned int g = ValueOfHex(val[2]) * 16 + ValueOfHex(val[3]); +	unsigned int b = ValueOfHex(val[4]) * 16 + ValueOfHex(val[5]); +	return ColourDesired(r, g, b); +} + +} + +  ColourDesired XPM::ColourFromCode(int ch) const {  	return colourCodeTable[ch];  } @@ -110,7 +133,7 @@ void XPM::Init(const char *const *linesForm) {  		colourDef += 4;  		ColourDesired colour(0xff, 0xff, 0xff);  		if (*colourDef == '#') { -			colour.Set(colourDef); +			colour = ColourFromHex(colourDef+1);  		} else {  			codeTransparent = code;  		} | 
