Initial Commit
[safanaj_home.git] / .emacs.d / my-frames.el
blob73f4a5edc0b4af3e39490319c4f6d86fbca8cbe4
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 "
9 ".*\\.freenode.*"
10 "irc\\..*:.*"))
12 ;; (progn
13 ;; (select-frame
14 ;; (make-frame '((name . "TEST")(minibuffer . nil))))
15 ;; (rmail))
19 ;(string-match "\\*info\\*" (buffer-name (get-buffer "*info*")))
20 ;;;;
21 ;; Which frame is visible by name
22 (defun frame-is-visible (regex-for-name)
24 (let ((s regex-for-name) (ret nil))
25 (mapcar
26 '(lambda (f)
27 (if (string-match s (get-frame-name f)) (setq ret f)))
28 (frame-list))
29 (and ret (frame-visible-p ret))))
32 ;; Manage Frames
33 (eval-after-load 'my-elisp
34 (progn
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"))))
39 ;;;
40 ;; Code here.
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)
50 m))
52 ;;;###autoload
53 (define-minor-mode frame-resizing-mode
54 :initial-value nil
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)
69 m))
71 ;;;###autoload
72 (define-minor-mode frame-positioning-mode
73 :initial-value nil
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)
93 (progn
94 (set-frame-size frame
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))
110 ;; Code End here.
111 "My Frames Managment loaded."))
113 (provide 'my-frames)