Fixes for smaller insets with not leftaligned paragraps and large insets

inside them (typically an minipage with a large tabular ;)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3305 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Jürgen Vigna 2002-01-07 16:15:11 +00:00
parent 5d6b5eb116
commit 637d5b7d42
3 changed files with 14 additions and 3 deletions

View File

@ -1,3 +1,9 @@
2002-01-07 Juergen Vigna <jug@sad.it>
* text.C (setHeightOfRow): small fix
(prepareToPrint): don't look at alignment if we don't have the place
for doing it.
2002-01-07 Angus Leeming <a.leeming@ic.ac.uk>
* box.C: New file. Move the Box methods and functions out of box.h,

View File

@ -1548,6 +1548,8 @@ void LyXText::setHeightOfRow(BufferView * bview, Row * row_ptr) const
float x = 0;
if (layout.margintype != MARGIN_RIGHT_ADDRESS_BOX) {
float dummy;
// this IS needed
row_ptr->width(maxwidth);
prepareToPrint(bview, row_ptr, x, dummy, dummy, dummy, false);
}
row_ptr->width(int(maxwidth + x));
@ -2079,7 +2081,7 @@ void LyXText::prepareToPrint(BufferView * bview,
fill_separator = 0;
fill_label_hfill = 0;
bool const is_rtl =
bool const is_rtl =
row->par()->isRightToLeftPar(bview->buffer()->params);
if (is_rtl) {
x = (workWidth(bview) > 0)
@ -2106,7 +2108,10 @@ void LyXText::prepareToPrint(BufferView * bview,
if (nh) {
if (w > 0)
fill_hfill = w / nh;
} else {
// we don't have to look at the alignment if it is ALIGN_LEFT and
// if the row is already larger then the permitted width as then
// we force the LEFT_ALIGN'edness!
} else if (static_cast<int>(row->width()) < workWidth(bview)) {
// is it block, flushleft or flushright?
// set x how you need it
int align;

View File

@ -2124,7 +2124,7 @@ void LyXText::setCursor(BufferView * bview, LyXCursor & cur, Paragraph * par,
float fill_hfill;
float fill_label_hfill;
prepareToPrint(bview, row, x, fill_separator, fill_hfill,
fill_label_hfill);
fill_label_hfill);
pos_type cursor_vpos = 0;
pos_type last = rowLastPrintable(row);