mirror of
https://git.lyx.org/repos/lyx.git
synced 2025-01-13 20:09:59 +00:00
reverse test move operators out of struct
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@2257 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
9b87031073
commit
b10dd6dc0b
@ -1,3 +1,9 @@
|
||||
2001-07-16 Lars Gullik Bjønnes <larsbj@birdstep.com>
|
||||
|
||||
* math_cursor.C (operator==): moved ouf of struct
|
||||
(operator<): ditto
|
||||
(normalAnchor): reversed one test (but shouldn't it really be >= ?)
|
||||
|
||||
2001-07-12 André Pönitz <poenitz@htwm.de>
|
||||
|
||||
* math_cursor.[hC]: multicell selection (multicell pasete still defunct)
|
||||
|
@ -144,8 +144,8 @@ struct Selection
|
||||
std::vector<MathArray> data_;
|
||||
};
|
||||
|
||||
Selection theSelection;
|
||||
|
||||
Selection theSelection;
|
||||
|
||||
|
||||
bool IsMacro(short tok, int id)
|
||||
@ -161,9 +161,11 @@ bool IsMacro(short tok, int id)
|
||||
!(tok == LM_TK_SYM && id < 255);
|
||||
}
|
||||
|
||||
ostream & operator<<(ostream & os, MathCursorPos const & p)
|
||||
|
||||
std::ostream & operator<<(std::ostream & os, MathCursorPos const & p)
|
||||
{
|
||||
os << "(par: " << p.par_ << " idx: " << p.idx_ << " pos: " << p.pos_ << ")";
|
||||
os << "(par: " << p.par_ << " idx: " << p.idx_
|
||||
<< " pos: " << p.pos_ << ")";
|
||||
return os;
|
||||
}
|
||||
|
||||
@ -206,6 +208,7 @@ MathInset * MathCursor::parInset(int i) const
|
||||
return Cursor_[i].par_;
|
||||
}
|
||||
|
||||
|
||||
void MathCursor::dump(char const * what) const
|
||||
{
|
||||
return;
|
||||
@ -219,6 +222,7 @@ void MathCursor::dump(char const * what) const
|
||||
<< "\n";
|
||||
}
|
||||
|
||||
|
||||
void MathCursor::seldump(char const *) const
|
||||
{
|
||||
//lyxerr << "SEL: " << str << ": '" << theSelection << "'\n";
|
||||
@ -261,6 +265,7 @@ bool MathCursor::openable(MathInset * p, bool sel, bool useupdown) const
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
bool MathCursor::plainLeft()
|
||||
{
|
||||
return array().prev(cursor().pos_);
|
||||
@ -824,6 +829,7 @@ void MathCursor::SelCopy()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void MathCursor::SelCut()
|
||||
{
|
||||
seldump("SelCut");
|
||||
@ -852,6 +858,7 @@ void MathCursor::SelPaste()
|
||||
SelClear();
|
||||
}
|
||||
|
||||
|
||||
void MathCursor::SelHandle(bool sel)
|
||||
{
|
||||
if (sel && !selection)
|
||||
@ -878,7 +885,6 @@ void MathCursor::SelClear()
|
||||
}
|
||||
|
||||
|
||||
|
||||
void MathCursor::drawSelection(Painter & pain) const
|
||||
{
|
||||
if (!selection)
|
||||
@ -969,6 +975,7 @@ void MathCursor::handleAccent(string const & name, int code)
|
||||
push(p, true);
|
||||
}
|
||||
|
||||
|
||||
void MathCursor::handleDelim(int l, int r)
|
||||
{
|
||||
MathDelimInset * p = new MathDelimInset(l, r);
|
||||
@ -1060,6 +1067,7 @@ MathInset * MathCursor::enclosing(MathInsetTypes t, int & idx) const
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
void MathCursor::pullArg()
|
||||
{
|
||||
// pullArg
|
||||
@ -1127,6 +1135,7 @@ string MathCursorPos::readString()
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
MathInset * MathCursor::prevInset() const
|
||||
{
|
||||
normalize();
|
||||
@ -1198,21 +1207,25 @@ int MathCursor::xpos() const
|
||||
return xarray().pos2x(cursor().pos_);
|
||||
}
|
||||
|
||||
|
||||
void MathCursor::gotoX(int x)
|
||||
{
|
||||
cursor().pos_ = xarray().x2pos(x);
|
||||
}
|
||||
|
||||
|
||||
void MathCursor::idxNext()
|
||||
{
|
||||
cursor().par_->idxNext(cursor().idx_, cursor().pos_);
|
||||
}
|
||||
|
||||
|
||||
void MathCursor::idxPrev()
|
||||
{
|
||||
cursor().par_->idxPrev(cursor().idx_, cursor().pos_);
|
||||
}
|
||||
|
||||
|
||||
void MathCursor::splitCell()
|
||||
{
|
||||
if (cursor().idx_ == cursor().par_->nargs() - 1)
|
||||
@ -1225,6 +1238,7 @@ void MathCursor::splitCell()
|
||||
array().insert(0, ar);
|
||||
}
|
||||
|
||||
|
||||
void MathCursor::breakLine()
|
||||
{
|
||||
MathMatrixInset * p = static_cast<MathMatrixInset *>(formula()->par());
|
||||
@ -1251,6 +1265,7 @@ void MathCursor::breakLine()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
char MathCursor::valign() const
|
||||
{
|
||||
int idx;
|
||||
@ -1259,6 +1274,7 @@ char MathCursor::valign() const
|
||||
return p ? p->valign() : 0;
|
||||
}
|
||||
|
||||
|
||||
char MathCursor::halign() const
|
||||
{
|
||||
int idx;
|
||||
@ -1311,20 +1327,21 @@ MathCursorPos const & MathCursor::cursor() const
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
bool MathCursorPos::operator==(const MathCursorPos & it) const
|
||||
bool operator==(MathCursorPos const & ti, MathCursorPos const & it)
|
||||
{
|
||||
return par_ == it.par_ && idx_ == it.idx_ && pos_ == it.pos_;
|
||||
return ti.par_ == it.par_ && ti.idx_ == it.idx_ && ti.pos_ == it.pos_;
|
||||
}
|
||||
|
||||
bool MathCursorPos::operator<(const MathCursorPos & it) const
|
||||
|
||||
bool operator<(MathCursorPos const & ti, MathCursorPos const & it)
|
||||
{
|
||||
if (par_ != it.par_) {
|
||||
if (ti.par_ != it.par_) {
|
||||
lyxerr << "can't compare cursor and anchor in different insets\n";
|
||||
return true;
|
||||
}
|
||||
if (idx_ != it.idx_)
|
||||
return idx_ < it.idx_;
|
||||
return pos_ < it.pos_;
|
||||
if (ti.idx_ != it.idx_)
|
||||
return ti.idx_ < it.idx_;
|
||||
return ti.pos_ < it.pos_;
|
||||
}
|
||||
|
||||
|
||||
@ -1344,16 +1361,18 @@ MathXArray & MathCursorPos::xcell(int idx) const
|
||||
return par_->xcell(idx);
|
||||
}
|
||||
|
||||
|
||||
MathXArray & MathCursorPos::xcell() const
|
||||
{
|
||||
return par_->xcell(idx_);
|
||||
}
|
||||
|
||||
|
||||
MathCursorPos MathCursor::normalAnchor() const
|
||||
{
|
||||
// use Anchor on the same level as Cursor
|
||||
MathCursorPos normal = Anchor_[Cursor_.size() - 1];
|
||||
if (Cursor_.size() < Anchor_.size() && !(cursor() > normal)) {
|
||||
if (Cursor_.size() < Anchor_.size() && !(normal < cursor())) {
|
||||
// anchor is behind cursor -> move anchor behind the inset
|
||||
normal.cell().next(normal.pos_);
|
||||
}
|
||||
@ -1362,21 +1381,25 @@ MathCursorPos MathCursor::normalAnchor() const
|
||||
return normal;
|
||||
}
|
||||
|
||||
|
||||
bool MathCursorPos::idxUp()
|
||||
{
|
||||
return par_->idxUp(idx_, pos_);
|
||||
}
|
||||
|
||||
|
||||
bool MathCursorPos::idxDown()
|
||||
{
|
||||
return par_->idxDown(idx_, pos_);
|
||||
}
|
||||
|
||||
|
||||
bool MathCursorPos::idxLeft()
|
||||
{
|
||||
return par_->idxLeft(idx_, pos_);
|
||||
}
|
||||
|
||||
|
||||
bool MathCursorPos::idxRight()
|
||||
{
|
||||
return par_->idxRight(idx_, pos_);
|
||||
|
@ -39,10 +39,6 @@ struct MathCursorPos {
|
||||
int idx_;
|
||||
/// cell position
|
||||
int pos_;
|
||||
///
|
||||
bool operator==(const MathCursorPos &) const;
|
||||
///
|
||||
bool operator<(const MathCursorPos &) const;
|
||||
/// returns cell corresponding to this position
|
||||
MathArray & cell() const;
|
||||
/// returns cell corresponding to this position
|
||||
@ -61,6 +57,11 @@ struct MathCursorPos {
|
||||
bool idxDown();
|
||||
};
|
||||
|
||||
///
|
||||
bool operator==(MathCursorPos const &, MathCursorPos const &);
|
||||
///
|
||||
bool operator<(MathCursorPos const &, MathCursorPos const &);
|
||||
|
||||
|
||||
/// This is the external interface of Math's subkernel
|
||||
class MathCursor {
|
||||
|
Loading…
x
Reference in New Issue
Block a user