# HG changeset patch # User Glenn Morris # Date 1204402194 0 # Node ID 7a6035a7126ba7ebc2614a852485330f3421a6da # Parent aad42cded1c96e5144f0caad92873899a0aa537b Expand all viper-cond-compile-for-xemacs-or-emacs calls to a featurep test. (viper-counting-clicks-p): Only define on XEmacs. diff -r aad42cded1c9 -r 7a6035a7126b lisp/emulation/viper-mous.el --- a/lisp/emulation/viper-mous.el Sat Mar 01 20:07:49 2008 +0000 +++ b/lisp/emulation/viper-mous.el Sat Mar 01 20:09:54 2008 +0000 @@ -120,10 +120,8 @@ ;; Returns window where click occurs (defun viper-mouse-click-window (click) - (let ((win (viper-cond-compile-for-xemacs-or-emacs - (event-window click) ; xemacs - (posn-window (event-start click)) ; emacs - ))) + (let ((win (if (featurep 'xemacs) (event-window click) + (posn-window (event-start click))))) (if (window-live-p win) win (error "Click was not over a live window")))) @@ -142,10 +140,8 @@ ;; Returns position of a click (defsubst viper-mouse-click-posn (click) - (viper-cond-compile-for-xemacs-or-emacs - (event-point click) ; xemacs - (posn-point (event-start click)) ; emacs - )) + (if (featurep 'xemacs) (event-point click) + (posn-point (event-start click)))) (defun viper-surrounding-word (count click-count) @@ -318,33 +314,30 @@ ;; XEmacs has no double-click events. So, we must simulate. ;; So, we have to simulate event-click-count. (defun viper-event-click-count (click) - (viper-cond-compile-for-xemacs-or-emacs - (viper-event-click-count-xemacs click) ; xemacs - (event-click-count click) ; emacs - )) + (if (featurep 'xemacs) (viper-event-click-count-xemacs click) + (event-click-count click))) + +(when (featurep 'xemacs) + + ;; kind of semaphore for updating viper-current-click-count + (defvar viper-counting-clicks-p nil) -;; kind of semaphore for updating viper-current-click-count -(defvar viper-counting-clicks-p nil) -(viper-cond-compile-for-xemacs-or-emacs - (defun viper-event-click-count-xemacs (click) - (let ((time-delta (- (event-timestamp click) - viper-last-click-event-timestamp)) - inhibit-quit) - (while viper-counting-clicks-p - (ignore)) - (setq viper-counting-clicks-p t) - (if (> time-delta viper-multiclick-timeout) - (setq viper-current-click-count 0)) - (discard-input) - (setq viper-current-click-count (1+ viper-current-click-count) - viper-last-click-event-timestamp (event-timestamp click)) - (setq viper-counting-clicks-p nil) - (if (viper-sit-for-short viper-multiclick-timeout t) - viper-current-click-count - 0) - )) - nil ; emacs - ) + (defun viper-event-click-count-xemacs (click) + (let ((time-delta (- (event-timestamp click) + viper-last-click-event-timestamp)) + inhibit-quit) + (while viper-counting-clicks-p + (ignore)) + (setq viper-counting-clicks-p t) + (if (> time-delta viper-multiclick-timeout) + (setq viper-current-click-count 0)) + (discard-input) + (setq viper-current-click-count (1+ viper-current-click-count) + viper-last-click-event-timestamp (event-timestamp click)) + (setq viper-counting-clicks-p nil) + (if (viper-sit-for-short viper-multiclick-timeout t) + viper-current-click-count + 0)))) (defun viper-mouse-click-search-word (click arg)