summaryrefslogtreecommitdiffstats
path: root/kate/part/katelinerange.cpp
blob: 7500b4e8a5df8ce40cb39670b4c868da2f9adf9d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/* This file is part of the KDE libraries
   Copyright (C) 2002,2003 Hamish Rodda <rodda@kde.org>
   Copyright (C) 2003      Anakim Border <aborder@sources.sourceforge.net>

   This library is free software; you can redistribute it and/or
   modify it under the terms of the GNU Library General Public
   License version 2 as published by the Free Software Foundation.

   This library is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Library General Public License for more details.

   You should have received a copy of the GNU Library General Public License
   along with this library; see the file COPYING.LIB.  If not, write to
   the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
   Boston, MA 02110-1301, USA.
*/

#include "katelinerange.h"

KateLineRange::KateLineRange()
  : line(-1)
  , virtualLine(-1)
  , startCol(-1)
  , endCol(-1)
  , startX(-1)
  , endX(-1)
  , dirty(false)
  , viewLine(-1)
  , wrap(false)
  , startsInvisibleBlock(false)
  , shiftX(0)
{
}

KateLineRange::~KateLineRange ()
{
}

void KateLineRange::clear()
{
  line = -1;
  virtualLine = -1;
  startCol = -1;
  endCol = -1;
  startX = -1;
  shiftX = 0;
  endX = -1;
  viewLine = -1;
  wrap = false;
  startsInvisibleBlock = false;
}

bool operator> (const KateLineRange& r, const KateTextCursor& c)
{
  return r.line > c.line() || r.endCol > c.col();
}

bool operator>= (const KateLineRange& r, const KateTextCursor& c)
{
  return r.line > c.line() || r.endCol >= c.col();
}

bool operator< (const KateLineRange& r, const KateTextCursor& c)
{
  return r.line < c.line() || r.startCol < c.col();
}

bool operator<= (const KateLineRange& r, const KateTextCursor& c)
{
  return r.line < c.line() || r.startCol <= c.col();
}

// kate: space-indent on; indent-width 2; replace-tabs on;