# HG changeset patch # User Kim F. Storm # Date 1069547258 0 # Node ID 5983bf0859dccbcfbc59ba845d4452b4d3e1523f # Parent 50717ae10f39fa344e390507b5a281b8a8291d35 (gdb-mouse-toggle-breakpoint): New defun. (gdba): Bind it to [left-margin mouse-1] and [left-fringe mouse-1]. diff -r 50717ae10f39 -r 5983bf0859dc lisp/gdb-ui.el --- a/lisp/gdb-ui.el Sun Nov 23 00:27:27 2003 +0000 +++ b/lisp/gdb-ui.el Sun Nov 23 00:27:38 2003 +0000 @@ -145,6 +145,9 @@ (gud-call "until *%a" arg))) "\C-u" "Continue to current line or address.") + (define-key gud-minor-mode-map [left-margin mouse-1] 'gdb-mouse-toggle-breakpoint) + (define-key gud-minor-mode-map [left-fringe mouse-1] 'gdb-mouse-toggle-breakpoint) + (setq comint-input-sender 'gdb-send) ;; ;; (re-)initialise @@ -1055,6 +1058,20 @@ (end-of-line))))) (if (gdb-get-buffer 'gdb-assembler-buffer) (gdb-assembler-custom))) +(defun gdb-mouse-toggle-breakpoint (event) + "Toggle breakpoint with mouse click in left margin." + (interactive "e") + (mouse-minibuffer-check event) + (let ((posn (event-end event))) + (message "pt=%S posn=%S" (posn-point posn) posn) + (if (numberp (posn-point posn)) + (with-selected-window (posn-window posn) + (save-excursion + (goto-char (posn-point posn)) + (if (posn-object posn) + (gud-remove nil) + (gud-break nil))))))) + (defun gdb-breakpoints-buffer-name () (with-current-buffer gud-comint-buffer (concat "*breakpoints of " (gdb-get-target-string) "*")))