1 ;;;; Study dframe by Eric.
2 ;; How to manage frames to display buffers.
3 (setq display-buffer-reuse-frames t
)
4 ;; (setq pop-up-frames nil) <<--- this setted at true, is deleterio.
5 ;(setq special-display-buffer-names '("RMAIL" "*IBuffer*" "*Proced*"))
6 (setq same-window-regexps nil
)
7 (setq special-display-regexps
'( ;"info\\*"
8 "\\*Group\\*" "\\*Customize "
14 ;; (make-frame '((name . "TEST")(minibuffer . nil))))
19 ;(string-match "\\*info\\*" (buffer-name (get-buffer "*info*")))
21 ;; Which frame is visible by name
22 (defun frame-is-visible (regex-for-name)
24 (let ((s regex-for-name
) (ret nil
))
27 (if (string-match s
(get-frame-name f
)) (setq ret f
)))
29 (and ret
(frame-visible-p ret
))))
33 (eval-after-load 'my-elisp
35 (if (not (featurep 'frame-fns
))
36 (load-file (expand-file-name (concat user-elisp-directory
"frame-fns.el"))))
37 (if (not (featurep 'frame-cmds
))
38 (load-file (expand-file-name (concat user-elisp-directory
"frame-cmds.el"))))
41 ;; for resizing ... locked at top-left corner.
42 (defvar frame-resizing-mode-map
43 (let ((m (make-sparse-keymap)))
44 (define-key m
(kbd "<up>") 'shrink-frame
)
45 (define-key m
(kbd "<down>") 'enlarge-frame
)
46 (define-key m
(kbd "<left>") 'shrink-frame-horizontally
)
47 (define-key m
(kbd "<right>") 'enlarge-frame-horizontally
)
48 (define-key m
(kbd "C-c C-c") 'frame-resizing-mode
)
49 ; (define-key m (kbd "RET") 'frame-resizing-mode)
53 (define-minor-mode frame-resizing-mode
55 :ligther
" F-Resizing "
56 :keymap
'frame-resizing-mode-map
)
58 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
60 ;; for positioning ... locked at top-left corner.
61 (defvar frame-positioning-mode-map
62 (let ((m (make-sparse-keymap)))
63 (define-key m
(kbd "<up>") 'move-frame-up
)
64 (define-key m
(kbd "<down>") 'move-frame-down
)
65 (define-key m
(kbd "<left>") 'move-frame-left
)
66 (define-key m
(kbd "<right>") 'move-frame-right
)
67 (define-key m
(kbd "C-c C-c") 'frame-positioning-mode
)
68 ; (define-key m (kbd "RET") 'frame-positioning-mode)
72 (define-minor-mode frame-positioning-mode
74 :ligther
" F-Positioning "
75 :keymap
'frame-positioning-mode-map
)
77 (defun maximum-frame-height () ""
78 (- (/ (x-display-pixel-height)(frame-char-height)) 1))
79 (defun maximum-frame-width () ""
80 (- (/ (- (x-display-pixel-width)
81 (frame-parameter (selected-frame) 'left-fringe
)
82 (frame-parameter (selected-frame) 'right-fringe
)) (frame-char-width)) 2))
84 (defun set-unmaximized-frame-sizes () "" (interactive)
85 (set-frame-parameter (selected-frame) 'unmaximized-width
86 (frame-parameter (selected-frame) 'width
))
87 (set-frame-parameter (selected-frame) 'unmaximized-height
88 (frame-parameter (selected-frame) 'height
)))
90 (defun un/maximize-frame
(&optional frame
)""(interactive)
91 (unless (framep frame
) (setq frame
(selected-frame)))
92 (if (frame-parameter frame
'maximized
)
95 (or (frame-parameter frame
'unmaximized-width
) 80)
96 (or (frame-parameter frame
'unmaximized-height
) 32))
97 (set-frame-parameter frame
'maximized nil
))
98 (set-frame-size frame
(maximum-frame-width) (maximum-frame-height))
99 (set-frame-parameter frame
'maximized t
)))
102 ;;; (defun maximize-frame (&optional frame)""(interactive)
103 ;;; (if (not (framep frame)) (setq frame (selected-frame))))
105 ;;; (defun unmaximize-frame (&optional frame)""(interactive)
106 ;;; (if (not (framep frame)) (setq frame (selected-frame)))
107 ;;; (set-frame-size frame unmaximized-frame-width unmaximized-frame-height)
108 ;;; (set-frame-parameter frame 'maximized nil))
111 "My Frames Managment loaded."))