]> git.lyx.org Git - lyx.git/commitdiff
small fixes to menu backend
authorJean-Marc Lasgouttes <lasgouttes@lyx.org>
Wed, 27 Mar 2002 23:27:12 +0000 (23:27 +0000)
committerJean-Marc Lasgouttes <lasgouttes@lyx.org>
Wed, 27 Mar 2002 23:27:12 +0000 (23:27 +0000)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3857 a592a061-630c-0410-9148-cb99ea01b6c8

src/ChangeLog
src/MenuBackend.C
src/lyxfunc.C

index 93cff1cac08963e0d000813c915974e806a70b4c..31874f43312b03c435e38a5fc29ab4ff61590d04 100644 (file)
@@ -1,3 +1,10 @@
+2002-03-27  Jean-Marc Lasgouttes  <lasgouttes@freesurf.fr>
+
+       * lyxfunc.C (getStatus): return 'disabled' early for LFUN_NOACTION
+
+       * MenuBackend.C (expand): fix export/view/update when there is no
+       document open.
+
 2002-03-27  Herbert Voss  <voss@lyx.org>
 
        * lengthcommon.C: change c%, l%, p% t% to col%, line%, page%
index 356b550d60c4bb31fd0f9377a171a9c949d9d512..7c7cd00ffb484160181127762cc092d2a53bf98f 100644 (file)
@@ -314,6 +314,14 @@ void Menu::expand(Menu & tomenu, Buffer * buf) const
                case MenuItem::ViewFormats:
                case MenuItem::UpdateFormats:
                case MenuItem::ExportFormats: {
+
+                       if (!buf && cit->kind() != MenuItem::ImportFormats) {
+                               tomenu.add(MenuItem(MenuItem::Command,
+                                                   _("No Documents Open!"),
+                                                   LFUN_NOACTION));
+                               continue;
+                       }                               
+                       
                        typedef vector<Format const *> Formats;
 
                        Formats formats;
index f3d292f67db98735c04150180b8ef4cc8d5b90aa..63afaf34d77d18ec8c7e67a96d8aec49e45feb1d 100644 (file)
@@ -354,6 +354,11 @@ FuncStatus LyXFunc::getStatus(kb_action action,
        FuncStatus flag;
        Buffer * buf = owner->buffer();
 
+       if (action == LFUN_NOACTION) {
+               setStatusMessage(N_("Nothing to do"));
+               return flag.disabled(true);
+       }
+
        if (action == LFUN_UNKNOWN_ACTION) {
                setStatusMessage(N_("Unknown action"));
                return flag.unknown(true);