Mercurial > emacs
comparison src/frame.h @ 2252:9793d8654e23
* frame.h (FOR_EACH_FRAME): Change the definition so that
FRAME_VAR is a lisp object.
* dispnew.c (WINDOW_CHANGE_SIGNAL, do_pending_window_change):
Adjusted appropriately.
* xdisp.c (redisplay): Adjusted appropriately.
* dispnew.c (Fredraw_frame): Give this appropriate definitions for
MULTI_FRAME and non-MULTI_FRAME configurations.
(Fredraw_display): Give this a non-MULTI_FRAME-dependent definition.
author | Jim Blandy <jimb@redhat.com> |
---|---|
date | Thu, 18 Mar 1993 22:50:00 +0000 |
parents | d005529475af |
children | 80bed5e0c8aa |
comparison
equal
deleted
inserted
replaced
2251:216f86e5891d | 2252:9793d8654e23 |
---|---|
315 x = wrong_type_argument (Qframe_live_p, (x)); \ | 315 x = wrong_type_argument (Qframe_live_p, (x)); \ |
316 } | 316 } |
317 | 317 |
318 /* FOR_EACH_FRAME (LIST_VAR, FRAME_VAR) followed by a statement is a | 318 /* FOR_EACH_FRAME (LIST_VAR, FRAME_VAR) followed by a statement is a |
319 `for' loop which iterates over the elements of Vframe_list. The | 319 `for' loop which iterates over the elements of Vframe_list. The |
320 loop will set FRAME_VAR, a FRAME_PTR, to each frame in | 320 loop will set FRAME_VAR, a Lisp_Object, to each frame in |
321 Vframe_list in succession and execute the statement. LIST_VAR | 321 Vframe_list in succession and execute the statement. LIST_VAR |
322 should be a Lisp_Object; it is used to iterate through the | 322 should be a Lisp_Object too; it is used to iterate through the |
323 Vframe_list. | 323 Vframe_list. |
324 | 324 |
325 If MULTI_FRAME isn't defined, then this loop expands to something which | 325 If MULTI_FRAME isn't defined, then this loop expands to something which |
326 executes the statement once. */ | 326 executes the statement once. */ |
327 #define FOR_EACH_FRAME(list_var, frame_var) \ | 327 #define FOR_EACH_FRAME(list_var, frame_var) \ |
328 for ((list_var) = Vframe_list; \ | 328 for ((list_var) = Vframe_list; \ |
329 (CONSP (list_var) \ | 329 (CONSP (list_var) \ |
330 && (frame_var = XFRAME (XCONS (list_var)->car), 1)); \ | 330 && (frame_var = XCONS (list_var)->car, 1)); \ |
331 list_var = XCONS (list_var)->cdr) | 331 list_var = XCONS (list_var)->cdr) |
332 | 332 |
333 | 333 |
334 extern Lisp_Object Qframep, Qframe_live_p; | 334 extern Lisp_Object Qframep, Qframe_live_p; |
335 | 335 |
410 #define CHECK_FRAME(x, i) do; while (0) | 410 #define CHECK_FRAME(x, i) do; while (0) |
411 #define CHECK_LIVE_FRAME(x, y) do; while (0) | 411 #define CHECK_LIVE_FRAME(x, y) do; while (0) |
412 | 412 |
413 /* FOR_EACH_FRAME (LIST_VAR, FRAME_VAR) followed by a statement is a | 413 /* FOR_EACH_FRAME (LIST_VAR, FRAME_VAR) followed by a statement is a |
414 `for' loop which iterates over the elements of Vframe_list. The | 414 `for' loop which iterates over the elements of Vframe_list. The |
415 loop will set FRAME_VAR, a FRAME_PTR, to each frame in | 415 loop will set FRAME_VAR, a Lisp_Object, to each frame in |
416 Vframe_list in succession and execute the statement. LIST_VAR | 416 Vframe_list in succession and execute the statement. LIST_VAR |
417 should be a Lisp_Object; it is used to iterate through the | 417 should be a Lisp_Object too; it is used to iterate through the |
418 Vframe_list. | 418 Vframe_list. |
419 | 419 |
420 If MULTI_FRAME _is_ defined, then this loop expands to a real | 420 If MULTI_FRAME _is_ defined, then this loop expands to a real |
421 `for' loop which traverses Vframe_list using LIST_VAR and | 421 `for' loop which traverses Vframe_list using LIST_VAR and |
422 FRAME_VAR. */ | 422 FRAME_VAR. */ |
423 #define FOR_EACH_FRAME(list_var, frame_var) \ | 423 #define FOR_EACH_FRAME(list_var, frame_var) \ |
424 for (frame_var = (FRAME_PTR) 1; frame_var; frame_var = (FRAME_PTR) 0) | 424 for (list_var = Qt; frame_var = selected_frame, ! NILP (list_var); list_var = Qnil) |
425 | 425 |
426 #endif /* not MULTI_FRAME */ | 426 #endif /* not MULTI_FRAME */ |
427 | 427 |
428 | 428 |
429 /* Device- and MULTI_FRAME-independent scroll bar stuff. */ | 429 /* Device- and MULTI_FRAME-independent scroll bar stuff. */ |