@@ -712,28 +712,33 @@ void System::showMenu() {
712712 _systemMenu = new int [MENU_SIZE];
713713 int index = 0 ;
714714 if (get_focus_edit () != NULL ) {
715- items->add (new String (" Cut" ));
716- items->add (new String (" Copy" ));
717- items->add (new String (" Paste" ));
718- _systemMenu[index++] = MENU_CUT;
719- _systemMenu[index++] = MENU_COPY;
720- _systemMenu[index++] = MENU_PASTE;
721-
722715 if (isEditing ()) {
723716 items->add (new String (" Undo" ));
724717 items->add (new String (" Redo" ));
718+ items->add (new String (" Cut" ));
719+ items->add (new String (" Copy" ));
720+ items->add (new String (" Paste" ));
725721 items->add (new String (" Save" ));
726722 items->add (new String (" Run" ));
727723 items->add (new String (" Debug" ));
728- items->add (new String (" Output " ));
724+ items->add (new String (" Show output " ));
729725 _systemMenu[index++] = MENU_UNDO;
730726 _systemMenu[index++] = MENU_REDO;
727+ _systemMenu[index++] = MENU_CUT;
728+ _systemMenu[index++] = MENU_COPY;
729+ _systemMenu[index++] = MENU_PASTE;
731730 _systemMenu[index++] = MENU_SAVE;
732731 _systemMenu[index++] = MENU_RUN;
733732 _systemMenu[index++] = MENU_DEBUG;
734733 _systemMenu[index++] = MENU_OUTPUT;
734+ } else {
735+ items->add (new String (" Cut" ));
736+ items->add (new String (" Copy" ));
737+ items->add (new String (" Paste" ));
738+ _systemMenu[index++] = MENU_CUT;
739+ _systemMenu[index++] = MENU_COPY;
740+ _systemMenu[index++] = MENU_PASTE;
735741 }
736-
737742#if defined(_SDL)
738743 items->add (new String (" Back" ));
739744 _systemMenu[index++] = MENU_BACK;
@@ -752,12 +757,10 @@ void System::showMenu() {
752757 _systemMenu[index++] = MENU_CONSOLE;
753758 _systemMenu[index++] = MENU_SOURCE;
754759 }
755- #if defined(_SDL)
756- items->add (new String (" Back" ));
757- _systemMenu[index++] = MENU_BACK;
758- #endif
759- items->add (new String (" Restart" ));
760- _systemMenu[index++] = MENU_RESTART;
760+ if (!isEditing ()) {
761+ items->add (new String (" Restart" ));
762+ _systemMenu[index++] = MENU_RESTART;
763+ }
761764#if !defined(_SDL)
762765 items->add (new String (" Show keypad" ));
763766 _systemMenu[index++] = MENU_KEYPAD;
@@ -785,6 +788,10 @@ void System::showMenu() {
785788
786789 items->add (new String (" Screenshot" ));
787790 _systemMenu[index++] = MENU_SCREENSHOT;
791+ #if defined(_SDL)
792+ items->add (new String (" Back" ));
793+ _systemMenu[index++] = MENU_BACK;
794+ #endif
788795 }
789796 optionsBox (items);
790797 delete items;
0 commit comments