From: Richard Kimberly Heck Date: Mon, 5 Aug 2024 22:11:24 +0000 (-0400) Subject: Use the old-style sorts of label strings in the TOC. X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=91b085d5ad52a36205a6d1301ed5f3d0ca1c84f6;p=lyx.git Use the old-style sorts of label strings in the TOC. There are several reasons to do it this way, among which is odd behavior of the TOC filter if we put anything else there. This also allows for filtering of the references themsevles in a natural way. The change, I think, was really an unintended consequence of other changes connected to showing formatted references in the work area. (cherry picked from commit 1de4645286e5e51d2e5f6084ee53f3fcb463475d) --- diff --git a/src/insets/InsetRef.cpp b/src/insets/InsetRef.cpp index 6021a239d2..4565128e0c 100644 --- a/src/insets/InsetRef.cpp +++ b/src/insets/InsetRef.cpp @@ -539,11 +539,14 @@ void InsetRef::updateBuffer(ParIterator const & it, UpdateType, bool const /*del // put cross-reference value into tooltip tooltip_ = displayString(ref, cmd); } - + toc_string_ = label; + + // Note: This could be changed later, in addToToc, if we are using + // fomatted references in the work area. screen_label_ = label; - // If use_formatted_ref is active, this will be overwritten in addToToc. - // (We can't do it now because it might be a forward-reference - // and so the reference might not be in the label cache yet. + // This also can be overwritten in addToToc. (We can't do it now + // because it might be a forward-reference and so the reference might + // not be in the label cache yet.) broken_ = false; setBroken(broken_); } @@ -661,7 +664,7 @@ docstring InsetRef::getTOCString() const broken_ = !buffer().activeLabel(label) && active_; else broken_ = active_; - return tooltip_.empty() ? screenLabel() : tooltip_; + return (broken_ ? _("BROKEN: ") : docstring()) + toc_string_; } } // namespace lyx diff --git a/src/insets/InsetRef.h b/src/insets/InsetRef.h index 97e64a69e2..52c8de79e2 100644 --- a/src/insets/InsetRef.h +++ b/src/insets/InsetRef.h @@ -127,6 +127,8 @@ private: /// mutable docstring screen_label_; /// + mutable docstring toc_string_; + /// mutable bool broken_; /// mutable bool active_; diff --git a/status.24x b/status.24x index 9cf76feed5..57557afbee 100644 --- a/status.24x +++ b/status.24x @@ -83,6 +83,9 @@ What's new - Fix ghost image on Windows with system colors (bug 13084). +- Restore old display of cross-references in the outliner. The change led to + odd behavior on filtering. + * INTERNALS