]> git.lyx.org Git - lyx.git/blobdiff - src/PDFOptions.cpp
Fix RTL inset painting.
[lyx.git] / src / PDFOptions.cpp
index 69be8502484c2abca4ac0832e52bb014dafe5add..5c8233f75420227a070b93ae5567a11f4cc763e6 100644 (file)
@@ -36,7 +36,6 @@ bool PDFOptions::empty() const
                && subject.empty()
                && keywords.empty()
                && pagemode.empty()
-               && bookmarksopenlevel.empty()
                && quoted_options.empty();
 }
 
@@ -60,8 +59,7 @@ void PDFOptions::writeFile(ostream & os) const
        os << "\\pdf_bookmarks " << convert<string>(bookmarks) << '\n';
        os << "\\pdf_bookmarksnumbered " << convert<string>(bookmarksnumbered) << '\n';
        os << "\\pdf_bookmarksopen " << convert<string>(bookmarksopen) << '\n';
-       if (!bookmarksopenlevel.empty())
-               os << "\\pdf_bookmarksopenlevel \"" << bookmarksopenlevel << "\"\n";
+       os << "\\pdf_bookmarksopenlevel \"" << bookmarksopenlevel << "\"\n";
        
        os << "\\pdf_breaklinks "  << convert<string>(breaklinks)  << '\n';
        os << "\\pdf_pdfborder "   << convert<string>(pdfborder)   << '\n';
@@ -85,39 +83,40 @@ void PDFOptions::writeLaTeX(odocstringstream &os) const
        
        opt = "\\usepackage[";
        if (!title.empty())
-               opt += "pdftitle={"   + title + "},\n";
+               opt += "pdftitle={"   + title + "},\n ";
        if (!author.empty())
-               opt += "pdfauthor={"  + author + "},\n";
+               opt += "pdfauthor={"  + author + "},\n ";
        if (!subject.empty())
-               opt += "pdfsubject={" + subject + "},\n";
+               opt += "pdfsubject={" + subject + "},\n ";
        if (!keywords.empty())
-               opt += "pdfkeywords={" + keywords + "},\n";
-       
+               opt += "pdfkeywords={" + keywords + "},\n ";
        opt += "bookmarks=" + convert<string>(bookmarks) + ',';
        if (bookmarks) {
                opt += "bookmarksnumbered=" + convert<string>(bookmarksnumbered) + ',';
                opt += "bookmarksopen=" + convert<string>(bookmarksopen) + ',';
        
-               if (bookmarksopen && !bookmarksopenlevel.empty())
-                       opt += "bookmarksopenlevel=" + bookmarksopenlevel + ',';
+               if (bookmarksopen)
+                       opt += "bookmarksopenlevel=" + convert<string>(bookmarksopenlevel) + ',';
        }
-       
+       opt += "\n ";
        opt += "breaklinks="     + convert<string>(breaklinks) + ',';
-       
+
        opt += "pdfborder={0 0 " ;
        opt += (pdfborder ?'0':'1');
-       opt += "},\n";
-       
-       opt += "colorlinks="     + convert<string>(colorlinks) + ',';
+       opt += "},";
+
        opt += "backref="        + convert<string>(backref) + ',';
        opt += "pagebackref="    + convert<string>(pagebackref) + ',';
-       
+       opt += "\n ";
+       opt += "colorlinks="     + convert<string>(colorlinks) + ',';
        if (!pagemode.empty())
                opt += "pdfpagemode=" + pagemode + ',';
-       opt += quoted_options_get();
-       
+       if (!quoted_options.empty()){
+               opt += "\n ";
+               opt += quoted_options_get();
+       }
        opt = support::rtrim(opt,",");
-       opt += "]{hyperref}\n";
+       opt += "]\n {hyperref}\n";
        
        // FIXME UNICODE
        os << from_utf8(opt);
@@ -173,7 +172,6 @@ string PDFOptions::quoted_options_get() const
        return quoted_options;
 }
 
-
 // Keep implicit hyperref settings
 void PDFOptions::clear()
 {
@@ -185,7 +183,7 @@ void PDFOptions::clear()
        bookmarks               = true;
        bookmarksnumbered       = false;
        bookmarksopen           = false;
-       bookmarksopenlevel.clear();
+       bookmarksopenlevel      = 1;
        breaklinks              = false;
        pdfborder               = false;
        colorlinks              = false;