mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-10 20:04:46 +00:00
Five more percent.
I'd really prefer if people would not add unused code to critical paths.. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22534 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
f7e4d591dc
commit
57d2f9c0ad
@ -247,24 +247,16 @@ Inset * DocIterator::innerInsetOfType(int code) const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void DocIterator::forwardPos(bool ignorecollapsed)
|
// This duplicates code above, but is in the critical path.
|
||||||
|
// So please think twice before adding stuff
|
||||||
|
void DocIterator::forwardPos()
|
||||||
{
|
{
|
||||||
//this dog bites his tail
|
// this dog bites his tail
|
||||||
if (empty()) {
|
if (empty()) {
|
||||||
push_back(CursorSlice(*inset_));
|
push_back(CursorSlice(*inset_));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
Inset * const nextinset = nextInset();
|
|
||||||
// jump over collapsables if they are collapsed
|
|
||||||
// FIXME: the check for asInsetMath() shouldn't be necessary
|
|
||||||
// but math insets do not return a sensible editable() state yet.
|
|
||||||
if (ignorecollapsed && nextinset && (!nextinset->asInsetMath()
|
|
||||||
&& nextinset->editable() != Inset::HIGHLY_EDITABLE)) {
|
|
||||||
++top().pos();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
CursorSlice & tip = top();
|
CursorSlice & tip = top();
|
||||||
//lyxerr << "XXX\n" << *this << endl;
|
//lyxerr << "XXX\n" << *this << endl;
|
||||||
|
|
||||||
@ -302,6 +294,20 @@ void DocIterator::forwardPos(bool ignorecollapsed)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void DocIterator::forwardPosIgnoreCollapsed()
|
||||||
|
{
|
||||||
|
Inset * const nextinset = nextInset();
|
||||||
|
// FIXME: the check for asInsetMath() shouldn't be necessary
|
||||||
|
// but math insets do not return a sensible editable() state yet.
|
||||||
|
if (nextinset && !nextinset->asInsetMath()
|
||||||
|
&& nextinset->editable() != Inset::HIGHLY_EDITABLE) {
|
||||||
|
++top().pos();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
forwardPos();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void DocIterator::forwardPar()
|
void DocIterator::forwardPar()
|
||||||
{
|
{
|
||||||
forwardPos();
|
forwardPos();
|
||||||
|
@ -159,9 +159,14 @@ public:
|
|||||||
//
|
//
|
||||||
/**
|
/**
|
||||||
* move on one logical position, descend into nested insets
|
* move on one logical position, descend into nested insets
|
||||||
* skip collapsed insets if \p ignorecollapsed is true
|
* including collapsed insets
|
||||||
*/
|
*/
|
||||||
void forwardPos(bool ignorecollapsed = false);
|
void forwardPos();
|
||||||
|
/**
|
||||||
|
* move on one logical position, descend into nested insets
|
||||||
|
* skip collapsed insets
|
||||||
|
*/
|
||||||
|
void forwardPosIgnoreCollapsed();
|
||||||
/// move on one physical character or inset
|
/// move on one physical character or inset
|
||||||
void forwardChar();
|
void forwardChar();
|
||||||
/// move on one paragraph
|
/// move on one paragraph
|
||||||
|
Loading…
Reference in New Issue
Block a user