Author: rgheck
Date: Mon Mar  5 23:36:27 2012
New Revision: 40862
URL: http://www.lyx.org/trac/changeset/40862

Log:
Add option to view only preamble when viewing source.

Modified:
   lyx-devel/branches/BRANCH_2_0_X/src/Buffer.cpp
   lyx-devel/branches/BRANCH_2_0_X/src/Buffer.h
   lyx-devel/branches/BRANCH_2_0_X/src/BufferList.cpp
   lyx-devel/branches/BRANCH_2_0_X/src/frontends/qt4/GuiViewSource.cpp
   lyx-devel/branches/BRANCH_2_0_X/src/frontends/qt4/GuiViewSource.h
   lyx-devel/branches/BRANCH_2_0_X/src/frontends/qt4/ui/ViewSourceUi.ui
   lyx-devel/branches/BRANCH_2_0_X/src/graphics/PreviewLoader.cpp
   lyx-devel/branches/BRANCH_2_0_X/src/insets/InsetInclude.cpp
   lyx-devel/branches/BRANCH_2_0_X/status.20x

Modified: lyx-devel/branches/BRANCH_2_0_X/src/Buffer.cpp
==============================================================================
--- lyx-devel/branches/BRANCH_2_0_X/src/Buffer.cpp      Mon Mar  5 23:30:19 
2012        (r40861)
+++ lyx-devel/branches/BRANCH_2_0_X/src/Buffer.cpp      Mon Mar  5 23:36:27 
2012        (r40862)
@@ -1338,7 +1338,7 @@
 bool Buffer::makeLaTeXFile(FileName const & fname,
                           string const & original_path,
                           OutputParams const & runparams_in,
-                          bool output_preamble, bool output_body) const
+                          OutputWhat output) const
 {
        OutputParams runparams = runparams_in;
 
@@ -1369,8 +1369,7 @@
        otexstream os(ofs, d->texrow);
        try {
                os.texrow().reset();
-               writeLaTeXSource(os, original_path,
-                     runparams, output_preamble, output_body);
+               writeLaTeXSource(os, original_path, runparams, output);
        }
        catch (EncodingException & e) {
                odocstringstream ods;
@@ -1415,7 +1414,7 @@
 void Buffer::writeLaTeXSource(otexstream & os,
                           string const & original_path,
                           OutputParams const & runparams_in,
-                          bool const output_preamble, bool const output_body) 
const
+         OutputWhat output) const
 {
        // The child documents, if any, shall be already loaded at this point.
 
@@ -1430,6 +1429,11 @@
        validate(features);
        LYXERR(Debug::LATEX, "  Buffer validation done.");
 
+       bool const output_preamble =
+               output == FullSource || output == OnlyPreamble;
+       bool const output_body =
+         output == FullSource || output == OnlyBody;
+
        // The starting paragraph of the coming rows is the
        // first paragraph of the document. (Asger)
        if (output_preamble && runparams.nice) {
@@ -1600,7 +1604,7 @@
 
 void Buffer::makeDocBookFile(FileName const & fname,
                              OutputParams const & runparams,
-                             bool const body_only) const
+                             OutputWhat output) const
 {
        LYXERR(Debug::LATEX, "makeDocBookFile...");
 
@@ -1608,7 +1612,7 @@
        if (!openFileWrite(ofs, fname))
                return;
 
-       writeDocBookSource(ofs, fname.absFileName(), runparams, body_only);
+       writeDocBookSource(ofs, fname.absFileName(), runparams, output);
 
        ofs.close();
        if (ofs.fail())
@@ -1618,7 +1622,7 @@
 
 void Buffer::writeDocBookSource(odocstream & os, string const & fname,
                             OutputParams const & runparams,
-                            bool const only_body) const
+                            OutputWhat output) const
 {
        LaTeXFeatures features(*this, params(), runparams);
        validate(features);
@@ -1628,7 +1632,12 @@
        DocumentClass const & tclass = params().documentClass();
        string const top_element = tclass.latexname();
 
-       if (!only_body) {
+       bool const output_preamble =
+               output == FullSource || output == OnlyPreamble;
+       bool const output_body =
+         output == FullSource || output == OnlyBody;
+
+       if (output_preamble) {
                if (runparams.flavor == OutputParams::XML)
                        os << "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
 
@@ -1663,31 +1672,33 @@
                os << ">\n\n";
        }
 
-       string top = top_element;
-       top += " lang=\"";
-       if (runparams.flavor == OutputParams::XML)
-               top += params().language->code();
-       else
-               top += params().language->code().substr(0, 2);
-       top += '"';
-
-       if (!params().options.empty()) {
-               top += ' ';
-               top += params().options;
-       }
-
-       os << "<!-- " << ((runparams.flavor == OutputParams::XML)? "XML" : 
"SGML")
-           << " file was created by LyX " << lyx_version
-           << "\n  See http://www.lyx.org/ for more information -->\n";
-
-       params().documentClass().counters().reset();
-
-       updateMacros();
+       if (output_body) {
+               string top = top_element;
+               top += " lang=\"";
+               if (runparams.flavor == OutputParams::XML)
+                       top += params().language->code();
+               else
+                       top += params().language->code().substr(0, 2);
+               top += '"';
+       
+               if (!params().options.empty()) {
+                       top += ' ';
+                       top += params().options;
+               }
+       
+               os << "<!-- " << ((runparams.flavor == OutputParams::XML)? 
"XML" : "SGML")
+                               << " file was created by LyX " << lyx_version
+                               << "\n  See http://www.lyx.org/ for more 
information -->\n";
+       
+               params().documentClass().counters().reset();
+       
+               updateMacros();
 
-       sgml::openTag(os, top);
-       os << '\n';
-       docbookParagraphs(text(), *this, os, runparams);
-       sgml::closeTag(os, top_element);
+               sgml::openTag(os, top);
+               os << '\n';
+               docbookParagraphs(text(), *this, os, runparams);
+               sgml::closeTag(os, top_element);
+       }
 }
 
 
@@ -1701,7 +1712,7 @@
        if (!openFileWrite(ofs, fname))
                return;
 
-       writeLyXHTMLSource(ofs, runparams, body_only);
+       writeLyXHTMLSource(ofs, runparams, FullSource);
 
        ofs.close();
        if (ofs.fail())
@@ -1711,7 +1722,7 @@
 
 void Buffer::writeLyXHTMLSource(odocstream & os,
                             OutputParams const & runparams,
-                            bool const only_body) const
+                            OutputWhat output) const
 {
        LaTeXFeatures features(*this, params(), runparams);
        validate(features);
@@ -1720,7 +1731,12 @@
        updateMacros();
        updateMacroInstances(OutputUpdate);
 
-       if (!only_body) {
+       bool const output_preamble =
+               output == FullSource || output == OnlyPreamble;
+       bool const output_body =
+         output == FullSource || output == OnlyBody;
+
+       if (output_preamble) {
                os << "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
                   << "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.1 plus 
MathML 2.0//EN\" \"http://www.w3.org/TR/MathML2/dtd/xhtml-math11-f.dtd\";>\n"
                   // FIXME Language should be set properly.
@@ -1764,14 +1780,19 @@
                                            << ";\n";
                                os << "}\n</style>\n";
                }
-               os << "</head>\n<body>\n";
+               os << "</head>\n";
        }
 
-       XHTMLStream xs(os);
-       params().documentClass().counters().reset();
-       xhtmlParagraphs(text(), *this, xs, runparams);
-       if (!only_body)
-               os << "</body>\n</html>\n";
+       if (output_body) {
+               os << "<body>\n";
+               XHTMLStream xs(os);
+               params().documentClass().counters().reset();
+               xhtmlParagraphs(text(), *this, xs, runparams);
+               os << "</body>\n";
+       }
+
+       if (output_preamble)
+               os << "</html>\n";
 }
 
 
@@ -3153,7 +3174,7 @@
 
 void Buffer::getSourceCode(odocstream & os, string const format,
                           pit_type par_begin, pit_type par_end,
-                          bool full_source) const
+                          OutputWhat output) const
 {
        OutputParams runparams(&params().encoding());
        runparams.nice = true;
@@ -3162,21 +3183,7 @@
        // No side effect of file copying and image conversion
        runparams.dryrun = true;
 
-       if (full_source) {
-               os << "% " << _("Preview source code") << "\n\n";
-               d->texrow.reset();
-               d->texrow.newline();
-               d->texrow.newline();
-               if (params().isDocBook())
-                       writeDocBookSource(os, absFileName(), runparams, false);
-               else if (runparams.flavor == OutputParams::HTML)
-                       writeLyXHTMLSource(os, runparams, false);
-               else {
-                       // latex or literate
-                       otexstream ots(os, d->texrow);
-                       writeLaTeXSource(ots, string(), runparams, true, true);
-               }
-       } else {
+       if (output == CurrentParagraph) {
                runparams.par_begin = par_begin;
                runparams.par_end = par_end;
                if (par_begin + 1 == par_end) {
@@ -3205,6 +3212,27 @@
                        otexstream ots(os, texrow);
                        latexParagraphs(*this, text(), ots, runparams);
                }
+       } else {
+               os << "% ";
+               if (output == FullSource) 
+                       os << _("Preview source code");
+               else if (output == OnlyPreamble)
+                       os << _("Preview preamble");
+               else if (output == OnlyBody)
+                       os << _("Preview body");
+               os << "\n\n";
+               d->texrow.reset();
+               d->texrow.newline();
+               d->texrow.newline();
+               if (params().isDocBook())
+                       writeDocBookSource(os, absFileName(), runparams, 
output);
+               else if (runparams.flavor == OutputParams::HTML)
+                       writeLyXHTMLSource(os, runparams, output);
+               else {
+                       // latex or literate
+                       otexstream ots(os, d->texrow);
+                       writeLaTeXSource(ots, string(), runparams, output);
+               }
        }
 }
 

Modified: lyx-devel/branches/BRANCH_2_0_X/src/Buffer.h
==============================================================================
--- lyx-devel/branches/BRANCH_2_0_X/src/Buffer.h        Mon Mar  5 23:30:19 
2012        (r40861)
+++ lyx-devel/branches/BRANCH_2_0_X/src/Buffer.h        Mon Mar  5 23:36:27 
2012        (r40862)
@@ -275,12 +275,18 @@
        /// Fill in the ErrorList with the TeXErrors
        void bufferErrors(TeXErrors const &, ErrorList &) const;
 
+       enum OutputWhat {
+               FullSource,
+               OnlyBody,
+               OnlyPreamble,
+               CurrentParagraph
+       };
+
        /// Just a wrapper for writeLaTeXSource, first creating the ofstream.
        bool makeLaTeXFile(support::FileName const & filename,
                           std::string const & original_path,
                           OutputParams const &,
-                          bool output_preamble = true,
-                          bool output_body = true) const;
+                          OutputWhat output = FullSource) const;
        /** Export the buffer to LaTeX.
            If \p os is a file stream, and params().inputenc is "auto" or
            "default", and the buffer contains text in different languages
@@ -306,16 +312,15 @@
        void writeLaTeXSource(otexstream & os,
                           std::string const & original_path,
                           OutputParams const &,
-                          bool output_preamble = true,
-                          bool output_body = true) const;
+                          OutputWhat output = FullSource) const;
        ///
        void makeDocBookFile(support::FileName const & filename,
                             OutputParams const & runparams_in,
-                            bool only_body = false) const;
+                            OutputWhat output = FullSource) const;
        ///
        void writeDocBookSource(odocstream & os, std::string const & filename,
                             OutputParams const & runparams_in,
-                            bool only_body = false) const;
+                            OutputWhat output = FullSource) const;
        ///
        void makeLyXHTMLFile(support::FileName const & filename,
                             OutputParams const & runparams_in,
@@ -323,7 +328,7 @@
        ///
        void writeLyXHTMLSource(odocstream & os,
                             OutputParams const & runparams_in,
-                            bool only_body = false) const;
+                            OutputWhat output = FullSource) const;
        /// returns the main language for the buffer (document)
        Language const * language() const;
        /// get l10n translated to the buffers language
@@ -560,7 +565,7 @@
        /// get source code (latex/docbook) for some paragraphs, or all 
paragraphs
        /// including preamble
        void getSourceCode(odocstream & os, std::string const format,
-                          pit_type par_begin, pit_type par_end, bool 
full_source) const;
+                          pit_type par_begin, pit_type par_end, OutputWhat 
output) const;
 
        /// Access to error list.
        /// This method is used only for GUI visualisation of Buffer related

Modified: lyx-devel/branches/BRANCH_2_0_X/src/BufferList.cpp
==============================================================================
--- lyx-devel/branches/BRANCH_2_0_X/src/BufferList.cpp  Mon Mar  5 23:30:19 
2012        (r40861)
+++ lyx-devel/branches/BRANCH_2_0_X/src/BufferList.cpp  Mon Mar  5 23:36:27 
2012        (r40862)
@@ -213,7 +213,7 @@
                if (!(*it)->isDepClean(masterTmpDir)) {
                        string writefile = addName(masterTmpDir, 
(*it)->latexName());
                        (*it)->makeLaTeXFile(FileName(writefile), masterTmpDir,
-                                            runparams, false);
+                                            runparams, Buffer::OnlyBody);
                        (*it)->markDepClean(masterTmpDir);
                }
        }

Modified: lyx-devel/branches/BRANCH_2_0_X/src/frontends/qt4/GuiViewSource.cpp
==============================================================================
--- lyx-devel/branches/BRANCH_2_0_X/src/frontends/qt4/GuiViewSource.cpp Mon Mar 
 5 23:30:19 2012        (r40861)
+++ lyx-devel/branches/BRANCH_2_0_X/src/frontends/qt4/GuiViewSource.cpp Mon Mar 
 5 23:36:27 2012        (r40862)
@@ -49,8 +49,8 @@
 {
        setupUi(this);
 
-       connect(viewFullSourceCB, SIGNAL(clicked()),
-               this, SLOT(fullSourceChanged()));
+       connect(contentsCO, SIGNAL(activated(int)),
+               this, SLOT(contentsChanged()));
        connect(autoUpdateCB, SIGNAL(toggled(bool)),
                updatePB, SLOT(setDisabled(bool)));
        connect(autoUpdateCB, SIGNAL(toggled(bool)),
@@ -90,7 +90,7 @@
        \param fullSource get full source code
        \return true if the content has changed since last call.
  */
-static bool getContent(BufferView const * view, bool fullSource,
+static bool getContent(BufferView const * view, Buffer::OutputWhat output,
                       QString & qstr, string const format, bool 
force_getcontent)
 {
        // get the *top* level paragraphs that contain the cursor,
@@ -108,7 +108,7 @@
        if (par_begin > par_end)
                swap(par_begin, par_end);
        odocstringstream ostr;
-       view->buffer().getSourceCode(ostr, format, par_begin, par_end + 1, 
fullSource);
+       view->buffer().getSourceCode(ostr, format, par_begin, par_end + 1, 
output);
        docstring s = ostr.str();
        static size_t crc = 0;
        size_t newcrc = crcCheck(s);
@@ -129,7 +129,7 @@
 }
 
 
-void ViewSourceWidget::fullSourceChanged()
+void ViewSourceWidget::contentsChanged()
 {
        if (autoUpdateCB->isChecked())
                updateView();
@@ -150,8 +150,15 @@
                outputFormatCO->currentIndex()).toString());
 
        QString content;
-       if (getContent(bv_, viewFullSourceCB->isChecked(), content,
-                 format, force_getcontent_))
+       Buffer::OutputWhat output = Buffer::CurrentParagraph;
+       if (contentsCO->currentIndex() == 1)
+               output = Buffer::FullSource;
+       else if (contentsCO->currentIndex() == 2)
+               output = Buffer::OnlyPreamble;
+       else if (contentsCO->currentIndex() == 3)
+               output = Buffer::OnlyBody;
+
+       if (getContent(bv_, output, content, format, force_getcontent_))
                document_->setPlainText(content);
 
        CursorSlice beg = bv_->cursor().selectionBegin().bottom();
@@ -254,8 +261,9 @@
 {
        Dialog::saveSession();
        QSettings settings;
-       settings.setValue(
-               sessionKey() + "/fullsource", 
widget_->viewFullSourceCB->isChecked());
+       // see below
+       // settings.setValue(
+       //      sessionKey() + "/output", widget_->contentsCO->currentIndex());
        settings.setValue(
                sessionKey() + "/autoupdate", 
widget_->autoUpdateCB->isChecked());
 }
@@ -265,9 +273,9 @@
 {
        DockView::restoreSession();
        // FIXME: Full source updating is too slow to be done at startup.
-       //widget_->viewFullSourceCB->setChecked(
-       //      settings.value(sessionKey() + "/fullsource", false).toBool());
-       widget_->viewFullSourceCB->setChecked(false);
+       //widget_->outputCO-setCurrentIndex(
+       //      settings.value(sessionKey() + "/output", false).toInt());
+       widget_->contentsCO->setCurrentIndex(0);
        QSettings settings;
        widget_->autoUpdateCB->setChecked(
                settings.value(sessionKey() + "/autoupdate", true).toBool());

Modified: lyx-devel/branches/BRANCH_2_0_X/src/frontends/qt4/GuiViewSource.h
==============================================================================
--- lyx-devel/branches/BRANCH_2_0_X/src/frontends/qt4/GuiViewSource.h   Mon Mar 
 5 23:30:19 2012        (r40861)
+++ lyx-devel/branches/BRANCH_2_0_X/src/frontends/qt4/GuiViewSource.h   Mon Mar 
 5 23:36:27 2012        (r40862)
@@ -47,7 +47,7 @@
        ///
        void updateDefaultFormat();
        ///
-       void fullSourceChanged();
+       void contentsChanged();
 
 private:
        ///

Modified: lyx-devel/branches/BRANCH_2_0_X/src/frontends/qt4/ui/ViewSourceUi.ui
==============================================================================
--- lyx-devel/branches/BRANCH_2_0_X/src/frontends/qt4/ui/ViewSourceUi.ui        
Mon Mar  5 23:30:19 2012        (r40861)
+++ lyx-devel/branches/BRANCH_2_0_X/src/frontends/qt4/ui/ViewSourceUi.ui        
Mon Mar  5 23:36:27 2012        (r40862)
@@ -1,3 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
 <ui version="4.0">
  <class>ViewSourceUi</class>
  <widget class="QWidget" name="ViewSourceUi">
@@ -5,15 +6,15 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>452</width>
-    <height>120</height>
+    <width>528</width>
+    <height>205</height>
    </rect>
   </property>
   <property name="windowTitle">
    <string/>
   </property>
-  <layout class="QGridLayout" name="gridLayout_2">
-   <item row="0" column="0">
+  <layout class="QGridLayout" name="gridLayout">
+   <item row="0" column="0" rowspan="5">
     <widget class="QTextEdit" name="viewSourceTV">
      <property name="sizePolicy">
       <sizepolicy hsizetype="MinimumExpanding" vsizetype="Ignored">
@@ -27,74 +28,86 @@
     </widget>
    </item>
    <item row="0" column="1">
-    <layout class="QGridLayout" name="gridLayout">
-     <item row="0" column="0">
-      <widget class="QLabel" name="outputFormatLA">
-       <property name="text">
-        <string>&amp;Output Format:</string>
-       </property>
-       <property name="buddy">
-        <cstring>outputFormatCO</cstring>
-       </property>
-      </widget>
-     </item>
-     <item row="0" column="1">
-      <widget class="QComboBox" name="outputFormatCO">
-       <property name="toolTip">
-        <string>Select the output format</string>
-       </property>
-      </widget>
-     </item>
-     <item row="1" column="0" colspan="2">
-      <widget class="QCheckBox" name="viewFullSourceCB">
-       <property name="cursor">
-        <cursorShape>ArrowCursor</cursorShape>
-       </property>
-       <property name="text">
-        <string>Complete source</string>
-       </property>
-      </widget>
-     </item>
-     <item row="2" column="0" colspan="2">
-      <widget class="QCheckBox" name="autoUpdateCB">
-       <property name="text">
-        <string>Automatic update</string>
-       </property>
-       <property name="checked">
-        <bool>true</bool>
-       </property>
-      </widget>
-     </item>
-     <item row="3" column="0" colspan="2">
-      <widget class="QPushButton" name="updatePB">
-       <property name="enabled">
-        <bool>false</bool>
-       </property>
-       <property name="text">
-        <string>&amp;Update</string>
-       </property>
-      </widget>
-     </item>
-     <item row="4" column="0">
-      <spacer>
-       <property name="orientation">
-        <enum>Qt::Vertical</enum>
-       </property>
-       <property name="sizeHint" stdset="0">
-        <size>
-         <width>20</width>
-         <height>17</height>
-        </size>
-       </property>
-      </spacer>
+    <widget class="QLabel" name="outputFormatLA">
+     <property name="text">
+      <string>F&amp;ormat:</string>
+     </property>
+     <property name="buddy">
+      <cstring>outputFormatCO</cstring>
+     </property>
+    </widget>
+   </item>
+   <item row="0" column="2">
+    <widget class="QComboBox" name="outputFormatCO">
+     <property name="enabled">
+      <bool>true</bool>
+     </property>
+     <property name="toolTip">
+      <string>Select the output format</string>
+     </property>
+    </widget>
+   </item>
+   <item row="1" column="1" colspan="2">
+    <widget class="QComboBox" name="contentsCO">
+     <item>
+      <property name="text">
+       <string>Current Paragraph</string>
+      </property>
+     </item>
+     <item>
+      <property name="text">
+       <string>Complete Source</string>
+      </property>
+     </item>
+     <item>
+      <property name="text">
+       <string>Preamble Only</string>
+      </property>
+     </item>
+     <item>
+      <property name="text">
+       <string>Body Only</string>
+      </property>
      </item>
-    </layout>
+    </widget>
+   </item>
+   <item row="2" column="1" colspan="2">
+    <widget class="QCheckBox" name="autoUpdateCB">
+     <property name="text">
+      <string>Automatic update</string>
+     </property>
+     <property name="checked">
+      <bool>true</bool>
+     </property>
+    </widget>
+   </item>
+   <item row="3" column="1" colspan="2">
+    <widget class="QPushButton" name="updatePB">
+     <property name="enabled">
+      <bool>false</bool>
+     </property>
+     <property name="text">
+      <string>&amp;Update</string>
+     </property>
+    </widget>
+   </item>
+   <item row="4" column="1" colspan="2">
+    <spacer>
+     <property name="orientation">
+      <enum>Qt::Vertical</enum>
+     </property>
+     <property name="sizeHint" stdset="0">
+      <size>
+       <width>20</width>
+       <height>85</height>
+      </size>
+     </property>
+    </spacer>
    </item>
   </layout>
  </widget>
  <tabstops>
   <tabstop>viewSourceTV</tabstop>
-  <tabstop>viewFullSourceCB</tabstop>
   <tabstop>autoUpdateCB</tabstop>
   <tabstop>updatePB</tabstop>
  </tabstops>

Modified: lyx-devel/branches/BRANCH_2_0_X/src/graphics/PreviewLoader.cpp
==============================================================================
--- lyx-devel/branches/BRANCH_2_0_X/src/graphics/PreviewLoader.cpp      Mon Mar 
 5 23:30:19 2012        (r40861)
+++ lyx-devel/branches/BRANCH_2_0_X/src/graphics/PreviewLoader.cpp      Mon Mar 
 5 23:36:27 2012        (r40862)
@@ -710,7 +710,7 @@
        runparams.nice = true;
        runparams.moving_arg = true;
        runparams.free_spacing = true;
-       buffer_.writeLaTeXSource(os, buffer_.filePath(), runparams, true, 
false);
+       buffer_.writeLaTeXSource(os, buffer_.filePath(), runparams, 
Buffer::OnlyPreamble);
 
        // FIXME! This is a HACK! The proper fix is to control the 'true'
        // passed to WriteStream below:

Modified: lyx-devel/branches/BRANCH_2_0_X/src/insets/InsetInclude.cpp
==============================================================================
--- lyx-devel/branches/BRANCH_2_0_X/src/insets/InsetInclude.cpp Mon Mar  5 
23:30:19 2012        (r40861)
+++ lyx-devel/branches/BRANCH_2_0_X/src/insets/InsetInclude.cpp Mon Mar  5 
23:36:27 2012        (r40862)
@@ -618,7 +618,7 @@
                runparams.par_begin = 0;
                runparams.par_end = tmp->paragraphs().size();
                if (!tmp->makeLaTeXFile(tmpwritefile, masterFileName(buffer()).
-                               onlyPath().absFileName(), runparams, false)) {
+                               onlyPath().absFileName(), runparams, 
Buffer::OnlyBody)) {
                        docstring msg = bformat(_("Included file `%1$s' "
                                        "was not exported correctly.\nWarning: "
                                        "LaTeX export is probably incomplete."),
@@ -785,7 +785,7 @@
        if (all_pars) {
                op.par_begin = 0;
                op.par_end = 0;
-               ibuf->writeLyXHTMLSource(xs.os(), op, true);
+               ibuf->writeLyXHTMLSource(xs.os(), op, Buffer::OnlyBody);
        } else
                xs << XHTMLStream::ESCAPE_NONE 
                   << "<!-- Included file: " 
@@ -849,7 +849,7 @@
                LYXERR(Debug::LATEX, "exportfile:" << exportfile);
                LYXERR(Debug::LATEX, "writefile:" << writefile);
 
-               tmp->makeDocBookFile(writefile, runparams, true);
+               tmp->makeDocBookFile(writefile, runparams, Buffer::OnlyBody);
        }
 
        runparams.exportdata->addExternalFile("docbook", writefile,

Modified: lyx-devel/branches/BRANCH_2_0_X/status.20x
==============================================================================
--- lyx-devel/branches/BRANCH_2_0_X/status.20x  Mon Mar  5 23:30:19 2012        
(r40861)
+++ lyx-devel/branches/BRANCH_2_0_X/status.20x  Mon Mar  5 23:36:27 2012        
(r40862)
@@ -36,6 +36,7 @@
 
 - Graphics insets show filename as a tooltip now.
 
+- New option to show only the preamble when viewing source (bug 7860).
 
 
 * DOCUMENTATION AND LOCALIZATION

Reply via email to