this, SLOT(checkEnabled()));
connect(captionStatusCB, SIGNAL(clicked()),
this, SLOT(checkEnabled()));
- connect(specialAlignmentED, SIGNAL(editingFinished()),
+ connect(specialAlignmentED, SIGNAL(textEdited(const QString &)),
this, SLOT(checkEnabled()));
connect(columnWidthED, SIGNAL(textEdited(const QString &)),
this, SLOT(checkEnabled()));
// if there is a LaTeX argument, the width and alignment will be overwritten
// therefore disable them in this case
columnWidthED->setEnabled(specialAlignmentED->text().isEmpty());
+ columnWidthUnitLC->setEnabled(specialAlignmentED->text().isEmpty());
// if the column has a width, multirows are always left-aligned
// therefore disable hAlignCB in this case
hAlignCO->setEnabled(!(multirowCB->isChecked()
&& !widgetsToLength(columnWidthED, columnWidthUnitLC).empty())
&& specialAlignmentED->text().isEmpty());
+ // decimal alignment is only possible for non-multicol and non-multirow cells
+ if ((multicolumnCB->isChecked() || multirowCB->isChecked())
+ && hAlignCO->findData(toqstr("decimal")))
+ hAlignCO->removeItem(hAlignCO->findData(toqstr("decimal")));
+ else if (!multicolumnCB->isChecked() && !multirowCB->isChecked()
+ && hAlignCO->findData(toqstr("decimal")) == -1)
+ hAlignCO->addItem(qt_("At Decimal Separator"), toqstr("decimal"));
bool const dalign =
hAlignCO->itemData(hAlignCO->currentIndex()).toString() == QString("decimal");
decimalPointED->setEnabled(dalign);
captionStatusCB->setEnabled(funcEnabled(Tabular::TOGGLE_LTCAPTION)
&& longtabular);
- multicolumnCB->setEnabled(funcEnabled(Tabular::MULTICOLUMN));
- multirowCB->setEnabled(funcEnabled(Tabular::MULTIROW));
+ multicolumnCB->setEnabled(funcEnabled(Tabular::MULTICOLUMN)
+ && !dalign && !multirowCB->isChecked());
+ multirowCB->setEnabled(funcEnabled(Tabular::MULTIROW)
+ && !dalign && !multicolumnCB->isChecked());
bool const enable_mr = multirowCB->isChecked();
multirowOffsetLA->setEnabled(enable_mr);
multirowOffsetED->setEnabled(enable_mr);
hAlignCO->addItem(qt_("Right"), toqstr("right"));
if (!multicol && !pwidth.zero())
hAlignCO->addItem(qt_("Justified"), toqstr("justified"));
- if (!multicol)
+ if (!multicol && !multirow)
hAlignCO->addItem(qt_("At Decimal Separator"), toqstr("decimal"));
string align;
}
case LYX_ALIGN_DECIMAL:
{
- if (!multicol)
+ if (!multicol && !multirow)
align = "decimal";
break;
}