#pragma implementation
#endif
+#include <algorithm>
+
#include "FormMathsMatrix.h"
#include "form_maths_matrix.h"
#include "Dialogs.h"
#include "Lsstream.h"
#include "lyxfunc.h"
#include "support/LAssert.h"
+#include "support/lyxalgo.h" // lyx::count
#ifndef CXX_GLOBAL_CSTD
using std::strlen;
int const ny = int(fl_get_slider_value(dialog_->slider_rows) + 0.5);
ostringstream ost;
- ost << nx << ' ' << ny << ' ' << c << sh;
+ ost << nx << ' ' << ny << ' ' << c << ' ' << sh;
lv_->getLyXFunc()->dispatch(LFUN_INSERT_MATRIX, ost.str().c_str());
}
int FormMathsMatrix::AlignFilter(char const * cur, int c)
{
+ size_t len = strlen(cur);
+
int const n = int(fl_get_slider_value(dialog_->slider_columns) + 0.5) -
- int(strlen(cur));
+ int(len) +
+ int(lyx::count(cur, cur + len, '|'));
if (n < 0)
return FL_INVALID;
- if (c == 'c' || c == 'l' || c == 'r')
+ if (c == 'c' || c == 'l' || c == 'r' || c == '|')
return FL_VALID;
return FL_INVALID;