]> git.lyx.org Git - lyx.git/blobdiff - src/insets/InsetHyperlink.cpp
Circumvent odd stmary font metrics (part of #9990).
[lyx.git] / src / insets / InsetHyperlink.cpp
index 37692af97a634c65244245908861036357a14206..54f1f2c765338b9b4c5b97d45e11a73a83da7f0e 100644 (file)
@@ -56,7 +56,7 @@ ParamInfo const & InsetHyperlink::findInfo(string const & /* cmdName */)
 
 docstring InsetHyperlink::screenLabel() const
 {
-       docstring const temp = from_ascii("Hyperlink: ");
+       docstring const temp = _("Hyperlink: ");
 
        docstring url;
 
@@ -66,8 +66,9 @@ docstring InsetHyperlink::screenLabel() const
 
        // elide if long
        if (url.length() > 30) {
-               url = url.substr(0, 10) + "..."
-                       + url.substr(url.length() - 17, url.length());
+               docstring end = url.substr(url.length() - 17, url.length());
+               support::truncateWithEllipsis(url, 13);
+               url += end;
        }
        return temp + url;
 }
@@ -191,7 +192,7 @@ void InsetHyperlink::latex(otexstream & os,
                pair<docstring, docstring> name_latexed =
                        runparams.encoding->latexString(name, runparams.dryrun);
                name = name_latexed.first;
-               if (!name_latexed.second.empty()) {
+               if (!name_latexed.second.empty() && !runparams.silent) {
                        // issue a warning about omitted characters
                        // FIXME: should be passed to the error dialog
                        frontend::Alert::warning(_("Uncodable characters"),
@@ -209,7 +210,8 @@ void InsetHyperlink::latex(otexstream & os,
 }
 
 
-int InsetHyperlink::plaintext(odocstream & os, OutputParams const &) const
+int InsetHyperlink::plaintext(odocstringstream & os,
+        OutputParams const &, size_t) const
 {
        odocstringstream oss;
 
@@ -250,11 +252,13 @@ docstring InsetHyperlink::xhtml(XHTMLStream & xs, OutputParams const &) const
 
 void InsetHyperlink::toString(odocstream & os) const
 {
-       plaintext(os, OutputParams(0));
+       odocstringstream ods;
+       plaintext(ods, OutputParams(0), INT_MAX);
+       os << ods.str();
 }
 
 
-void InsetHyperlink::forToc(docstring & os, size_t) const
+void InsetHyperlink::forOutliner(docstring & os, size_t const, bool const) const
 {
        docstring const & n = getParam("name");
        if (!n.empty()) {