]> git.lyx.org Git - lyx.git/blobdiff - src/support/lstrings.h
Correct comment
[lyx.git] / src / support / lstrings.h
index fcf1cbb6feeb49bf6f4ca5e43e8fefc74b93083a..937196855c113f76ad7324e6b8e6b5605809f44b 100644 (file)
@@ -53,7 +53,7 @@ bool isHexChar(char_type);
 
 bool isHex(docstring const & str);
 
-int hexToInt(docstring const & str);
+unsigned int hexToInt(docstring const & str);
 
 /// is \p str pure ascii?
 bool isAscii(docstring const & str);
@@ -241,7 +241,7 @@ docstring const rtrim(docstring const & a, char const * p = " ");
 std::string const ltrim(std::string const & a, char const * p = " ");
 docstring const ltrim(docstring const & a, char const * p = " ");
 
-/** Splits the string given in the first argument at the first occurence
+/** Splits the string given in the first argument at the first occurrence
     of the third argument, delim.
     What precedes delim is returned in the second argument, piece; this
     will be the whole of the string if no delimiter is found.
@@ -276,6 +276,8 @@ docstring const protectArgument(docstring & arg, char const l = '[',
 /// Truncates a string with an ellipsis at the end.  Leaves str unchanged and
 /// returns false if it is shorter than len. Otherwise resizes str to len, with
 /// U+2026 HORIZONTAL ELLIPSIS at the end, and returns true.
+/// If mid is true, the ellipsis will be put to the mid of the string, and the first
+/// and last half is appended/prepended. 
 ///
 /// Warning (Unicode): The cases where we want to truncate the text and it does
 /// not end up converted into a QString for UI display must be really
@@ -294,7 +296,8 @@ docstring const protectArgument(docstring & arg, char const l = '[',
 ///
 /// FIXME: apply those principles in the current code.
 ///
-bool truncateWithEllipsis(docstring & str, size_t const len);
+bool truncateWithEllipsis(docstring & str, size_t const len,
+                         bool const mid = false);
 
 /// Word-wraps the provided docstring, returning a line-broken string
 /// of width no wider than width, with the string broken at spaces.
@@ -346,7 +349,7 @@ docstring const getStringFromVector(std::vector<docstring> const & vec,
 int findToken(char const * const str[], std::string const & search_token);
 
 
-/// Format a floating point number with at least 6 siginificant digits, but
+/// Format a floating point number with at least 6 significant digits, but
 /// without scientific notation.
 /// Scientific notation would be invalid in some contexts, such as lengths for
 /// LaTeX. Simply using std::ostream with std::fixed would produce results
@@ -357,10 +360,12 @@ std::string formatFPNumber(double);
 /// \p ex defines a string of characters that are excluded from the transformation
 docstring to_percent_encoding(docstring const & in, docstring const & ex = docstring());
 
+/// Returns a string decoded from an URI/URL-style percent-encoded string \p in.
+std::string from_percent_encoding(std::string const & in);
 
 docstring bformat(docstring const & fmt, int arg1);
 docstring bformat(docstring const & fmt, long arg1);
-#ifdef LYX_USE_LONG_LONG
+#ifdef HAVE_LONG_LONG_INT
 docstring bformat(docstring const & fmt, long long arg1);
 #endif
 docstring bformat(docstring const & fmt, unsigned int arg1);