Use Paragraph::getAlign in TextMetrics

This avoids some duplicate code. Note that the return value of
Paragraph::getAlign had to be changed. I suspect it was set to char to
avoid reading one header file in Paragraph.h.
This commit is contained in:
Jean-Marc Lasgouttes 2017-01-24 19:33:03 +01:00
parent 1f352b390c
commit 000832f9d9
3 changed files with 5 additions and 15 deletions

View File

@ -1948,7 +1948,7 @@ depth_type Paragraph::getMaxDepthAfter() const
}
char Paragraph::getAlign() const
LyXAlignment Paragraph::getAlign() const
{
if (d->params_.align() == LYX_ALIGN_LAYOUT)
return d->layout_->align;

View File

@ -17,6 +17,7 @@
#define PARAGRAPH_H
#include "FontEnums.h"
#include "LayoutEnums.h"
#include "SpellChecker.h"
#include "support/strfwd.h"
@ -309,7 +310,7 @@ public:
/// Set label width string.
void setLabelWidthString(docstring const & s);
/// Actual paragraph alignment used
char getAlign() const;
LyXAlignment getAlign() const;
/// The nesting depth of a paragraph
depth_type getDepth() const;
/// The maximal possible depth of a paragraph after this one

View File

@ -514,13 +514,7 @@ bool TextMetrics::redoParagraph(pit_type const pit)
LyXAlignment TextMetrics::getAlign(Paragraph const & par, Row const & row) const
{
Layout const & layout = par.layout();
LyXAlignment align;
if (par.params().align() == LYX_ALIGN_LAYOUT)
align = layout.align;
else
align = par.params().align();
LyXAlignment align = par.getAlign();
// handle alignment inside tabular cells
Inset const & owner = text_->inset();
@ -1788,12 +1782,7 @@ int TextMetrics::leftMargin(int max_width,
if (!par.params().leftIndent().zero())
l_margin += par.params().leftIndent().inPixels(max_width, lfm.em());
LyXAlignment align;
if (par.params().align() == LYX_ALIGN_LAYOUT)
align = layout.align;
else
align = par.params().align();
LyXAlignment align = par.getAlign();
// set the correct parindent
if (pos == 0