// An inset
INSET,
// Some spacing described by its width, not a string
- SPACE
+ SPACE,
+ // Spacing until the left margin, with a minimal value given
+ // by the initial width
+ MARGINSPACE
};
/**
pos_type pos;
// first position after the element in the paragraph
pos_type endpos;
- // The dimension of the chunk (does not contains the
+ // The dimension of the chunk (does not contain the
// separator correction)
Dimension dim;
+ // The width of the element without trailing spaces
+ int nspc_wid = 0;
// Non-zero only if element is an inset
Inset const * inset = nullptr;
Font const & f, Change const & ch);
///
void addSpace(pos_type pos, int width, Font const & f, Change const & ch);
+ ///
+ void addMarginSpace(pos_type pos, int width, Font const & f, Change const & ch);
///
typedef std::vector<Element> Elements;
* Find sequences of right-to-left elements and reverse them.
* This should be called once the row is completely built.
*/
- void reverseRTL(bool rtl_par);
+ void reverseRTL();
///
bool isRTL() const { return rtl_; }
///
+ void setRTL(bool rtl) { rtl_ = rtl; }
+ ///
bool needsChangeBar() const { return changebar_; }
///
void needsChangeBar(bool ncb) { changebar_ = ncb; }