mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-25 05:55:34 +00:00
fix row breaking before display()ed insets
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8473 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
fc52df8243
commit
d0bcd26ec5
@ -1,11 +1,6 @@
|
|||||||
2004-03-01 Alfredo Braunstein <abraunst@lyx.org>
|
2004-03-01 Alfredo Braunstein <abraunst@lyx.org>
|
||||||
|
|
||||||
* lyxtext.h:
|
* text.C (rowBreakPoint): fix breaking before displayed insets
|
||||||
* text.C:
|
|
||||||
* text2.C:
|
|
||||||
* rowpainter.C:
|
|
||||||
* BufferView_pimpl.C: rename textwidth -> maxwidth,
|
|
||||||
prepareToPrint -> computeRowMetrics and remove textWidth accessor.
|
|
||||||
|
|
||||||
2004-03-01 André Pönitz <poenitz@gmx.net>
|
2004-03-01 André Pönitz <poenitz@gmx.net>
|
||||||
|
|
||||||
@ -23,6 +18,15 @@
|
|||||||
* text2.C:
|
* text2.C:
|
||||||
* text3.C: adjust
|
* text3.C: adjust
|
||||||
|
|
||||||
|
2004-03-01 Alfredo Braunstein <abraunst@lyx.org>
|
||||||
|
|
||||||
|
* lyxtext.h:
|
||||||
|
* text.C:
|
||||||
|
* text2.C:
|
||||||
|
* rowpainter.C:
|
||||||
|
* BufferView_pimpl.C: rename textwidth -> maxwidth,
|
||||||
|
prepareToPrint -> computeRowMetrics and remove textWidth accessor.
|
||||||
|
|
||||||
2004-03-01 Alfredo Braunstein <abraunst@lyx.org>
|
2004-03-01 Alfredo Braunstein <abraunst@lyx.org>
|
||||||
|
|
||||||
* Bidi.[Ch] (computeTables): const correctness
|
* Bidi.[Ch] (computeTables): const correctness
|
||||||
|
37
src/text.C
37
src/text.C
@ -493,23 +493,6 @@ void LyXText::rowBreakPoint(ParagraphList::iterator pit, Row & row) const
|
|||||||
pos_type point = end;
|
pos_type point = end;
|
||||||
pos_type i = pos;
|
pos_type i = pos;
|
||||||
for ( ; i < end; ++i, ++fi) {
|
for ( ; i < end; ++i, ++fi) {
|
||||||
if (pit->isNewline(i)) {
|
|
||||||
point = i + 1;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
// Break before...
|
|
||||||
if (i + 1 < end) {
|
|
||||||
if (pit->isInset(i + 1) && pit->getInset(i + 1)->display()) {
|
|
||||||
point = i + 1;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
// ...and after.
|
|
||||||
if (pit->isInset(i) && pit->getInset(i)->display()) {
|
|
||||||
point = i + 1;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
char const c = pit->getChar(i);
|
char const c = pit->getChar(i);
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -544,6 +527,23 @@ void LyXText::rowBreakPoint(ParagraphList::iterator pit, Row & row) const
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (pit->isNewline(i)) {
|
||||||
|
point = i + 1;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
// Break before...
|
||||||
|
if (i + 1 < end) {
|
||||||
|
if (pit->isInset(i + 1) && pit->getInset(i + 1)->display()) {
|
||||||
|
point = i + 1;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
// ...and after.
|
||||||
|
if (pit->isInset(i) && pit->getInset(i)->display()) {
|
||||||
|
point = i + 1;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (!pit->isInset(i) || pit->getInset(i)->isChar()) {
|
if (!pit->isInset(i) || pit->getInset(i)->isChar()) {
|
||||||
// some insets are line separators too
|
// some insets are line separators too
|
||||||
if (pit->isLineSeparator(i)) {
|
if (pit->isLineSeparator(i)) {
|
||||||
@ -554,10 +554,9 @@ void LyXText::rowBreakPoint(ParagraphList::iterator pit, Row & row) const
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (i == end && x < width) {
|
|
||||||
// maybe found one, but the par is short enough.
|
// maybe found one, but the par is short enough.
|
||||||
|
if (i == end && x < width)
|
||||||
point = end;
|
point = end;
|
||||||
}
|
|
||||||
|
|
||||||
// manual labels cannot be broken in LaTeX. But we
|
// manual labels cannot be broken in LaTeX. But we
|
||||||
// want to make our on-screen rendering of footnotes
|
// want to make our on-screen rendering of footnotes
|
||||||
|
Loading…
Reference in New Issue
Block a user