// depending on the cursor position is very very unintuitive...
// We need some edit boxes to show which rows are header/footer/etc
// without having to move the cursor first.
- headerStatusCB->setEnabled(longtabular);
+ headerStatusCB->setEnabled(longtabular
+ && (headerStatusCB->isChecked() ?
+ funcEnabled(Tabular::UNSET_LTHEAD) :
+ funcEnabled(Tabular::SET_LTHEAD)));
headerBorderAboveCB->setEnabled(longtabular
&& headerStatusCB->isChecked());
headerBorderBelowCB->setEnabled(longtabular
// check if setting a first header is allowed
// additionally check firstheaderNoContentsCB because when this is
// the case a first header makes no sense
- firstheaderStatusCB->setEnabled(funcEnabled(Tabular::SET_LTFIRSTHEAD)
+ firstheaderStatusCB->setEnabled((firstheaderStatusCB->isChecked() ?
+ funcEnabled(Tabular::UNSET_LTFIRSTHEAD) :
+ funcEnabled(Tabular::SET_LTFIRSTHEAD))
&& longtabular && !firstheaderNoContentsCB->isChecked());
firstheaderBorderAboveCB->setEnabled(longtabular
&& firstheaderStatusCB->isChecked());
firstheaderBorderBelowCB->setEnabled(longtabular
&& firstheaderStatusCB->isChecked());
- footerStatusCB->setEnabled(longtabular);
+ footerStatusCB->setEnabled(longtabular
+ && (footerStatusCB->isChecked() ?
+ funcEnabled(Tabular::UNSET_LTFOOT) :
+ funcEnabled(Tabular::SET_LTFOOT)));
footerBorderAboveCB->setEnabled(longtabular
&& footerBorderAboveCB->isChecked());
footerBorderBelowCB->setEnabled(longtabular
// check if setting a last footer is allowed
// additionally check lastfooterNoContentsCB because when this is
// the case a last footer makes no sense
- lastfooterStatusCB->setEnabled(funcEnabled(Tabular::SET_LTLASTFOOT)
+ lastfooterStatusCB->setEnabled((lastfooterStatusCB->isChecked() ?
+ funcEnabled(Tabular::UNSET_LTLASTFOOT) :
+ funcEnabled(Tabular::SET_LTLASTFOOT))
&& longtabular && !lastfooterNoContentsCB->isChecked());
lastfooterBorderAboveCB->setEnabled(longtabular
&& lastfooterBorderAboveCB->isChecked());
break;
case Tabular::UNSET_LTFIRSTHEAD:
+ status.setEnabled(sel_row_start == sel_row_end && !tabular.ltCaption(sel_row_start));
status.setOnOff(!tabular.getRowOfLTFirstHead(sel_row_start, dummyltt));
break;
break;
case Tabular::UNSET_LTHEAD:
+ status.setEnabled(sel_row_start == sel_row_end && !tabular.ltCaption(sel_row_start));
status.setOnOff(!tabular.getRowOfLTHead(sel_row_start, dummyltt));
break;
break;
case Tabular::UNSET_LTFOOT:
+ status.setEnabled(sel_row_start == sel_row_end && !tabular.ltCaption(sel_row_start));
status.setOnOff(!tabular.getRowOfLTFoot(sel_row_start, dummyltt));
break;
break;
case Tabular::UNSET_LTLASTFOOT:
+ status.setEnabled(sel_row_start == sel_row_end && !tabular.ltCaption(sel_row_start));
status.setOnOff(!tabular.getRowOfLTLastFoot(sel_row_start, dummyltt));
break;