X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FBuffer.h;h=8f4474d311d4fef7b3342cd8a15a8e2891488937;hb=9350076b3aa268919a4bf6e05c4a10caebabb913;hp=9adc7172c8eeb3dd7a218e2861a52e3df4b805b3;hpb=c30b0aac4bd5baabd430c3488aa97286a9ed5b41;p=features.git diff --git a/src/Buffer.h b/src/Buffer.h index 9adc7172c8..8f4474d311 100644 --- a/src/Buffer.h +++ b/src/Buffer.h @@ -171,7 +171,7 @@ public: /// Can this function be exectued? /// \return true if we made a decision - bool getStatus(FuncRequest const & cmd, FuncStatus & flag); + bool getStatus(FuncRequest const & cmd, FuncStatus & flag) const; /// DocIterator getParFromID(int id) const; @@ -221,6 +221,11 @@ public: int readHeader(Lexer & lex); double fontScalingFactor() const; + /// check for active synctex support: + /// - either the document has synchronize output enabled or + /// - there is a converter to dvi or pdf defined with synctex command line argument + /// this is the "expert mode", false positives are possible + bool isSyncTeXenabled() const; private: /// @@ -521,8 +526,8 @@ public: void invalidateCiteLabels() const; /// bool citeLabelsValid() const; - /// - void getLabelList(std::vector &) const; + /// two strings: plain label name and label as gui string + void getLabelList(std::vector> &) const; /// This removes the .aux and .bbl files from the temp dir. void removeBiblioTempFiles() const; @@ -661,6 +666,8 @@ public: void setBusy(bool on) const; /// Update window titles of all users. void updateTitles() const; + /// Schedule redraw of work areas + void scheduleRedrawWorkAreas() const; /// Reset autosave timers for all users. void resetAutosaveTimers() const; /// @@ -728,13 +735,17 @@ public: /// Updates screen labels and some other information associated with /// insets and paragraphs. Actually, it's more like a general "recurse /// through the Buffer" routine, that visits all the insets and paragraphs. - void updateBuffer() const { updateBuffer(UpdateMaster, InternalUpdate); } + void updateBuffer() const; /// \param scope: whether to start with the master document or just /// do this one. /// \param output: whether we are preparing for output. void updateBuffer(UpdateScope scope, UpdateType utype) const; /// void updateBuffer(ParIterator & parit, UpdateType utype, bool const deleted = false) const; + /// Forces an updateBuffer() call + void forceUpdate() const; + /// Do we need to call updateBuffer()? + bool needUpdate() const; /// Spellcheck starting from \p from. /// \p from initial position, will then points to the next misspelled @@ -744,6 +755,8 @@ public: /// \return progress if a new word was found. int spellCheck(DocIterator & from, DocIterator & to, WordLangTuple & word_lang, docstring_list & suggestions) const; + /// Marks the whole buffer to be checked (again) + void requestSpellcheck(); /// void checkChildBuffers(); /// @@ -771,13 +784,17 @@ public: int wordCount() const; int charCount(bool with_blanks) const; - /// FIXME: dummy function for now + /// bool areChangesPresent() const; /// void registerBibfiles(docstring_list const & bf) const; /// support::FileName getBibfilePath(docstring const & bibid) const; + /// Return the list with all bibfiles in use (including bibfiles + /// of loaded child documents). + docstring_list const & + getBibfiles(UpdateScope scope = UpdateMaster) const; /// routines for dealing with possible self-inclusion void pushIncludedBuffer(Buffer const * buf) const; @@ -801,10 +818,6 @@ private: /// last time we loaded the cache. Note that this does NOT update the /// cached information. void checkIfBibInfoCacheIsValid() const; - /// Return the list with all bibfiles in use (including bibfiles - /// of loaded child documents). - docstring_list const & - getBibfiles(UpdateScope scope = UpdateMaster) const; /// void collectChildren(ListOfBuffers & children, bool grand_children) const;