]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/controllers/Kernel.C
fix crash due to invalidated iterator
[lyx.git] / src / frontends / controllers / Kernel.C
index a0bac2dc4dee9dd144e07d9274a5c7cc51a1a77e..b4a0e57c1fc43a198f7ae7f6027826b400e11e6b 100644 (file)
@@ -5,7 +5,7 @@
  *
  * \author Angus Leeming
  *
- * Full author contact details are available in file CREDITS
+ * Full author contact details are available in file CREDITS.
  */
 
 #include <config.h>
 #include "frontends/Dialogs.h"
 #include "frontends/LyXView.h"
 
+
+using std::string;
+
+namespace lyx {
+namespace frontend {
+
 Kernel::Kernel(LyXView & lyxview)
        : lyxview_(lyxview)
 {}
 
 
-void Kernel::dispatch(FuncRequest const & fr, bool verbose) const
+void Kernel::dispatch(FuncRequest const & fr) const
 {
-       lyxview_.getLyXFunc().dispatch(fr, verbose);
+       lyxview_.getLyXFunc().dispatch(fr);
 }
 
 
@@ -44,40 +50,44 @@ void Kernel::disconnect(string const & name) const
 bool Kernel::isBufferAvailable() const
 {
        if (!lyxview_.view().get())
-                return false;
-        return lyxview_.view()->available();
+               return false;
+       return lyxview_.view()->available();
 }
 
 
 bool Kernel::isBufferReadonly() const
 {
        if (!lyxview_.buffer())
-                return true;
-        return lyxview_.buffer()->isReadonly();
+               return true;
+       return lyxview_.buffer()->isReadonly();
 }
 
 
 string const Kernel::bufferFilepath() const
 {
-       return buffer()->filePath();
+       return buffer().filePath();
 }
 
-Kernel::DocTypes Kernel::docType() const
-{
-       if (!buffer())
-               return LATEX;
 
-       if (buffer()->isLatex())
+Kernel::DocType Kernel::docType() const
+{
+       if (buffer().isLatex())
                return LATEX;
-       if (buffer()->isLiterate())
+       if (buffer().isLiterate())
                return LITERATE;
-       if (buffer()->isLinuxDoc())
+       if (buffer().isLinuxDoc())
                return LINUXDOC;
 
        return DOCBOOK;
 }
 
 
+void Kernel::redrawGUI() const
+{
+       lyxview_.getDialogs().redrawGUI();
+}
+
+
 BufferView * Kernel::bufferview()
 {
        return lyxview_.view().get();
@@ -90,13 +100,18 @@ BufferView const * Kernel::bufferview() const
 }
 
 
-Buffer * Kernel::buffer()
+Buffer & Kernel::buffer()
 {
-       return lyxview_.buffer();
+       BOOST_ASSERT(lyxview_.buffer());
+       return *lyxview_.buffer();
 }
 
 
-Buffer const * Kernel::buffer() const
+Buffer const & Kernel::buffer() const
 {
-       return lyxview_.buffer();
+       BOOST_ASSERT(lyxview_.buffer());
+       return *lyxview_.buffer();
 }
+
+} // namespace frontend
+} // namespace lyx