;;; dframe --- dedicate frame support modes
-;;; Copyright (C) 1996, 97, 98, 99, 2000, 01, 02, 03, 04 Free Software Foundation
+;;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+;; 2005, 2006 Free Software Foundation, Inc.
;; Author: Eric M. Ludlam <zappo@gnu.org>
;; Keywords: file, tags, tools
;; * The timer managers doesn't handle multiple different timeouts.
;; * You can't specify continuous timouts (as opposed to just lidle timers.)
+(defvar x-pointer-hand2)
+(defvar x-pointer-top-left-arrow)
+
;;; Code:
(defvar dframe-xemacsp (string-match "XEmacs" emacs-version)
"Non-nil if we are running in the XEmacs environment.")
(if (fboundp 'frame-parameter)
(defalias 'dframe-frame-parameter 'frame-parameter)
-
+
(defun dframe-frame-parameter (frame parameter)
"Return FRAME's PARAMETER value."
(cdr (assoc parameter (frame-parameters frame)))))
the value.
CACHE-VAR is a variable used to cache a cached frame.
BUFFER-VAR is a variable used to cache the buffer being used in dframe.
-This buffer will have `dframe-mode' run on it.
+This buffer will have `dframe-frame-mode' run on it.
FRAME-NAME is the name of the frame to create.
LOCAL-MODE-FN is the function used to call this one.
PARAMETERS are frame parameters to apply to this dframe.
parameters
(append
parameters
- (list (cons 'height (+ mh (frame-height)))))))
+ (list (cons 'height (+ (or mh 0) (frame-height)))))))
(params
;; Only add a guessed width if one is not specified
;; in the input parameters.
(setq newleft (+ pfx pfw 5)
newtop pfy))
((eq location 'left)
- (setq newleft (+ pfx 10 nfw)
+ (setq newleft (- pfx 10 nfw)
newtop pfy))
((eq location 'left-right)
(setq newleft
(defun dframe-handle-make-frame-visible (e)
"Handle a `make-frame-visible' event.
-Should enables auto-updating if the last state was also enabled.
+Should enable auto-updating if the last state was also enabled.
Argument E is the event making the frame visible."
(interactive "e")
(let ((f last-event-frame))
(defun dframe-handle-iconify-frame (e)
"Handle a `iconify-frame' event.
-Should disables auto-updating if the last state was also enabled.
+Should disable auto-updating if the last state was also enabled.
Argument E is the event iconifying the frame."
(interactive "e")
(let ((f last-event-frame))
frame is selected. If the FRAME-VAR is active, then select the
attached frame. If FRAME-VAR is nil, ACTIVATOR is called to
created it. HOOK is an optional argument of hooks to run when
-selecting FRAME."
+selecting FRAME-VAR."
(interactive)
(if (eq (selected-frame) (symbol-value frame-var))
(if (frame-live-p dframe-attached-frame)
dframe-attached-frame))
(defun dframe-select-attached-frame (&optional frame)
- "Switch to the frame the dframe controlled frame FRAME was started from. If
-optional arg FRAME is nil assume the attached frame is already selected and
-just run the hooks `dframe-after-select-attached-frame-hook'. Return the
-attached frame."
+ "Switch to the frame the dframe controlled frame FRAME was started from.
+If optional arg FRAME is nil assume the attached frame is already selected
+and just run the hooks `dframe-after-select-attached-frame-hook'. Return
+the attached frame."
(let ((frame (dframe-attached-frame frame)))
(if frame (select-frame frame))
(prog1 frame
(when (or (not (dframe-mouse-event-p last-input-event))
dframe-activity-change-focus-flag)
(dframe-select-attached-frame)
- ;; KB: For what is this - raising the frame??
+ ;; KB: For what is this - raising the frame??
(other-frame 0)))
(windowp (posn-window (event-end event))) ; Sometimes
; there is no window to jump into.
))
-
+
(funcall dframe-track-mouse-function event)))
(defun dframe-track-mouse-xemacs (event)
(funcall dframe-mouse-position-function)))
(defun dframe-power-click (e)
- "Activate any `dframe' mouse click as a power click.
+ "Activate any dframe mouse click as a power click.
A power click will dispose of cached data (if available) or bring a buffer
up into a different window.
This should be bound to mouse event E."