X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Flyx_cb.C;h=213ff3967687d8eb375f36ec1a2f8c5236375742;hb=86e0dfa3e11957318ca4f3f549248326aa806eb4;hp=fda8f46af66635cedf770366c5e2cb2f5d92e9ee;hpb=2f1d525ee1d41bc20adbfe766a9c5d90469aa4b2;p=lyx.git diff --git a/src/lyx_cb.C b/src/lyx_cb.C index fda8f46af6..213ff39676 100644 --- a/src/lyx_cb.C +++ b/src/lyx_cb.C @@ -19,6 +19,7 @@ #include "buffer.h" #include "bufferlist.h" #include "BufferView.h" +#include "cursor.h" #include "debug.h" #include "gettext.h" #include "lastfiles.h" @@ -43,6 +44,8 @@ #include "support/path_defines.h" #include "support/systemcall.h" +#include + #include #include @@ -70,7 +73,8 @@ using lyx::support::user_lyxdir; namespace os = lyx::support::os; -using std::auto_ptr; +using boost::shared_ptr; + using std::back_inserter; using std::copy; using std::endl; @@ -220,8 +224,9 @@ public: AutoSaveBuffer(BufferView & bv, string const & fname) : bv_(bv), fname_(fname) {} /// - virtual auto_ptr clone() const { - return auto_ptr(new AutoSaveBuffer(*this)); + virtual shared_ptr clone() const + { + return shared_ptr(new AutoSaveBuffer(*this)); } /// int start(); @@ -237,7 +242,7 @@ private: int AutoSaveBuffer::start() { command_ = bformat(_("Auto-saving %1$s"), fname_); - return runNonBlocking(); + return run(DontWait); } @@ -358,11 +363,11 @@ void InsertAsciiFile(BufferView * bv, string const & f, bool asParagraph) // clear the selection if (bv->text() == bv->getLyXText()) - bv->text()->clearSelection(); + bv->cursor().clearSelection(); if (asParagraph) - bv->getLyXText()->insertStringAsParagraphs(tmpstr); + bv->getLyXText()->insertStringAsParagraphs(bv->cursor(), tmpstr); else - bv->getLyXText()->insertStringAsLines(tmpstr); + bv->getLyXText()->insertStringAsLines(bv->cursor(), tmpstr); bv->update(); } @@ -431,49 +436,6 @@ string getContentsOfAsciiFile(BufferView * bv, string const & f, bool asParagrap } -string const getPossibleLabel(BufferView const & bv) -{ - ParagraphList::iterator pit = bv.getLyXText()->cursorPar(); - ParagraphList & plist = bv.getLyXText()->paragraphs(); - - LyXLayout_ptr layout = pit->layout(); - - if (layout->latextype == LATEX_PARAGRAPH && pit != plist.begin()) { - ParagraphList::iterator pit2 = boost::prior(pit); - - LyXLayout_ptr const & layout2 = pit2->layout(); - - if (layout2->latextype != LATEX_PARAGRAPH) { - pit = pit2; - layout = layout2; - } - } - - string text = layout->latexname().substr(0, 3); - if (layout->latexname() == "theorem") - text = "thm"; // Create a correct prefix for prettyref - - text += ':'; - if (layout->latextype == LATEX_PARAGRAPH || - lyxrc.label_init_length < 0) - text.erase(); - - string par_text = pit->asString(*bv.buffer(), false); - for (int i = 0; i < lyxrc.label_init_length; ++i) { - if (par_text.empty()) - break; - string head; - par_text = split(par_text, head, ' '); - // Is it legal to use spaces in labels ? - if (i > 0) - text += '-'; - text += head; - } - - return text; -} - - // This function runs "configure" and then rereads lyx.defaults to // reconfigure the automatic settings. void Reconfigure(BufferView * bv)