layout upon paste.
* insettext.[Ch]: add forceParagraphsToDefault method
* insettabular.C
(InsetTabular::doDispatch): use it for cell
* insetbox.C
(InsetBox::doDispatch): use it
* insetert.C
(InsetERT::doDispatch): use it
* insetcharstyle.C
(InsetCharStyle::doDispatch): use it
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13535
a592a061-630c-0410-9148-
cb99ea01b6c8
}
InsetCollapsable::doDispatch(cur, cmd);
break;
+ case LFUN_PASTE:
+ case LFUN_PASTESELECTION:
+ InsetCollapsable::doDispatch(cur, cmd);
+ if (!params_.inner_box)
+ forceParagraphsToDefault(cur);
+ break;
default:
InsetCollapsable::doDispatch(cur, cmd);
case LFUN_PASTE:
case LFUN_PASTESELECTION: {
InsetCollapsable::doDispatch(cur, cmd);
- BufferParams const & bp = cur.buffer().params();
- LyXLayout_ptr const layout =
- bp.getLyXTextClass().defaultLayout();
- ParagraphList::iterator const end = paragraphs().end();
- for (ParagraphList::iterator par = paragraphs().begin();
- par != end; ++par)
- par->layout(layout);
+ forceParagraphsToDefault(cur);
break;
}
default:
// Since we can only store plain text, we must reset all
// attributes.
+ forceParagraphsToDefault(cur);
// FIXME: Change only the pasted paragraphs
BufferParams const & bp = cur.buffer().params();
ParagraphList::iterator const end = paragraphs().end();
for (ParagraphList::iterator par = paragraphs().begin();
par != end; ++par) {
- par->layout(layout);
// in case par had a manual label
par->setBeginOfBody();
pos_type const siz = par->size();
break;
}
cell(cur.idx())->dispatch(cur, cmd);
+ // Reset pasted paragraphs:
+ if (tabular.getPWidth(cur.idx()).zero())
+ cell(cur.idx())->forceParagraphsToDefault(cur);
break;
case LFUN_EMPH:
}
+void InsetText::forceParagraphsToDefault(LCursor & cur)
+{
+ BufferParams const & bp = cur.buffer().params();
+ LyXLayout_ptr const layout =
+ bp.getLyXTextClass().defaultLayout();
+ ParagraphList::iterator const end = paragraphs().end();
+ for (ParagraphList::iterator par = paragraphs().begin();
+ par != end; ++par)
+ par->layout(layout);
+}
+
+
void InsetText::doDispatch(LCursor & cur, FuncRequest & cmd)
{
lyxerr[Debug::DEBUG] << BOOST_CURRENT_FUNCTION
bool & Wide() const { return wide_inset_; }
///
bool const Tall() const;
+ ///
+ void forceParagraphsToDefault(LCursor & cur);
protected:
///