From 01c48f98e5557089fc7501394f905a5b15fde9c0 Mon Sep 17 00:00:00 2001 From: Neil Date: Tue, 19 Dec 2017 15:00:40 +1100 Subject: Start of bidirectional code - implement SCI_SETBIDIRECTIONAL. --- doc/ScintillaDoc.html | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) (limited to 'doc/ScintillaDoc.html') diff --git a/doc/ScintillaDoc.html b/doc/ScintillaDoc.html index 90c5745e2..1e71bafbd 100644 --- a/doc/ScintillaDoc.html +++ b/doc/ScintillaDoc.html @@ -119,7 +119,7 @@

Scintilla Documentation

-

Last edited 11 August 2017 NH

+

Last edited 10 January 2018 NH

There is an overview of the internal design of Scintilla.
@@ -3594,6 +3594,10 @@ struct Sci_TextToFind { SCI_GETCODEPAGE → int
SCI_SETIMEINTERACTION(int imeInteraction)
SCI_GETIMEINTERACTION → int
+

+ SCI_SETBIDIRECTIONAL(int bidirectional)
+ SCI_GETBIDIRECTIONAL → int
+
SCI_GRABFOCUS
SCI_SETFOCUS(bool focus)
SCI_GETFOCUS → bool
@@ -3718,6 +3722,27 @@ struct Sci_TextToFind { and the inline behaviour with SCI_SETIMEINTERACTION(SC_IME_INLINE). Scintilla may ignore this call in some cases. For example, the inline behaviour might only be supported for some languages.

+
+ These bidirectional features are not yet implemented and the API is provisional
+

SCI_SETBIDIRECTIONAL(int bidirectional)
+ SCI_GETBIDIRECTIONAL → int
+ Some languages, like Arabic and Hebrew, are written from right to left instead of from left to right as English is. + Documents that use multiple languages may contain both directions and this is termed "bidirectional". + The default text direction may be right to left or left to right. + Scintilla only correctly displays bidirectional text on some platforms and there can be additional processing and storage + costs to this. + Currently, bidirectional text only works on Win32 using DirectWrite. + As some applications may not want to pay the costs, bidirectional support must be explicitly enabled by calling + SCI_SETBIDIRECTIONAL(SC_BIDIRECTIONAL_L2R) (1) which chooses left to right as the default direction or + SCI_SETBIDIRECTIONAL(SC_BIDIRECTIONAL_R2L) (2) for default right to left. + This should be done after setting the technology to SC_TECHNOLOGY_DIRECTWRITE, + SC_TECHNOLOGY_DIRECTWRITERETAIN, or + SC_TECHNOLOGY_DIRECTWRITEDC.

+

If the call succeeded SCI_GETBIDIRECTIONAL will return the same value otherwise + SC_BIDIRECTIONAL_DISABLED (0) is returned. +

+
+

SCI_GRABFOCUS
SCI_SETFOCUS(bool focus)
SCI_GETFOCUS → bool
@@ -8073,8 +8098,6 @@ for line = lineStart to lineEnd do SCI_ENSUREVISIBLE(line) next

Provisional features are displayed in this document with a distinctive background colour.

-

There are currently no provisional messages or values.

-

Some developers may want to only use features that are stable and have graduated from provisional status. To avoid using provisional messages compile with the symbol SCI_DISABLE_PROVISIONAL defined.

-- cgit v1.2.3