]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/InsetMathNest.cpp
remove unneeded header.
[lyx.git] / src / mathed / InsetMathNest.cpp
index ddafc5c270e031c7111dea93debd7db25f015998..8c835a0f7f06d25f8754b62944888a191e0b1f12 100644 (file)
 #include "InsetMathBrace.h"
 #include "InsetMathColor.h"
 #include "InsetMathComment.h"
-#include "MathData.h"
 #include "InsetMathDelim.h"
-#include "MathFactory.h"
 #include "InsetMathHull.h"
-#include "MathStream.h"
-#include "MathMacroArgument.h"
 //#include "InsetMathMBox.h"
-#include "MathParser.h"
+#include "InsetMathRef.h"
 #include "InsetMathScript.h"
 #include "InsetMathSpace.h"
 #include "InsetMathSymbol.h"
-#include "MathSupport.h"
 #include "InsetMathUnknown.h"
-#include "InsetMathRef.h"
+#include "MathData.h"
+#include "MathFactory.h"
+#include "MathMacroArgument.h"
+#include "MathParser.h"
+#include "MathStream.h"
+#include "MathSupport.h"
 
+#include "bufferview_funcs.h"
 #include "BufferView.h"
-#include "CutAndPaste.h"
-#include "FuncStatus.h"
 #include "Color.h"
-#include "bufferview_funcs.h"
 #include "CoordCache.h"
 #include "Cursor.h"
+#include "CutAndPaste.h"
 #include "debug.h"
 #include "DispatchResult.h"
 #include "FuncRequest.h"
+#include "FuncStatus.h"
 #include "gettext.h"
-#include "LyXText.h"
+#include "Text.h"
 #include "OutputParams.h"
 #include "Undo.h"
 
@@ -56,8 +56,6 @@
 #include "frontends/Selection.h"
 
 #include "FuncRequest.h"
-#include "LyXServer.h"
-#include "LyXServerSocket.h"
 
 #include <sstream>
 
@@ -406,7 +404,7 @@ void InsetMathNest::handleFont
 void InsetMathNest::handleFont2(Cursor & cur, docstring const & arg)
 {
        recordUndo(cur, Undo::ATOMIC);
-       LyXFont font;
+       Font font;
        bool b;
        bv_funcs::string2font(to_utf8(arg), font, b);
        if (font.color() != Color::inherit) {
@@ -494,6 +492,10 @@ void InsetMathNest::doDispatch(Cursor & cur, FuncRequest & cmd)
                cur.autocorrect() = false;
                cur.clearTargetX();
                cur.macroModeClose();
+               if (cur.isRTL() )
+                       goto goto_char_backwards;
+
+goto_char_forwards:
                if (cur.pos() != cur.lastpos() && cur.openable(cur.nextAtom())) {
                        cur.pushLeft(*cur.nextAtom().nucleus());
                        cur.inset().idxFirst(cur);
@@ -513,6 +515,10 @@ void InsetMathNest::doDispatch(Cursor & cur, FuncRequest & cmd)
                cur.autocorrect() = false;
                cur.clearTargetX();
                cur.macroModeClose();
+               if (cur.isRTL())
+                       goto goto_char_forwards;
+
+goto_char_backwards:
                if (cur.pos() != 0 && cur.openable(cur.prevAtom())) {
                        cur.posLeft();
                        cur.push(*cur.nextAtom().nucleus());
@@ -831,7 +837,7 @@ void InsetMathNest::doDispatch(Cursor & cur, FuncRequest & cmd)
        case LFUN_MATH_MODE: {
 #if 1
                // ignore math-mode on when already in math mode
-               if (currentMode() == InsetBase::MATH_MODE && cmd.argument() == "on")
+               if (currentMode() == Inset::MATH_MODE && cmd.argument() == "on")
                        break;
                cur.macroModeClose();
                docstring const save_selection = grabAndEraseSelection(cur);
@@ -842,7 +848,7 @@ void InsetMathNest::doDispatch(Cursor & cur, FuncRequest & cmd)
                cur.pushLeft(*cur.nextInset());
                cur.niceInsert(save_selection);
 #else
-               if (currentMode() == InsetBase::TEXT_MODE) {
+               if (currentMode() == Inset::TEXT_MODE) {
                        cur.niceInsert(MathAtom(new InsetMathHull("simple")));
                        cur.message(_("create new math text environment ($...$)"));
                } else {
@@ -917,7 +923,7 @@ void InsetMathNest::doDispatch(Cursor & cur, FuncRequest & cmd)
                                                                rdelim)));
                }
                // Don't call cur.undispatched() if we did nothing, this would
-               // lead to infinite recursion via LyXText::dispatch().
+               // lead to infinite recursion via Text::dispatch().
                break;
        }
 
@@ -967,7 +973,7 @@ void InsetMathNest::doDispatch(Cursor & cur, FuncRequest & cmd)
                docstring const & name = cmd.argument();
                string data;
                if (name == "ref") {
-                       RefInset tmp(name);
+                       InsetMathRef tmp(name);
                        data = tmp.createDialogStr(to_utf8(name));
                }
                cur.bv().showInsetDialog(to_utf8(name), data, 0);
@@ -985,7 +991,7 @@ void InsetMathNest::doDispatch(Cursor & cur, FuncRequest & cmd)
        }
 
        default:
-               InsetMathDim::doDispatch(cur, cmd);
+               InsetMath::doDispatch(cur, cmd);
                break;
        }
 }
@@ -1101,7 +1107,7 @@ void InsetMathNest::edit(Cursor & cur, bool left)
 }
 
 
-InsetBase * InsetMathNest::editXY(Cursor & cur, int x, int y)
+Inset * InsetMathNest::editXY(Cursor & cur, int x, int y)
 {
        int idx_min = 0;
        int dist_min = 1000000;
@@ -1146,7 +1152,7 @@ void InsetMathNest::lfunMousePress(Cursor & cur, FuncRequest & cmd)
        } else if (cmd.button() == mouse_button::button2) {
                MathData ar;
                if (cap::selection()) {
-                       // See comment in LyXText::dispatch why we do this
+                       // See comment in Text::dispatch why we do this
                        cap::copySelectionToStack();
                        cmd = FuncRequest(LFUN_PASTE, "0");
                        doDispatch(cur, cmd);