summaryrefslogtreecommitdiff
path: root/src/buffer.c
diff options
context:
space:
mode:
authorMartin Rudalics <rudalics@gmx.at>2012-09-03 10:54:25 +0200
committerMartin Rudalics <rudalics@gmx.at>2012-09-03 10:54:25 +0200
commitc5e28e39275c4a5a63adbe3e1e3b23a58c4a4bb8 (patch)
treee97109f17d8b574462c05693515facd868a410e5 /src/buffer.c
parent3eab3ca987b74c54788052bbace0fc5c8e93363c (diff)
downloademacs-c5e28e39275c4a5a63adbe3e1e3b23a58c4a4bb8.tar.gz
New macro with-temp-buffer-window and related fixes.
* buffer.c (Fdelete_all_overlays): New function. * window.el (temp-buffer-window-setup-hook) (temp-buffer-window-show-hook): New hooks. (temp-buffer-window-setup, temp-buffer-window-show) (with-temp-buffer-window): New functions. (fit-window-to-buffer): Remove unused optional argument OVERRIDE. (special-display-popup-frame): Make sure the window used shows BUFFER. * help.el (temp-buffer-resize-mode): Fix doc-string. (resize-temp-buffer-window): New optional argument WINDOW. * files.el (recover-file, save-buffers-kill-emacs): * dired.el (dired-mark-pop-up): Use with-temp-buffer-window.
Diffstat (limited to 'src/buffer.c')
-rw-r--r--src/buffer.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/buffer.c b/src/buffer.c
index 0e2e50d9f51..ce6f42f136f 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -4073,6 +4073,25 @@ DEFUN ("delete-overlay", Fdelete_overlay, Sdelete_overlay, 1, 1, 0,
return unbind_to (count, Qnil);
}
+
+DEFUN ("delete-all-overlays", Fdelete_all_overlays, Sdelete_all_overlays, 0, 1, 0,
+ doc: /* Delete all overlays of BUFFER.
+BUFFER omitted or nil means delete all overlays of the current
+buffer. */)
+ (Lisp_Object buffer)
+{
+ register struct buffer *buf;
+
+ if (NILP (buffer))
+ buf = current_buffer;
+ else
+ {
+ CHECK_BUFFER (buffer);
+ buf = XBUFFER (buffer);
+ }
+
+ delete_all_overlays (buf);
+}
/* Overlay dissection functions. */
@@ -6286,6 +6305,7 @@ and `bury-buffer-internal'. */);
defsubr (&Soverlayp);
defsubr (&Smake_overlay);
defsubr (&Sdelete_overlay);
+ defsubr (&Sdelete_all_overlays);
defsubr (&Smove_overlay);
defsubr (&Soverlay_start);
defsubr (&Soverlay_end);