comparison lisp/menu-bar.el @ 43020:9a93c325183a

(menu-bar-options-save): Add `default-frame-alist' to saved variables. (menu-bar-showhide-scroll-bar-menu): Use frame-parameters instead of the variable `scroll-bar-mode'.
author Pavel Janík <Pavel@Janik.cz>
date Tue, 29 Jan 2002 14:17:26 +0000
parents 9b786fc11812
children 2f5ddf0e74ba
comparison
equal deleted inserted replaced
43019:b03bfca3fc6e 43020:9a93c325183a
482 (define-key global-map [copy] 'clipboard-kill-ring-save) 482 (define-key global-map [copy] 'clipboard-kill-ring-save)
483 (define-key global-map [paste] 'clipboard-yank)) 483 (define-key global-map [paste] 'clipboard-yank))
484 484
485 ;; The "Options" menu items 485 ;; The "Options" menu items
486 486
487 ;; The "Show/Hide" submenu of menu "Options"
488
489 (defvar menu-bar-showhide-menu (make-sparse-keymap "Show/Hide"))
490 (defvar menu-bar-showhide-scroll-bar-menu (make-sparse-keymap "Scroll-bar"))
491
492 (defun menu-bar-scroll-bar-right ()
493 "Turn on the scroll-bar on the right side."
494 (interactive)
495 (set-scroll-bar-mode 'right))
496
497 (defun menu-bar-scroll-bar-left ()
498 "Turn on the scroll-bar on the left side."
499 (interactive)
500 (set-scroll-bar-mode 'left))
501
502 (defun menu-bar-scroll-bar-none ()
503 "Turn off the scroll-bar."
504 (interactive)
505 (set-scroll-bar-mode nil))
506
507 (define-key menu-bar-showhide-scroll-bar-menu [right]
508 '(menu-item "On the Right" menu-bar-scroll-bar-right
509 :help "Scroll-bar on the right side"
510 :visible window-system
511 :button (:radio . (eq scroll-bar-mode 'right))))
512
513 (define-key menu-bar-showhide-scroll-bar-menu [left]
514 '(menu-item "On the Left" menu-bar-scroll-bar-left
515 :help "Scroll-bar on the left side"
516 :visible window-system
517 :button (:radio . (eq scroll-bar-mode 'left))))
518
519 (define-key menu-bar-showhide-scroll-bar-menu [none]
520 '(menu-item "None" menu-bar-scroll-bar-none
521 :help "Turn off scroll-bar"
522 :visible window-system
523 :button (:radio . (eq scroll-bar-mode nil))))
524
525 (define-key menu-bar-showhide-menu [showhide-scroll-bar]
526 (list 'menu-item "Scroll-Bar" menu-bar-showhide-scroll-bar-menu
527 :visible 'window-system
528 :help "Select scroll-bar mode"))
529
530 (defun showhide-menu-bar ()
531 "Toggle whether to turn menu-bar on/off."
532 (interactive)
533 (if (menu-bar-mode)
534 (message "Menu-bar mode enabled.")
535 (message "Menu-bar mode disabled. Use M-x menu-bar-mode to make the menu bar appear.")))
536
537 (define-key menu-bar-showhide-menu [showhide-menu-bar]
538 '(menu-item "Menu-bar" showhide-menu-bar
539 :help "Toggle menu-bar on/off"
540 :button (:toggle . menu-bar-mode)))
541
542 (defun showhide-tool-bar ()
543 "Toggle whether to turn tool-bar on/off."
544 (interactive)
545 (if (tool-bar-mode)
546 (message "Tool-bar mode enabled.")
547 (message "Tool-bar mode disabled.")))
548
549 (define-key menu-bar-showhide-menu [showhide-tool-bar]
550 '(menu-item "Tool-bar" showhide-tool-bar
551 :help "Turn tool-bar on/off"
552 :visible window-system
553 :button (:toggle . tool-bar-mode)))
554
555 (define-key menu-bar-options-menu [showhide]
556 (list 'menu-item "Show/Hide" menu-bar-showhide-menu
557 :help "Toggle on/off various display features"))
558
559 (define-key menu-bar-options-menu [showhide-separator]
560 '("--"))
561
562
563 (defvar menu-bar-custom-menu (make-sparse-keymap "Customize")) 487 (defvar menu-bar-custom-menu (make-sparse-keymap "Customize"))
564 488
565 (define-key menu-bar-custom-menu [customize-apropos-groups] 489 (define-key menu-bar-custom-menu [customize-apropos-groups]
566 '(menu-item "Groups Matching Regexp..." customize-apropos-groups 490 '(menu-item "Groups Matching Regexp..." customize-apropos-groups
567 :help "Browse groups whose names match regexp")) 491 :help "Browse groups whose names match regexp"))
622 "Save current values of Options menu items using Custom." 546 "Save current values of Options menu items using Custom."
623 (interactive) 547 (interactive)
624 (dolist (elt '(debug-on-quit debug-on-error auto-compression-mode 548 (dolist (elt '(debug-on-quit debug-on-error auto-compression-mode
625 case-fold-search truncate-lines show-paren-mode 549 case-fold-search truncate-lines show-paren-mode
626 transient-mark-mode global-font-lock-mode 550 transient-mark-mode global-font-lock-mode
627 current-language-environment default-input-method)) 551 current-language-environment default-input-method
552 default-frame-alist))
628 (if (default-value elt) 553 (if (default-value elt)
629 (customize-save-variable elt (default-value elt)))) 554 (customize-save-variable elt (default-value elt))))
630 (if (memq 'turn-on-auto-fill text-mode-hook) 555 (if (memq 'turn-on-auto-fill text-mode-hook)
631 (customize-save-variable 'text-mode-hook 556 (customize-save-variable 'text-mode-hook
632 (default-value 'text-mode-hook))) 557 (default-value 'text-mode-hook)))
639 (define-key menu-bar-options-menu [save] 564 (define-key menu-bar-options-menu [save]
640 '(menu-item "Save Options" menu-bar-options-save 565 '(menu-item "Save Options" menu-bar-options-save
641 :help "Save options set from the menu above")) 566 :help "Save options set from the menu above"))
642 567
643 (define-key menu-bar-options-menu [custom-separator] 568 (define-key menu-bar-options-menu [custom-separator]
569 '("--"))
570
571 ;; The "Show/Hide" submenu of menu "Options"
572
573 (defvar menu-bar-showhide-menu (make-sparse-keymap "Show/Hide"))
574 (defvar menu-bar-showhide-scroll-bar-menu (make-sparse-keymap "Scroll-bar"))
575
576 (defun menu-bar-scroll-bar-right ()
577 "Turn on the scroll-bar on the right side."
578 (interactive)
579 (set-scroll-bar-mode 'right))
580
581 (defun menu-bar-scroll-bar-left ()
582 "Turn on the scroll-bar on the left side."
583 (interactive)
584 (set-scroll-bar-mode 'left))
585
586 (defun menu-bar-scroll-bar-none ()
587 "Turn off the scroll-bar."
588 (interactive)
589 (set-scroll-bar-mode nil))
590
591 (define-key menu-bar-showhide-scroll-bar-menu [right]
592 '(menu-item "On the Right" menu-bar-scroll-bar-right
593 :help "Scroll-bar on the right side"
594 :visible window-system
595 :button (:radio . (eq (cdr (assq 'vertical-scroll-bars (frame-parameters))) 'right))))
596
597 (define-key menu-bar-showhide-scroll-bar-menu [left]
598 '(menu-item "On the Left" menu-bar-scroll-bar-left
599 :help "Scroll-bar on the left side"
600 :visible window-system
601 :button (:radio . (eq (cdr (assq 'vertical-scroll-bars (frame-parameters))) 'left))))
602
603 (define-key menu-bar-showhide-scroll-bar-menu [none]
604 '(menu-item "None" menu-bar-scroll-bar-none
605 :help "Turn off scroll-bar"
606 :visible window-system
607 :button (:radio . (eq (cdr (assq 'vertical-scroll-bars (frame-parameters))) nil))))
608
609 (define-key menu-bar-showhide-menu [showhide-scroll-bar]
610 (list 'menu-item "Scroll-Bar" menu-bar-showhide-scroll-bar-menu
611 :visible 'window-system
612 :help "Select scroll-bar mode"))
613
614 (defun showhide-menu-bar ()
615 "Toggle whether to turn menu-bar on/off."
616 (interactive)
617 (menu-bar-mode)
618 (if menu-bar-mode
619 (message "Menu-bar mode enabled.")
620 (message "Menu-bar mode disabled. Use M-x menu-bar-mode to make the menu bar appear.")))
621
622 (define-key menu-bar-showhide-menu [showhide-menu-bar]
623 '(menu-item "Menu-bar" showhide-menu-bar
624 :help "Toggle menu-bar on/off"
625 :button (:toggle . menu-bar-mode)))
626
627 (defun showhide-tool-bar ()
628 "Toggle whether to turn tool-bar on/off."
629 (interactive)
630 (if (tool-bar-mode)
631 (message "Tool-bar mode enabled.")
632 (message "Tool-bar mode disabled.")))
633
634 (define-key menu-bar-showhide-menu [showhide-tool-bar]
635 '(menu-item "Tool-bar" showhide-tool-bar
636 :help "Turn tool-bar on/off"
637 :visible window-system
638 :button (:toggle . tool-bar-mode)))
639
640 (define-key menu-bar-options-menu [showhide]
641 (list 'menu-item "Show/Hide" menu-bar-showhide-menu
642 :help "Toggle on/off various display features"))
643
644 (define-key menu-bar-options-menu [showhide-separator]
644 '("--")) 645 '("--"))
645 646
646 (define-key menu-bar-options-menu [mule] 647 (define-key menu-bar-options-menu [mule]
647 ;; It is better not to use backquote here, 648 ;; It is better not to use backquote here,
648 ;; because that makes a bootstrapping problem 649 ;; because that makes a bootstrapping problem