<< ", author: " << change.author
<< ", time: " << long(change.changetime)
<< ") in range (" << start << ", " << end << ")");
+ if (!isChanged())
+ is_update_required_ = true;
}
Range const newRange(start, end);
}
+bool Changes::isChanged() const
+{
+ ChangeTable::const_iterator it = table_.begin();
+ ChangeTable::const_iterator const itend = table_.end();
+ for (; it != itend; ++it) {
+ if (it->change.changed())
+ return true;
+ }
+ return false;
+}
+
+
void Changes::merge()
{
+ bool merged = false;
ChangeTable::iterator it = table_.begin();
while (it != table_.end()) {
<< it->range.start);
table_.erase(it);
+ merged = true;
// start again
it = table_.begin();
continue;
(it + 1)->change.changetime = max(it->change.changetime,
(it + 1)->change.changetime);
table_.erase(it);
+ merged = true;
// start again
it = table_.begin();
continue;
++it;
}
+ if (merged && !isChanged())
+ is_update_required_ = true;
}
}
}
+
+void Changes::updateBuffer(Buffer const & buf)
+{
+ is_update_required_ = false;
+ if (!buf.areChangesPresent() && isChanged())
+ buf.setChangesPresent(true);
+}
+
+
+
+
} // namespace lyx