Selection start is gauranteed to return the smaller of the two positions

Closes #1373
This commit is contained in:
dail8859 2016-01-14 17:23:09 -05:00 committed by Don Ho
parent faf107a4ef
commit 5e3313d8a5
2 changed files with 4 additions and 9 deletions

View File

@ -2372,12 +2372,7 @@ pair<int, int> ScintillaEditView::getSelectionLinesRange() const
range.first = execute(SCI_LINEFROMPOSITION, start); range.first = execute(SCI_LINEFROMPOSITION, start);
range.second = execute(SCI_LINEFROMPOSITION, end); range.second = execute(SCI_LINEFROMPOSITION, end);
if (range.first > range.second)
{
int temp = range.first;
range.first = range.second;
range.second = temp;
}
return range; return range;
} }
@ -2448,7 +2443,7 @@ void ScintillaEditView::convertSelectedTextTo(bool Case)
size_t selectionStart = execute(SCI_GETSELECTIONSTART); size_t selectionStart = execute(SCI_GETSELECTIONSTART);
size_t selectionEnd = execute(SCI_GETSELECTIONEND); size_t selectionEnd = execute(SCI_GETSELECTIONEND);
int strSize = ((selectionEnd > selectionStart)?(selectionEnd - selectionStart):(selectionStart - selectionEnd))+1; int strSize = (selectionEnd - selectionStart) + 1;
if (strSize) if (strSize)
{ {
char *selectedStr = new char[strSize+1]; char *selectedStr = new char[strSize+1];

View File

@ -466,11 +466,11 @@ public:
return false; return false;
long start = long(execute(SCI_GETSELECTIONSTART)); long start = long(execute(SCI_GETSELECTIONSTART));
long end = long(execute(SCI_GETSELECTIONEND)); long end = long(execute(SCI_GETSELECTIONEND));
selByte = (start < end)?end-start:start-end; selByte = end - start;
start = long(execute(SCI_LINEFROMPOSITION, start)); start = long(execute(SCI_LINEFROMPOSITION, start));
end = long(execute(SCI_LINEFROMPOSITION, end)); end = long(execute(SCI_LINEFROMPOSITION, end));
selLine = (start < end)?end-start:start-end; selLine = end - start;
if (selLine) if (selLine)
++selLine; ++selLine;