mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-22 10:00:33 +00:00
step 1
This commit is contained in:
parent
ebb9683a02
commit
304655a759
@ -149,9 +149,9 @@ TabularFeature tabularFeature[] =
|
|||||||
{ Tabular::UNSET_LONGTABULAR, "unset-longtabular", false },
|
{ Tabular::UNSET_LONGTABULAR, "unset-longtabular", false },
|
||||||
{ Tabular::SET_PWIDTH, "set-pwidth", true },
|
{ Tabular::SET_PWIDTH, "set-pwidth", true },
|
||||||
{ Tabular::SET_MPWIDTH, "set-mpwidth", true },
|
{ Tabular::SET_MPWIDTH, "set-mpwidth", true },
|
||||||
{ Tabular::SET_ROTATE_TABULAR, "set-rotate-tabular", false },
|
{ Tabular::SET_ROTATE_TABULAR, "set-rotate-tabular", true },
|
||||||
{ Tabular::UNSET_ROTATE_TABULAR, "unset-rotate-tabular", false },
|
{ Tabular::UNSET_ROTATE_TABULAR, "unset-rotate-tabular", true },
|
||||||
{ Tabular::TOGGLE_ROTATE_TABULAR, "toggle-rotate-tabular", false },
|
{ Tabular::TOGGLE_ROTATE_TABULAR, "toggle-rotate-tabular", true },
|
||||||
{ Tabular::SET_ROTATE_CELL, "set-rotate-cell", true },
|
{ Tabular::SET_ROTATE_CELL, "set-rotate-cell", true },
|
||||||
{ Tabular::UNSET_ROTATE_CELL, "unset-rotate-cell", true },
|
{ Tabular::UNSET_ROTATE_CELL, "unset-rotate-cell", true },
|
||||||
{ Tabular::TOGGLE_ROTATE_CELL, "toggle-rotate-cell", true },
|
{ Tabular::TOGGLE_ROTATE_CELL, "toggle-rotate-cell", true },
|
||||||
@ -686,7 +686,7 @@ void Tabular::init(Buffer * buf, row_type rows_arg,
|
|||||||
tabular_valignment = LYX_VALIGN_MIDDLE;
|
tabular_valignment = LYX_VALIGN_MIDDLE;
|
||||||
tabular_width = Length();
|
tabular_width = Length();
|
||||||
longtabular_alignment = LYX_LONGTABULAR_ALIGN_CENTER;
|
longtabular_alignment = LYX_LONGTABULAR_ALIGN_CENTER;
|
||||||
rotate = false;
|
rotate = 0;
|
||||||
use_booktabs = false;
|
use_booktabs = false;
|
||||||
// set silly default lines
|
// set silly default lines
|
||||||
for (row_type r = 0; r < nrows(); ++r)
|
for (row_type r = 0; r < nrows(); ++r)
|
||||||
@ -1388,7 +1388,7 @@ void Tabular::write(ostream & os) const
|
|||||||
<< ">\n";
|
<< ">\n";
|
||||||
// global longtable options
|
// global longtable options
|
||||||
os << "<features"
|
os << "<features"
|
||||||
<< write_attribute("rotate", rotate)
|
<< write_attribute("rotate", convert<string>(rotate))
|
||||||
<< write_attribute("booktabs", use_booktabs)
|
<< write_attribute("booktabs", use_booktabs)
|
||||||
<< write_attribute("islongtable", is_long_tabular)
|
<< write_attribute("islongtable", is_long_tabular)
|
||||||
<< write_attribute("firstHeadTopDL", endfirsthead.topDL)
|
<< write_attribute("firstHeadTopDL", endfirsthead.topDL)
|
||||||
@ -2599,8 +2599,8 @@ void Tabular::latex(otexstream & os, OutputParams const & runparams) const
|
|||||||
if (runparams.lastid != -1)
|
if (runparams.lastid != -1)
|
||||||
os.texrow().start(runparams.lastid, runparams.lastpos);
|
os.texrow().start(runparams.lastid, runparams.lastpos);
|
||||||
|
|
||||||
if (rotate)
|
if (rotate != 0)
|
||||||
os << "\\begin{sideways}\n";
|
os << "\\begin{turn}" << convert<string>(rotate) << "\n";
|
||||||
|
|
||||||
if (is_long_tabular) {
|
if (is_long_tabular) {
|
||||||
os << "\\begin{longtable}";
|
os << "\\begin{longtable}";
|
||||||
@ -2724,8 +2724,8 @@ void Tabular::latex(otexstream & os, OutputParams const & runparams) const
|
|||||||
os << "\\end{tabular}";
|
os << "\\end{tabular}";
|
||||||
}
|
}
|
||||||
|
|
||||||
if (rotate)
|
if (rotate != 0)
|
||||||
os << breakln << "\\end{sideways}";
|
os << breakln << "\\end{turn}";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -4545,7 +4545,7 @@ bool InsetTabular::getStatus(Cursor & cur, FuncRequest const & cmd,
|
|||||||
case Tabular::TOGGLE_ROTATE_TABULAR:
|
case Tabular::TOGGLE_ROTATE_TABULAR:
|
||||||
case Tabular::SET_ROTATE_TABULAR:
|
case Tabular::SET_ROTATE_TABULAR:
|
||||||
status.setEnabled(tabular.tabular_width.zero());
|
status.setEnabled(tabular.tabular_width.zero());
|
||||||
status.setOnOff(tabular.rotate);
|
status.setOnOff(tableIsRotated());
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Tabular::TABULAR_VALIGN_TOP:
|
case Tabular::TABULAR_VALIGN_TOP:
|
||||||
@ -4578,7 +4578,7 @@ bool InsetTabular::getStatus(Cursor & cur, FuncRequest const & cmd,
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case Tabular::UNSET_ROTATE_TABULAR:
|
case Tabular::UNSET_ROTATE_TABULAR:
|
||||||
status.setOnOff(!tabular.rotate);
|
status.setOnOff(!tableIsRotated());
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Tabular::TOGGLE_ROTATE_CELL:
|
case Tabular::TOGGLE_ROTATE_CELL:
|
||||||
@ -5196,6 +5196,14 @@ bool InsetTabular::oneCellHasRotationState(bool rotated,
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool InsetTabular::tableIsRotated() const
|
||||||
|
{
|
||||||
|
if (tabular.rotate != 0)
|
||||||
|
return true;
|
||||||
|
else
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
void InsetTabular::tabularFeatures(Cursor & cur,
|
void InsetTabular::tabularFeatures(Cursor & cur,
|
||||||
Tabular::Feature feature, string const & value)
|
Tabular::Feature feature, string const & value)
|
||||||
{
|
{
|
||||||
@ -5549,15 +5557,19 @@ void InsetTabular::tabularFeatures(Cursor & cur,
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case Tabular::SET_ROTATE_TABULAR:
|
case Tabular::SET_ROTATE_TABULAR:
|
||||||
tabular.rotate = true;
|
tabular.rotate = convert<int>(value);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Tabular::UNSET_ROTATE_TABULAR:
|
case Tabular::UNSET_ROTATE_TABULAR:
|
||||||
tabular.rotate = false;
|
tabular.rotate = 0;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Tabular::TOGGLE_ROTATE_TABULAR:
|
case Tabular::TOGGLE_ROTATE_TABULAR:
|
||||||
tabular.rotate = !tabular.rotate;
|
// when pressing the rotate button we default to 90° rotation
|
||||||
|
if (tableIsRotated())
|
||||||
|
tabular.rotate = 90;
|
||||||
|
else
|
||||||
|
tabular.rotate = 0;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Tabular::TABULAR_VALIGN_TOP:
|
case Tabular::TABULAR_VALIGN_TOP:
|
||||||
|
@ -702,7 +702,7 @@ public:
|
|||||||
///
|
///
|
||||||
bool use_booktabs;
|
bool use_booktabs;
|
||||||
///
|
///
|
||||||
bool rotate;
|
int rotate;
|
||||||
///
|
///
|
||||||
VAlignment tabular_valignment;
|
VAlignment tabular_valignment;
|
||||||
//
|
//
|
||||||
@ -979,6 +979,8 @@ private:
|
|||||||
row_type row_start, row_type row_end,
|
row_type row_start, row_type row_end,
|
||||||
col_type col_start, col_type col_end) const;
|
col_type col_start, col_type col_end) const;
|
||||||
///
|
///
|
||||||
|
bool tableIsRotated() const;
|
||||||
|
///
|
||||||
mutable idx_type first_visible_cell;
|
mutable idx_type first_visible_cell;
|
||||||
///
|
///
|
||||||
mutable int scx_;
|
mutable int scx_;
|
||||||
|
Loading…
Reference in New Issue
Block a user