]> git.lyx.org Git - lyx.git/blobdiff - src/LyXFunc.cpp
EmbeddedObjects.lyx: add hint how to force a rotation direction for rotated floats
[lyx.git] / src / LyXFunc.cpp
index 77ad4dcc3fbb7ab56b4138676df6325513d9e6b6..04decddf8a080eb5dc2bf546c5e2ebcb303dd69f 100644 (file)
@@ -18,6 +18,7 @@
  */
 
 #include <config.h>
+#include <vector>
 
 #include "LyXFunc.h"
 
@@ -616,18 +617,16 @@ FuncStatus LyXFunc::getStatus(FuncRequest const & cmd) const
                enable = LyX::ref().session().bookmarks().size() > 0;
                break;
 
-       case LFUN_TOOLBAR_TOGGLE_STATE: {
-               ToolbarInfo::Flags flags = lyx_view_->getToolbarState(to_utf8(cmd.argument()));
-               if (!(flags & ToolbarInfo::AUTO))
-                       flag.setOnOff(flags & ToolbarInfo::ON);
-               break;
-       }
-
        case LFUN_TOOLBAR_TOGGLE: {
                bool const current = lyx_view_->getToolbars().visible(cmd.getArg(0));
                flag.setOnOff(current);
                break;
        }
+       case LFUN_WINDOW_CLOSE: {
+               enable = (theApp()->gui().viewIds().size() > 1);
+               break;
+       }
+
        // this one is difficult to get right. As a half-baked
        // solution, we consider only the first action of the sequence
        case LFUN_COMMAND_SEQUENCE: {
@@ -688,7 +687,6 @@ FuncStatus LyXFunc::getStatus(FuncRequest const & cmd) const
        case LFUN_BUFFER_NEXT:
        case LFUN_BUFFER_PREVIOUS:
        case LFUN_WINDOW_NEW:
-       case LFUN_WINDOW_CLOSE:
        case LFUN_LYX_QUIT:
                // these are handled in our dispatch()
                break;
@@ -1062,6 +1060,8 @@ void LyXFunc::dispatch(FuncRequest const & cmd)
                                                        command2);
                                } else {
                                        // case 2: print directly to a printer
+                                       if (target_name != "default")
+                                               command += lyxrc.print_to_printer + target_name + ' ';
                                        res = one.startscript(
                                                Systemcall::DontWait,
                                                command + quoteName(dviname));
@@ -1073,10 +1073,10 @@ void LyXFunc::dispatch(FuncRequest const & cmd)
                                if (fs::exists(filename.toFilesystemEncoding())) {
                                        docstring text = bformat(
                                                _("The file %1$s already exists.\n\n"
-                                                 "Do you want to over-write that file?"),
+                                                 "Do you want to overwrite that file?"),
                                                makeDisplayPath(filename.absFilename()));
-                                       if (Alert::prompt(_("Over-write file?"),
-                                           text, 0, 1, _("&Over-write"), _("&Cancel")) != 0)
+                                       if (Alert::prompt(_("Overwrite file?"),
+                                           text, 0, 1, _("&Overwrite"), _("&Cancel")) != 0)
                                                break;
                                }
                                command += lyxrc.print_to_file
@@ -1755,15 +1755,23 @@ void LyXFunc::dispatch(FuncRequest const & cmd)
                        LyX::ref().session().bookmarks().clear();
                        break;
 
-               case LFUN_TOOLBAR_TOGGLE_STATE:
-                       lyx_view_->toggleToolbarState(argument);
-                       break;
-
                case LFUN_TOOLBAR_TOGGLE: {
                        BOOST_ASSERT(lyx_view_);
-                       string const name = to_utf8(cmd.argument());
-                       bool const current = lyx_view_->getToolbars().visible(name);
-                       lyx_view_->getToolbars().display(name, !current);
+                       string const name = cmd.getArg(0);
+                       bool const allowauto = cmd.getArg(1) == "allowauto";
+                       lyx_view_->toggleToolbarState(name, allowauto);
+                       ToolbarInfo::Flags const flags = 
+                               lyx_view_->getToolbarState(name);
+                       docstring state;
+                       if (flags & ToolbarInfo::ON)
+                               state = _("on");
+                       else if (flags & ToolbarInfo::OFF)
+                               state = _("off");
+                       else if (flags & ToolbarInfo::AUTO)
+                               state = _("auto");
+
+                       setMessage(bformat(_("Toolbar \"%1$s\" state set to %2$s"), 
+                                                  from_ascii(name), state));
                        break;
                }
 
@@ -2049,9 +2057,9 @@ void LyXFunc::doImport(string const & argument)
                docstring const file = makeDisplayPath(lyxfile.absFilename(), 30);
 
                docstring text = bformat(_("The document %1$s already exists.\n\n"
-                                                    "Do you want to over-write that document?"), file);
-               int const ret = Alert::prompt(_("Over-write document?"),
-                       text, 0, 1, _("&Over-write"), _("&Cancel"));
+                                                    "Do you want to overwrite that document?"), file);
+               int const ret = Alert::prompt(_("Overwrite document?"),
+                       text, 0, 1, _("&Overwrite"), _("&Cancel"));
 
                if (ret == 1) {
                        lyx_view_->message(_("Canceled."));