]> git.lyx.org Git - lyx.git/blobdiff - src/LyXFunc.cpp
Compil fix.
[lyx.git] / src / LyXFunc.cpp
index 7433a2ac6688d785ff2cffa075bad3712ec58a94..88cd8c4a15bfc28000da8f803b1c41efc9a8d230 100644 (file)
@@ -377,9 +377,6 @@ void LyXFunc::processKeySym(KeySymbol const & keysym, KeyModifier state)
                if (!lyx_view_)
                        return;
        }
-
-       if (lyx_view_)
-               lyx_view_->restartCursor();
 }
 
 
@@ -456,6 +453,20 @@ FuncStatus LyXFunc::getStatus(FuncRequest const & cmd) const
                        enable = false;
                break;
 
+       // FIXME optimally this should be in Text::getStatus. In such a case the flags
+       // are not passed when using context menu. This way it works.
+       case LFUN_SET_GRAPHICS_GROUP: {
+               if (!view())
+                       break;
+               InsetGraphics * ins = InsetGraphics::getCurrentGraphicsInset(view()->cursor());
+               if (!ins)
+                       break;
+               if (!cmd.argument().empty())
+                       flag.setOnOff(to_utf8(cmd.argument()) == ins->getParams().groupId);
+               enable = true;
+               break;
+       }
+
        case LFUN_TOOLBAR_TOGGLE:
        case LFUN_INSET_APPLY:
        case LFUN_BUFFER_WRITE:
@@ -622,9 +633,9 @@ FuncStatus LyXFunc::getStatus(FuncRequest const & cmd) const
        case LFUN_SCREEN_FONT_UPDATE:
        case LFUN_SET_COLOR:
        case LFUN_MESSAGE:
-       case LFUN_EXTERNAL_EDIT:
-       case LFUN_GRAPHICS_EDIT:
+       case LFUN_INSET_EDIT:
        case LFUN_ALL_INSETS_TOGGLE:
+       case LFUN_GRAPHICS_GROUPS_UNIFY:
        case LFUN_BUFFER_LANGUAGE:
        case LFUN_TEXTCLASS_APPLY:
        case LFUN_TEXTCLASS_LOAD:
@@ -1466,6 +1477,17 @@ void LyXFunc::dispatch(FuncRequest const & cmd)
                        break;
                }
 
+               case LFUN_GRAPHICS_GROUPS_UNIFY: {
+                       LASSERT(lyx_view_, /**/);
+                       if (argument.empty() || !lyx_view_->buffer())
+                               break;
+                       //view()->cursor().recordUndoFullDocument(); let inset-apply do that job
+                       InsetGraphics::unifyGraphicsGroups(*lyx_view_->buffer(), argument);
+                       lyx_view_->buffer()->markDirty();
+                       updateFlags = Update::Force | Update::FitCursor;
+                       break;
+               }
+
                case LFUN_BUFFER_LANGUAGE: {
                        LASSERT(lyx_view_, /**/);
                        Buffer & buffer = *lyx_view_->buffer();