If edge mode is set to EDGE_LINE or EDGE_BACKGROUND then it is possible to get the edge column with SCI_GETEDGECOLUMN. However if the edge mode is set to EDGE_MULTILINE there is no way to read the current edge columns. There should be some mechanism for this.
One possibility I can think of (working within the constraints of SendMessage) is to have a message that takes a pointer to an array as an argument. If this pointer is null, return the current number of edges. If this pointer is non-null, then populate the pointed to array with the current edge columns.
Does this seem reasonable?
Policy is to avoid pointer arguments as they are more difficult for scripting languages and there can be integer size (64-bit vs 32-bit) issues.
Define an index based approach with an out-of-bounds value for indices past the end or explicit number of edges call. Like the recent SCI_MARKERHANDLEFROMLINE and SCI_MARKERNUMBERFROMLINE addition [665c31].
Related
Commit: [665c31]
Committed implementation of SCI_GETMULTIEDGECOLUMN with [e72e8c] and [03c67a].
Related
Commit: [03c67a]
Commit: [e72e8c]
Committed implementation of SCI_GETMULTIEDGECOLUMN with [e72e8c] and [03c67a].
Related
Commit: [03c67a]
Commit: [e72e8c]