changeset 87395:0bcb1aa03dad

(c-indent-line-or-region): Pass prefix arg to `c-indent-command'. Use `use-region-p'.
author Richard M. Stallman <rms@gnu.org>
date Tue, 25 Dec 2007 22:14:07 +0000
parents 06a2cf746b9d
children 1073cad4beee
files lisp/progmodes/cc-cmds.el
diffstat 1 files changed, 10 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/progmodes/cc-cmds.el	Tue Dec 25 22:12:56 2007 +0000
+++ b/lisp/progmodes/cc-cmds.el	Tue Dec 25 22:14:07 2007 +0000
@@ -3069,16 +3069,17 @@
   ;; compiled, e.g. in the menus.
   (c-region-is-active-p))
 
-(defun c-indent-line-or-region ()
-  "When the region is active, indent it syntactically.  Otherwise
-indent the current line syntactically."
-  ;; Emacs has a variable called mark-active, XEmacs uses region-active-p
-  (interactive)
-  (if (and transient-mark-mode mark-active
-	   (not (eq (region-beginning) (region-end))))
+(defun c-indent-line-or-region (&optional arg region)
+  "Indent active region, current line, or block starting on this line.
+In Transient Mark mode, when the region is active, reindent the region.
+Othewise, with a prefix argument, rigidly reindent the expression
+starting on the current line.
+Otherwise reindent just the current line."
+  (interactive
+   (list current-prefix-arg (use-region-p)))
+  (if region
       (c-indent-region (region-beginning) (region-end))
-    (c-indent-line)))
-
+    (c-indent-command arg)))
 
 ;; for progress reporting
 (defvar c-progress-info nil)