Another trivial fix:

Log:
fix change tracking in replaceAll()

Modified:
   lyx-devel/branches/personal/gerz/change-tracking/src/lyxfind.C


Michael



Index: lyxfind.C
===================================================================
--- lyxfind.C	(Revision 13990)
+++ lyxfind.C	(Arbeitskopie)
@@ -128,8 +128,8 @@
 bool findChange(DocIterator & cur)
 {
 	for (; cur; cur.forwardPos())
-		if (cur.inTexted() && cur.paragraph().lookupChange(cur.pos()).type
-		    != Change::UNCHANGED)
+		if (cur.inTexted() &&
+		    cur.paragraph().lookupChange(cur.pos()).type != Change::UNCHANGED)
 			return true;
 	return false;
 }
@@ -185,8 +185,11 @@
 		lyx::pos_type pos = cur.pos();
 		LyXFont const font
 			= cur.paragraph().getFontSettings(buf.params(), pos);
-		int striked = ssize - cur.paragraph().erase(pos, pos + ssize);
-		cur.paragraph().insert(pos, replacestr, font);
+		int striked = ssize - cur.paragraph().erase(pos, pos + ssize,
+							    buf.params().tracking_changes);
+		cur.paragraph().insert(pos, replacestr, font,
+		                       Change(buf.params().tracking_changes ?
+		                              Change::INSERTED : Change::UNCHANGED));
 		for (int i = 0; i < rsize + striked; ++i)
 			cur.forwardChar();
 		++num;

Reply via email to