+2001-02-12 Dekel Tsur <dekelts@tau.ac.il>
+
+ * formula.C (LocalDispatch): Change the default action of
+ break-line to create an align* environment instead of eqnarray*.
+
+ * math_inset.C (Metrics): Correct drawing of the multline environment.
2001-02-12 André Pönitz <poenitz@htwm.de>
* array.[hC]: replace private variable maxsize_ with call
int MathedInset::df_asc;
int MathedInset::df_des;
int MathedInset::df_width;
+int MathedInset::workWidth;
static
}
-int InsetFormula::width(BufferView *, LyXFont const & f) const
+int InsetFormula::width(BufferView * bv, LyXFont const & f) const
{
+ MathedInset::workWidth = bv->workWidth();
lfont_size = f.size();
par->Metrics();
return par->Width(); //+2;
void InsetFormula::draw(BufferView * bv, LyXFont const & f,
int baseline, float & x, bool) const
{
+ MathedInset::workWidth = bv->workWidth();
Painter & pain = bv->painter();
// Seems commenting out solves a problem.
LyXFont font = mathed_get_font(LM_TC_TEXTRM, LM_ST_TEXT);
case LFUN_BREAKLINE:
{
bv->lockedInsetStoreUndo(Undo::INSERT);
- byte c = arg.empty() ? 'e' : arg[0];
+ byte c = arg.empty() ? '1' : arg[0];
mathcursor->Insert(c, LM_TC_CR);
if (!label.empty()) {
mathcursor->setLabel(label);
for (i = 1; i < nc; ++i)
if (h_align[i] == 'R')
ws[i] += 10*df_width;
+ // Increase ws[i] for 'C' column
+ if (h_align[0] == 'C')
+ if (ws[0] < 7*workWidth/8)
+ ws[0] = 7*workWidth/8;
// Adjust local tabs
cxrow = row;
case 'R':
lf = ws[i] - cxrow->getTab(i);
break;
+ case 'C':
+ if (cxrow == row)
+ lf = 0;
+ else if (!cxrow->getNext())
+ lf = ws[i] - cxrow->getTab(i);
+ else
+ lf = (ws[i] - cxrow->getTab(i))/2;
+ break;
}
ww = (isvoid) ? lf : lf + cxrow->getTab(i);
cxrow->setTab(i, lf + rg);