19 #ifndef KATESUPERCURSOR_H
20 #define KATESUPERCURSOR_H
22 #include "katecursor.h"
56 KateSuperCursor(KateDocument* doc,
bool privateC,
int lineNum = 0,
int col = 0, TQObject* parent = 0L,
const char* name = 0L);
62 void position(uint *line, uint *col)
const;
63 bool setPosition(uint line, uint col);
64 bool insertText(
const TQString& text);
65 bool removeText(uint numberOfCharacters);
66 TQChar currentChar()
const;
97 virtual void setLine(
int lineNum);
98 virtual void setCol(
int colNum);
100 virtual void setPos(
int lineNum,
int colNum);
146 void editTextInserted ( uint line, uint col, uint len);
147 void editTextRemoved ( uint line, uint col, uint len);
149 void editLineWrapped ( uint line, uint col,
bool newLine =
true );
150 void editLineUnWrapped ( uint line, uint col,
bool removeLine =
true, uint length = 0 );
152 void editLineInserted ( uint line );
153 void editLineRemoved ( uint line );
158 bool m_moveOnInsert : 1;
159 bool m_lineRemoved : 1;
160 bool m_privateCursor : 1;
170 friend class KateSuperRangeList;
189 KateSuperRange(KateDocument* doc,
const KateRange& range, TQObject* parent = 0L,
const char* name = 0L);
200 void allowZeroLength(
bool yes=
true){m_allowZeroLength=yes;}
316 void slotEvaluateChanged();
317 void slotEvaluateUnChanged();
321 void evaluateEliminated();
322 void evaluatePositionChanged();
329 bool m_deleteCursors;
330 bool m_allowZeroLength;
333 class KateSuperCursorList :
public TQPtrList<KateSuperCursor>
336 virtual int compareItems(TQPtrCollection::Item item1, TQPtrCollection::Item item2);
339 class KateSuperRangeList :
public TQObject,
public TQPtrList<KateSuperRange>
347 KateSuperRangeList(
bool autoManage =
true, TQObject* parent = 0L,
const char* name = 0L);
358 KateSuperRangeList(
const TQPtrList<KateSuperRange>& rangeList, TQObject* parent = 0L,
const char* name = 0L);
360 virtual ~KateSuperRangeList() {}
366 void appendList(
const TQPtrList<KateSuperRange>& rangeList);
377 virtual void clear();
383 bool autoManage()
const;
388 void setAutoManage(
bool autoManage);
394 TQPtrList<KateSuperRange> rangesIncluding(
const KateTextCursor& cursor);
395 TQPtrList<KateSuperRange> rangesIncluding(uint line);
442 virtual int compareItems(TQPtrCollection::Item item1, TQPtrCollection::Item item2);
447 virtual TQPtrCollection::Item newItem(TQPtrCollection::Item d);
450 void slotEliminated();
451 void slotDeleted(TQObject* range);
457 KateSuperCursorList m_columnBoundaries;
458 bool m_trackingBoundaries;