]> git.lyx.org Git - lyx.git/blobdiff - src/insets/InsetIPA.cpp
Added inset-select-all to emacs bindings
[lyx.git] / src / insets / InsetIPA.cpp
index edee27e4b4d6a101314e3124ae75698c4270f58f..33ede5515fd57b604991d5fe1d6c0a51a04e5cdd 100644 (file)
@@ -19,7 +19,6 @@
 #include "FuncStatus.h"
 #include "LaTeXFeatures.h"
 #include "Lexer.h"
-#include "LyXRC.h"
 #include "MetricsInfo.h"
 #include "OutputParams.h"
 #include "RenderPreview.h"
@@ -63,6 +62,22 @@ void InsetIPA::write(ostream & os) const
 }
 
 
+void InsetIPA::doDispatch(Cursor & cur, FuncRequest & cmd)
+{
+       switch (cmd.action()) {
+       case LFUN_QUOTE_INSERT: {
+               FuncRequest fr(LFUN_SELF_INSERT, "\"");
+               InsetText::doDispatch(cur, fr);
+               break;
+       }
+       default:
+               InsetText::doDispatch(cur, cmd);
+               break;
+       }
+
+}
+
+
 bool InsetIPA::getStatus(Cursor & cur, FuncRequest const & cmd,
                FuncStatus & flag) const
 {
@@ -74,6 +89,10 @@ bool InsetIPA::getStatus(Cursor & cur, FuncRequest const & cmd,
                }
                break;
        }
+       case LFUN_IN_IPA:
+               flag.setEnabled(true);
+               return true;
+               break;
        default:
                break;
        }
@@ -102,8 +121,7 @@ void InsetIPA::preparePreview(DocIterator const & pos) const
 
 bool InsetIPA::previewState(BufferView * bv) const
 {
-       if (!editing(bv) && (RenderPreview::status() == LyXRC::PREVIEW_ON ||
-                            RenderPreview::status() == LyXRC::PREVIEW_NO_MATH)) {
+       if (!editing(bv) && RenderPreview::previewText()) {
                graphics::PreviewImage const * pimage =
                        preview_->getPreviewImage(bv->buffer());
                return pimage && pimage->image();
@@ -187,10 +205,10 @@ bool InsetIPA::notifyCursorLeaves(Cursor const & old, Cursor & cur)
 
 void InsetIPA::validate(LaTeXFeatures & features) const
 {
-       if (buffer_->params().useNonTeXFonts)
-               return;
        features.require("tipa");
        features.require("tipx");
+
+       InsetText::validate(features);
 }
 
 
@@ -218,6 +236,8 @@ bool InsetIPA::insetAllowed(InsetCode code) const
        switch (code) {
        // code that is allowed
        case ERT_CODE:
+       case IPACHAR_CODE:
+       case IPADECO_CODE:
        case SCRIPT_CODE:
                return true;
        default: