From e7827264e7e62dd6949121f2fccff56a60d76491 Mon Sep 17 00:00:00 2001 From: Richard Heck Date: Sat, 9 Feb 2013 11:13:40 -0500 Subject: [PATCH] Eliminate the hard-coded special handing of chapters. We'll use the new Above LabelType instead. --- src/TextMetrics.cpp | 9 --------- src/rowpainter.cpp | 41 +++++++---------------------------------- 2 files changed, 7 insertions(+), 43 deletions(-) diff --git a/src/TextMetrics.cpp b/src/TextMetrics.cpp index 44e81d0371..8b0f3a900b 100644 --- a/src/TextMetrics.cpp +++ b/src/TextMetrics.cpp @@ -1102,15 +1102,6 @@ Dimension TextMetrics::rowHeight(pit_type const pit, pos_type const first, if (par.params().startOfAppendix()) maxasc += int(3 * dh); - // This is special code for the chapter, since the label of this - // layout is printed in an extra row - if (layout.counter == "chapter" - && !par.params().labelString().empty()) { - labeladdon = int(labelfont_metrics.maxHeight() - * layout.spacing.getValue() - * text_->spacing(par)); - } - // special code for the top label if (layout.labelIsAbove() && (!layout.isParagraphGroup() || text_->isFirstInSequence(pit)) diff --git a/src/rowpainter.cpp b/src/rowpainter.cpp index eb3b6f723e..48e9de3de7 100644 --- a/src/rowpainter.cpp +++ b/src/rowpainter.cpp @@ -605,48 +605,21 @@ void RowPainter::paintLabel() if (str.empty()) return; - BufferParams const & bparams = pi_.base.bv->buffer().params(); bool const is_rtl = text_.isRTL(par_); Layout const & layout = par_.layout(); - ParagraphParameters const & pparams = par_.params(); FontInfo const font = labelFont(); FontMetrics const & fm = theFontMetrics(font); - double x = x_; - // this is special code for the chapter layout. This is - // printed in an extra row and has a pagebreak at - // the top. - if (layout.counter == "chapter") { - double spacing_val = 1.0; - if (!pparams.spacing().isDefault()) { - spacing_val = pparams.spacing().getValue(); - } else { - spacing_val = bparams.spacing().getValue(); - } - - int const labeladdon = int(fm.maxHeight() * layout.spacing.getValue() * spacing_val); - - int const maxdesc = int(fm.maxDescent() * layout.spacing.getValue() * spacing_val) - + int(layout.parsep) * defaultRowHeight(); - - if (is_rtl) { - x = width_ - leftMargin() - - fm.width(str); - } - - pi_.pain.text(int(x), yo_ - maxdesc - labeladdon, str, font); + if (is_rtl) { + x = width_ - leftMargin() + + fm.width(layout.labelsep); } else { - if (is_rtl) { - x = width_ - leftMargin() - + fm.width(layout.labelsep); - } else { - x = x_ - fm.width(layout.labelsep) - - fm.width(str); - } - - pi_.pain.text(int(x), yo_, str, font); + x = x_ - fm.width(layout.labelsep) + - fm.width(str); } + + pi_.pain.text(int(x), yo_, str, font); } -- 2.39.2