commit f1a388584fb2c043d17127d7db49c36cb8427cfa
Author: Uwe Stöhr <[email protected]>
Date:   Tue Jan 19 22:35:24 2016 +0100

    Revert "Fix the display of column spacing in AMS environments"
    
    I have no clue why this was automatically committed, I just applied the 
path, nothing more.
    
    This reverts commit bb5470b5d1ec1b2f7394164686d6035a0c4bce0f.
    
    # Conflicts:
    #   src/mathed/InsetMathGrid.cpp
    #   src/mathed/InsetMathSplit.cpp

diff --git a/src/mathed/InsetMathGrid.cpp b/src/mathed/InsetMathGrid.cpp
index 4e38833..0ea62cf 100644
--- a/src/mathed/InsetMathGrid.cpp
+++ b/src/mathed/InsetMathGrid.cpp
@@ -485,9 +485,9 @@ void InsetMathGrid::metrics(MetricsInfo & mi, Dimension & 
dim) const
        for (col_type col = 1; col <= ncols(); ++col) {
                colinfo_[col].offset_ =
                        colinfo_[col - 1].offset_ +
-                       colinfo_[col - 1].width_ +
-                       displayColSpace(col - 1) +
-                       colsep() +
+                       colinfo_[col - 1].width_ +
+                       displayColSpace(col - 1) +
+                       colsep() +
                        colinfo_[col].lines_ * vlinesep();
        }
 
@@ -508,7 +508,7 @@ void InsetMathGrid::metrics(MetricsInfo & mi, Dimension & 
dim) const
                        int const nextoffset =
                                colinfo_[first].offset_ +
                                wid +
-                               displayColSpace(last) +
+                               colinfo_[last].skip_ +
                                colsep() +
                                colinfo_[last+1].lines_ * vlinesep();
                        int const dx = nextoffset - colinfo_[last+1].offset_;
@@ -741,7 +741,7 @@ void InsetMathGrid::metricsT(TextMetricsInfo const & mi, 
Dimension & dim) const
                colinfo_[col].offset_ =
                        colinfo_[col - 1].offset_ +
                        colinfo_[col - 1].width_ +
-                       displayColSpace(col - 1) +
+                       colinfo_[col - 1].skip_ +
                        1 ; //colsep() +
                        //colinfo_[col].lines_ * vlinesep();
        }
@@ -953,7 +953,7 @@ int InsetMathGrid::cellWidth(idx_type idx) const
                col_type c2 = c1 + ncellcols(idx);
                return colinfo_[c2].offset_
                        - colinfo_[c1].offset_
-                       - displayColSpace(c2)
+                       - colinfo_[c2].skip_
                        - colsep()
                        - colinfo_[c2].lines_ * vlinesep();
        }
@@ -1378,11 +1378,6 @@ char InsetMathGrid::displayColAlign(idx_type idx) const
 }
 
 
-int InsetMathGrid::displayColSpace(col_type col) const
-{
-       return colinfo_[col].skip_;
-}
-
 void InsetMathGrid::doDispatch(Cursor & cur, FuncRequest & cmd)
 {
        //lyxerr << "*** InsetMathGrid: request: " << cmd << endl;
@@ -1867,32 +1862,5 @@ char InsetMathGrid::colAlign(HullType type, col_type col)
 }
 
 
-//static
-int InsetMathGrid::colSpace(HullType type, col_type col)
-{
-       int alignInterSpace;
-       switch (type) {
-       case hullEqnArray:
-               return 5;
-       
-       case hullAlign:
-               alignInterSpace = 20;
-               break;
-       case hullAlignAt:
-               alignInterSpace = 0;
-               break;
-       case hullXAlignAt:
-               alignInterSpace = 40;
-               break;
-       case hullXXAlignAt:
-       case hullFlAlign:
-               alignInterSpace = 60;
-               break;
-       default:
-               return 0;
-       }
-       return (col % 2) ? alignInterSpace : 0;
-}
-
 
 } // namespace lyx
diff --git a/src/mathed/InsetMathGrid.h b/src/mathed/InsetMathGrid.h
index e994310..6199b7d 100644
--- a/src/mathed/InsetMathGrid.h
+++ b/src/mathed/InsetMathGrid.h
@@ -261,16 +261,8 @@ protected:
        /// Column alignment for display of cell \p idx.
        /// Must not be written to file!
        virtual char displayColAlign(idx_type idx) const;
-       /// Column spacing for display of column \p col.
-       /// Must not be written to file!
-       virtual int displayColSpace(col_type col) const;
-
-       // The following two functions are used in InsetMathHull and
-       // InsetMathSplit.
        /// The value of a fixed col align for a certain hull type 
        static char colAlign(HullType type, col_type col);
-       /// The value of a fixed col spacing for a certain hull type
-       static int colSpace(HullType type, col_type col);
 
        /// row info.
        /// rowinfo_[nrows()] is a dummy row used only for hlines.
diff --git a/src/mathed/InsetMathHull.cpp b/src/mathed/InsetMathHull.cpp
index b6cf474..cce029f 100644
--- a/src/mathed/InsetMathHull.cpp
+++ b/src/mathed/InsetMathHull.cpp
@@ -382,13 +382,6 @@ char InsetMathHull::displayColAlign(idx_type idx) const
 }
 
 
-int InsetMathHull::displayColSpace(col_type col) const
-{
-       return colSpace(type_, col);
-}
-
-
-//FIXME: This has probably no effect and can be removed.
 int InsetMathHull::defaultColSpace(col_type col)
 {
        if (type_ == hullAlign || type_ == hullAlignAt)
diff --git a/src/mathed/InsetMathHull.h b/src/mathed/InsetMathHull.h
index 084fff6..9598ad4 100644
--- a/src/mathed/InsetMathHull.h
+++ b/src/mathed/InsetMathHull.h
@@ -111,8 +111,6 @@ public:
        ///
        int defaultColSpace(col_type col);
        ///
-       int displayColSpace(col_type col) const;
-       ///
        char defaultColAlign(col_type col);
        ///
        char displayColAlign(idx_type idx) const;
diff --git a/src/mathed/InsetMathSplit.cpp b/src/mathed/InsetMathSplit.cpp
index 37741de..e69de29 100644
--- a/src/mathed/InsetMathSplit.cpp
+++ b/src/mathed/InsetMathSplit.cpp
@@ -1,206 +0,0 @@
-/**
- * \file InsetMathSplit.cpp
- * This file is part of LyX, the document processor.
- * Licence details can be found in the file COPYING.
- *
- * \author André Pönitz
- *
- * Full author contact details are available in file CREDITS.
- */
-
-#include <config.h>
-
-#include "InsetMathSplit.h"
-
-#include "MathData.h"
-#include "MathStream.h"
-#include "MathStream.h"
-
-#include "FuncRequest.h"
-#include "FuncStatus.h"
-#include "support/gettext.h"
-#include "LaTeXFeatures.h"
-
-#include "support/lstrings.h"
-
-#include <ostream>
-
-using namespace std;
-
-namespace lyx {
-
-using support::bformat;
-
-
-// FIXME: handle numbers in gui, currently they are only read and written
-
-InsetMathSplit::InsetMathSplit(Buffer * buf, docstring const & name,
-       char valign, bool numbered)
-       : InsetMathGrid(buf, 1, 1, valign, docstring()), name_(name),
-         numbered_(numbered)
-{
-}
-
-
-Inset * InsetMathSplit::clone() const
-{
-       return new InsetMathSplit(*this);
-}
-
-
-//FIXME: This has probably no effect and can be removed.
-char InsetMathSplit::defaultColAlign(col_type col)
-{
-       if (name_ == "gathered")
-               return 'c';
-       if (name_ == "lgathered")
-               return 'l';
-       if (name_ == "rgathered")
-               return 'r';
-       if (name_ == "split"
-           || name_ == "aligned"
-           || name_ == "align"
-           || name_ == "alignedat")
-               return colAlign(hullAlign, col);
-       return 'l';
-}
-
-
-char InsetMathSplit::displayColAlign(idx_type idx) const
-{
-       if (name_ == "gathered")
-               return 'c';
-       if (name_ == "lgathered")
-               return 'l';
-       if (name_ == "rgathered")
-               return 'r';
-       if (name_ == "split"
-           || name_ == "aligned"
-           || name_ == "align"
-           || name_ == "alignedat")
-               return colAlign(hullAlign, col(idx));
-       return InsetMathGrid::displayColAlign(idx);
-}
-
-
-int InsetMathSplit::displayColSpace(col_type col) const
-{
-       if (name_ == "split" || name_ == "aligned" || name_ == "align")
-               return colSpace(hullAlign, col);
-       if (name_ == "alignedat")
-               return colSpace(hullAlignAt, col);
-       return 0;
-}
-
-
-
-void InsetMathSplit::draw(PainterInfo & pi, int x, int y) const
-{
-       InsetMathGrid::draw(pi, x, y);
-       setPosCache(pi, x, y);
-}
-
-
-bool InsetMathSplit::getStatus(Cursor & cur, FuncRequest const & cmd,
-               FuncStatus & flag) const
-{
-       switch (cmd.action()) {
-       case LFUN_INSET_MODIFY: {
-               istringstream is(to_utf8(cmd.argument()));
-               string s;
-               is >> s;
-               if (s != "tabular")
-                       break;
-               is >> s;
-               if (s == "add-vline-left" || s == "add-vline-right") {
-                       flag.message(bformat(
-                               from_utf8(N_("Can't add vertical grid lines in 
'%1$s'")),       name_));
-                       flag.setEnabled(false);
-                       return true;
-               }
-               if (s == "align-left" || s == "align-center" || s == 
"align-right") {
-                       flag.setEnabled(false);
-                       return true;
-               }
-               break;
-       }
-       default:
-               break;
-       }
-       return InsetMathGrid::getStatus(cur, cmd, flag);
-}
-
-
-void InsetMathSplit::write(WriteStream & ws) const
-{
-       MathEnsurer ensurer(ws);
-       if (ws.fragile())
-               ws << "\\protect";
-       docstring suffix;
-       if (!numbered_ && name_ == "align")
-               suffix = from_ascii("*");
-       ws << "\\begin{" << name_ << suffix << '}';
-       bool open = ws.startOuterRow();
-       if (name_ != "split" && name_ != "align" && verticalAlignment() != 'c')
-               ws << '[' << verticalAlignment() << ']';
-       if (name_ == "alignedat")
-               ws << '{' << static_cast<unsigned int>((ncols() + 1)/2) << '}';
-       InsetMathGrid::write(ws);
-       if (ws.fragile())
-               ws << "\\protect";
-       ws << "\\end{" << name_ << suffix << "}\n";
-       if (open)
-               ws.startOuterRow();
-}
-
-
-void InsetMathSplit::infoize(odocstream & os) const
-{
-       docstring name = name_;
-       name[0] = support::uppercase(name[0]);
-       if (name_ == "align" && !numbered_)
-               os << name << "* ";
-       else
-               os << name << ' ';
-}
-
-
-void InsetMathSplit::mathmlize(MathStream & ms) const
-{
-       // split, gathered, aligned, alignedat
-       // At the moment, those seem to display just fine without any
-       // special treatment.
-       // FIXME
-       // lgathered and rgathered could use the proper alignment, but
-       // it's not clear how to do that without copying a lot of code.
-       // One idea would be to wrap the table in an <mrow>, and set the
-       // alignment there via CSS.
-       // FIXME how to handle numbered and unnumbered align?
-       InsetMathGrid::mathmlize(ms);
-}
-
-
-void InsetMathSplit::htmlize(HtmlStream & ms) const
-{
-       // split, gathered, aligned, alignedat
-       // At the moment, those seem to display just fine without any
-       // special treatment.
-       // FIXME
-       // lgathered and rgathered could use the proper alignment.
-       // FIXME how to handle numbered and unnumbered align?
-       InsetMathGrid::htmlize(ms);
-}
-
-
-void InsetMathSplit::validate(LaTeXFeatures & features) const
-{
-       if (name_ == "split" || name_ == "gathered" || name_ == "aligned" ||
-           name_ == "alignedat" || name_ == "align")
-               features.require("amsmath");
-       else if (name_ == "lgathered" || name_ == "rgathered")
-               features.require("mathtools");
-       InsetMathGrid::validate(features);
-}
-
-
-} // namespace lyx
diff --git a/src/mathed/InsetMathSplit.h b/src/mathed/InsetMathSplit.h
index 0f47e38..6136b6f 100644
--- a/src/mathed/InsetMathSplit.h
+++ b/src/mathed/InsetMathSplit.h
@@ -41,8 +41,6 @@ public:
        ///
        int defaultColSpace(col_type) { return 0; }
        ///
-       int displayColSpace(col_type col) const;
-       ///
        char defaultColAlign(col_type);
        ///
        char displayColAlign(idx_type idx) const;

Reply via email to