[EMAIL PROTECTED] wrote:
> Author: younes
> Date: Thu Oct 18 17:29:51 2007
> New Revision: 21033
>
> URL: http://www.lyx.org/trac/changeset/21033
> Log:
> Reduce header dependencies in Paragraph.h
> - Move Changes.h out of Paragraph.h
> - pimpl the inset list.
==============================================================================
> --- lyx-devel/trunk/src/InsetList.cpp (original) +++
> lyx-devel/trunk/src/InsetList.cpp Thu Oct 18 17:29:51 2007 @@ -138,4
> +138,12 @@
> }
>
>
> +void InsetList::clone()
> +{
> + List::iterator it = list_.begin();
> + List::iterator end = list_.end();
> + for (; it != end; ++it)
> + it->inset = it->inset->clone();
> +}
> +
> } // namespace lyx
==============================================================================
> --- lyx-devel/trunk/src/Paragraph.cpp (original) +++
> lyx-devel/trunk/src/Paragraph.cpp Thu Oct 18 17:29:51 2007 @@ -21,10
> @@ -277,6 +282,8 @@
> inset_owner = p.inset_owner;
> fontlist = p.fontlist;
> id_ = paragraph_id++;
> + insetlist_ = p.insetlist_;
> + insetlist_.clone();
> }
This is a very strange "clone". Why aren't you writing it:
class InsetList {
static InsetList clone(InsetList & rhs)
{
InsetList lhs = rhs;
List::iterator it = lhs.begin();
List::iterator const end = lhs.end();
for (; it != end; ++it)
{
// Indeed, I think Inset::clone should be similar.
it->inset = it->inset->clone();
}
return lhs;
}
};
?
Angus