* insets/InsetQuotes.cpp (displayString): reenable quote display code

(but use a table-based solution instead of the old code).



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/branches/BRANCH_1_5_X@24886 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Jean-Marc Lasgouttes 2008-05-22 14:51:46 +00:00
parent 92bcd7b0ca
commit 1b7dad5c93
2 changed files with 9 additions and 32 deletions

View File

@ -56,6 +56,12 @@ char const * const times_char = "sd";
// List of known quote chars
char const * const quote_char = ",'`<>";
// Unicode characters needed by each quote type
char_type const display_quote_char[2][5] = {
{ 0x201a, 0x2019, 0x2018, 0x2039, 0x203a},
{ 0x201e, 0x201d, 0x201c, 0x00ab, 0x00bb}
};
// Index of chars used for the quote. Index is [side, language]
int quote_index[2][6] = {
{ 2, 1, 0, 0, 3, 4 }, // "'',,<>"
@ -170,38 +176,8 @@ void InsetQuotes::parseString(string const & s)
docstring const InsetQuotes::dispString(Language const * loclang) const
{
string disp;
disp += quote_char[quote_index[side_][language_]];
if (times_ == DoubleQ)
disp += disp;
docstring retdisp;
if (disp == "<<")
retdisp = docstring(1, 0x00ab); //'«';
else if (disp == ">>")
retdisp = docstring(1, 0x00bb); //'»';
#if 0
// The below are supposed to work, but something fails.
else if (disp == ",,")
retdisp = docstring(1, 0x201e);
else if (disp == "''")
retdisp == docstring(1, 0x201d);
else if (disp == "``")
retdisp == docstring(1, 0x201c);
else if (disp == "<")
retdisp = docstring(1, 0x2039);
else if (disp == ">")
retdisp = docstring(1, 0x203a);
else if (disp == ",")
retdisp = docstring(1, 0x201a);
else if (disp == "'")
retdisp = docstring(1, 0x2019);
else if (disp == "`")
retdisp = docstring(1, 0x2018);
#endif
else
retdisp = lyx::from_ascii(disp);
int const index = quote_index[side_][language_];
docstring retdisp = docstring(1, display_quote_char[times_][index]);
// in french, spaces are added inside double quotes
if (times_ == DoubleQ && prefixIs(loclang->code(), "fr")) {

View File

@ -30,6 +30,7 @@ What's new
* USER INTERFACE
- reenable quote display code, which was not working since 1.5.0.