[ENHANCEMENT] Enhance doc map.
git-svn-id: svn://svn.tuxfamily.org/svnroot/notepadplus/repository/trunk@885 f5eea248-9336-0410-98b8-ebc06183d4e3
This commit is contained in:
parent
c1c738348d
commit
870a4f1050
@ -176,14 +176,26 @@ void DocumentMap::scrollMap()
|
|||||||
_pScintillaEditView->execute(SCI_GOTOLINE, firstVisibleDocLine);
|
_pScintillaEditView->execute(SCI_GOTOLINE, firstVisibleDocLine);
|
||||||
|
|
||||||
// Get the editor's higher/lower Y, then compute the map's higher/lower Y
|
// Get the editor's higher/lower Y, then compute the map's higher/lower Y
|
||||||
int higherPos = _pScintillaEditView->execute(SCI_POSITIONFROMLINE, firstVisibleDocLine);
|
int higherY = 0;
|
||||||
int lowerPos = _pScintillaEditView->execute(SCI_POSITIONFROMLINE, lastVisibleDocLine);
|
int lowerY = 0;
|
||||||
int higherY = _pScintillaEditView->execute(SCI_POINTYFROMPOSITION, 0, higherPos);
|
if (!(*_ppEditView)->isWrap())
|
||||||
int lowerY = _pScintillaEditView->execute(SCI_POINTYFROMPOSITION, 0, lowerPos);
|
|
||||||
if (lowerY == 0)
|
|
||||||
{
|
{
|
||||||
|
int higherPos = _pScintillaEditView->execute(SCI_POSITIONFROMLINE, firstVisibleDocLine);
|
||||||
|
int lowerPos = _pScintillaEditView->execute(SCI_POSITIONFROMLINE, lastVisibleDocLine);
|
||||||
|
higherY = _pScintillaEditView->execute(SCI_POINTYFROMPOSITION, 0, higherPos);
|
||||||
|
lowerY = _pScintillaEditView->execute(SCI_POINTYFROMPOSITION, 0, lowerPos);
|
||||||
|
if (lowerY == 0)
|
||||||
|
{
|
||||||
|
int lineHeight = _pScintillaEditView->execute(SCI_TEXTHEIGHT, firstVisibleDocLine);
|
||||||
|
lowerY = nbLine * lineHeight + firstVisibleDocLine;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
int higherPos = (*_ppEditView)->execute(SCI_POSITIONFROMPOINT, 0, 0);
|
||||||
|
higherY = _pScintillaEditView->execute(SCI_POINTYFROMPOSITION, 0, higherPos);
|
||||||
int lineHeight = _pScintillaEditView->execute(SCI_TEXTHEIGHT, firstVisibleDocLine);
|
int lineHeight = _pScintillaEditView->execute(SCI_TEXTHEIGHT, firstVisibleDocLine);
|
||||||
lowerY = nbLine * lineHeight + firstVisibleDocLine;
|
lowerY = nbLine * lineHeight + higherY;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Update view zone in map
|
// Update view zone in map
|
||||||
|
Loading…
Reference in New Issue
Block a user