KompareDiff2
8#ifndef KOMPAREDIFF2_DIFFERENCE_H
9#define KOMPAREDIFF2_DIFFERENCE_H
14#include "komparediff2_export.h"
38 m_markerList(markerList)
44 m_string(ds.m_string),
45 m_conflict(ds.m_conflict),
47 m_markerList(ds.m_markerList)
53 qDeleteAll(m_markerList);
61 const QString& conflictString()
const
69 void setString(
const QString&
string)
74 void setConflictString(
const QString& conflict)
76 m_conflict = conflict;
78 void setMarkerList(
const MarkerList& markerList)
80 m_markerList = markerList;
82 void prepend(
Marker* marker)
88 if (m_hash != ks.m_hash)
90 return m_string == ks.m_string;
96 unsigned short const* str =
reinterpret_cast<unsigned short const*
>(m_string.unicode());
97 const unsigned int len = m_string.
length();
101 for (
unsigned int i = 0; i < len; ++i)
103 m_hash ^= (m_hash << 5) + str[i] + (m_hash >> 2);
127 enum Type { Change, Insert, Delete, Unchanged };
130 Difference(
int sourceLineNo,
int destinationLineNo,
int type = Difference::Unchanged);
134 int type()
const {
return m_type; };
136 int sourceLineNumber()
const {
return m_sourceLineNo; }
137 int destinationLineNumber()
const {
return m_destinationLineNo; }
139 int sourceLineCount()
const;
140 int destinationLineCount()
const;
142 int sourceLineEnd()
const;
143 int destinationLineEnd()
const;
148 int trackingDestinationLineEnd()
const;
149 void setTrackingDestinationLineNumber(
int i) { m_trackingDestinationLineNo = i; }
151 DifferenceString* sourceLineAt(
int i)
const {
return m_sourceLines[i]; }
152 DifferenceString* destinationLineAt(
int i)
const {
return m_destinationLines[i]; }
154 const DifferenceStringList sourceLines()
const {
return m_sourceLines; }
155 const DifferenceStringList destinationLines()
const {
return m_destinationLines; }
157 bool hasConflict()
const
161 void setConflict(
bool conflicts)
163 m_conflicts = conflicts;
166 bool isUnsaved()
const
170 void setUnsaved(
bool unsaved)
175 void apply(
bool apply);
177 void applyQuietly(
bool apply);
178 bool applied()
const {
return m_applied; }
180 void setType(
int type) { m_type =
type; }
182 void addSourceLine(
QString line);
183 void addDestinationLine(
QString line);
186 void determineInlineDifferences();
188 QString recreateDifference()
const;
191 void differenceApplied(Difference*);
197 int m_destinationLineNo;
198 int m_trackingDestinationLineNo;
200 DifferenceStringList m_sourceLines;
201 DifferenceStringList m_destinationLines;
int trackingDestinationLineNumber() const
Destination line number that tracks applying/unapplying of other differences Essentially a line numbe...
Type type(const QSqlDatabase &db)
void prepend(parameter_type value)
qsizetype length() const const
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Sat Apr 27 2024 22:10:24 by
doxygen 1.10.0 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.