diff options
| -rw-r--r-- | call/ScintillaCall.cxx | 8 | ||||
| -rw-r--r-- | doc/ScintillaHistory.html | 4 | ||||
| -rw-r--r-- | include/ScintillaCall.h | 13 | ||||
| -rw-r--r-- | scripts/ScintillaAPIFacer.py | 6 | 
4 files changed, 20 insertions, 11 deletions
| diff --git a/call/ScintillaCall.cxx b/call/ScintillaCall.cxx index 27ad8a738..dcffb8a7e 100644 --- a/call/ScintillaCall.cxx +++ b/call/ScintillaCall.cxx @@ -231,7 +231,7 @@ Position ScintillaCall::GetStyledText(void *tr) {  	return CallPointer(Message::GetStyledText, 0, tr);  } -Position ScintillaCall::GetStyledTextFull(void *tr) { +Position ScintillaCall::GetStyledTextFull(TextRangeFull *tr) {  	return CallPointer(Message::GetStyledTextFull, 0, tr);  } @@ -1159,7 +1159,7 @@ Position ScintillaCall::FindText(Scintilla::FindOption searchFlags, void *ft) {  	return CallPointer(Message::FindText, static_cast<uintptr_t>(searchFlags), ft);  } -Position ScintillaCall::FindTextFull(Scintilla::FindOption searchFlags, void *ft) { +Position ScintillaCall::FindTextFull(Scintilla::FindOption searchFlags, TextToFindFull *ft) {  	return CallPointer(Message::FindTextFull, static_cast<uintptr_t>(searchFlags), ft);  } @@ -1167,7 +1167,7 @@ Position ScintillaCall::FormatRange(bool draw, void *fr) {  	return CallPointer(Message::FormatRange, draw, fr);  } -Position ScintillaCall::FormatRangeFull(bool draw, void *fr) { +Position ScintillaCall::FormatRangeFull(bool draw, RangeToFormatFull *fr) {  	return CallPointer(Message::FormatRangeFull, draw, fr);  } @@ -1235,7 +1235,7 @@ Position ScintillaCall::GetTextRange(void *tr) {  	return CallPointer(Message::GetTextRange, 0, tr);  } -Position ScintillaCall::GetTextRangeFull(void *tr) { +Position ScintillaCall::GetTextRangeFull(TextRangeFull *tr) {  	return CallPointer(Message::GetTextRangeFull, 0, tr);  } diff --git a/doc/ScintillaHistory.html b/doc/ScintillaHistory.html index 5caeb139a..7e544789c 100644 --- a/doc/ScintillaHistory.html +++ b/doc/ScintillaHistory.html @@ -587,6 +587,10 @@  	Released 8 February 2023.  	</li>  	<li> +	More typesafe bindings of *Full APIs in ScintillaCall. +	<a href="https://sourceforge.net/p/scintilla/feature-requests/1477/">Feature #1477</a>. +	</li> +	<li>  	Fix overlapping of text with line end wrap marker.  	<a href="https://sourceforge.net/p/scintilla/bugs/2378/">Bug #2378</a>.  	</li> diff --git a/include/ScintillaCall.h b/include/ScintillaCall.h index 9c851d567..8a01f2acb 100644 --- a/include/ScintillaCall.h +++ b/include/ScintillaCall.h @@ -15,6 +15,11 @@ namespace Scintilla {  enum class Message;	// Declare in case ScintillaMessages.h not included +// Declare in case ScintillaStructures.h not included +struct TextRangeFull; +struct TextToFindFull; +struct RangeToFormatFull; +  using FunctionDirect = intptr_t(*)(intptr_t ptr, unsigned int iMessage, uintptr_t wParam, intptr_t lParam, int *pStatus);  struct Failure { @@ -96,7 +101,7 @@ public:  	void SelectAll();  	void SetSavePoint();  	Position GetStyledText(void *tr); -	Position GetStyledTextFull(void *tr); +	Position GetStyledTextFull(TextRangeFull *tr);  	bool CanRedo();  	Line MarkerLineFromHandle(int markerHandle);  	void MarkerDeleteHandle(int markerHandle); @@ -328,9 +333,9 @@ public:  	void SetPrintColourMode(Scintilla::PrintOption mode);  	Scintilla::PrintOption PrintColourMode();  	Position FindText(Scintilla::FindOption searchFlags, void *ft); -	Position FindTextFull(Scintilla::FindOption searchFlags, void *ft); +	Position FindTextFull(Scintilla::FindOption searchFlags, TextToFindFull *ft);  	Position FormatRange(bool draw, void *fr); -	Position FormatRangeFull(bool draw, void *fr); +	Position FormatRangeFull(bool draw, RangeToFormatFull *fr);  	void SetChangeHistory(Scintilla::ChangeHistoryOption changeHistory);  	Scintilla::ChangeHistoryOption ChangeHistory();  	Line FirstVisibleLine(); @@ -347,7 +352,7 @@ public:  	Position GetSelText(char *text);  	std::string GetSelText();  	Position GetTextRange(void *tr); -	Position GetTextRangeFull(void *tr); +	Position GetTextRangeFull(TextRangeFull *tr);  	void HideSelection(bool hide);  	bool SelectionHidden();  	int PointXFromPosition(Position pos); diff --git a/scripts/ScintillaAPIFacer.py b/scripts/ScintillaAPIFacer.py index e30f48380..f26389abb 100644 --- a/scripts/ScintillaAPIFacer.py +++ b/scripts/ScintillaAPIFacer.py @@ -19,9 +19,9 @@ typeAliases = {  	"colour": "Colour",  	"colouralpha": "ColourAlpha",  	"findtext": "void *", -	"findtextfull": "void *", +	"findtextfull": "TextToFindFull *",  	"formatrange": "void *", -	"formatrangefull": "void *", +	"formatrangefull": "RangeToFormatFull *",  	"int": "int",  	"keymod": "int",  	"line": "Line", @@ -30,7 +30,7 @@ typeAliases = {  	"string": "const char *",  	"stringresult": "char *",  	"textrange": "void *", -	"textrangefull": "void *", +	"textrangefull": "TextRangeFull *",  }  basicTypes = [ | 
