aboutsummaryrefslogtreecommitdiffstats
path: root/src/window.c
diff options
context:
space:
mode:
authorDmitry Antipov2012-07-31 16:36:19 +0400
committerDmitry Antipov2012-07-31 16:36:19 +0400
commite34f7f79833a23586d32fe522b547a0d9a696c13 (patch)
tree4a2d3927202cb91b474bc9648ca9dee2bffaa54a /src/window.c
parentc09bfb2f140b2885af17185634451e2abfd6e91c (diff)
downloademacs-e34f7f79833a23586d32fe522b547a0d9a696c13.tar.gz
emacs-e34f7f79833a23586d32fe522b547a0d9a696c13.zip
Generalize INTERNAL_FIELD between buffers, keyboards and frames.
* src/lisp.h (INTERNAL_FIELD): New macro. * src/buffer.h (BUFFER_INTERNAL_FIELD): Removed. (BVAR): Change to use INTERNAL_FIELD. * src/keyboard.h (KBOARD_INTERNAL_FIELD): Likewise. (KVAR): Change to use INTERNAL_FIELD. * src/frame.h (FVAR): New macro. (struct frame): Use INTERNAL_FIELD for all Lisp_Object fields. * src/alloc.c, src/buffer.c, src/data.c, src/dispnew.c, src/dosfns.c * src/eval.c, src/frame.c, src/fringe.c, src/gtkutil.c, src/minibuf.c * src/nsfns.m, src/nsterm.m, src/print.c, src/term.c, src/w32fns.c * src/w32menu.c, src/w32term.c, src/window.c, src/window.h, src/xdisp.c * src/xfaces.c, src/xfns.c, src/xmenu.c, src/xterm.c: Users changed. * admin/coccinelle/frame.cocci: Semantic patch to replace direct access to Lisp_Object members of struct frame to FVAR.
Diffstat (limited to 'src/window.c')
-rw-r--r--src/window.c45
1 files changed, 23 insertions, 22 deletions
diff --git a/src/window.c b/src/window.c
index e80462ae945..ae0aad7084f 100644
--- a/src/window.c
+++ b/src/window.c
@@ -191,13 +191,13 @@ With a window argument, return the root window of that window's frame. */)
191 Lisp_Object window; 191 Lisp_Object window;
192 192
193 if (NILP (frame_or_window)) 193 if (NILP (frame_or_window))
194 window = SELECTED_FRAME ()->root_window; 194 window = FVAR (SELECTED_FRAME (), root_window);
195 else if (WINDOWP (frame_or_window)) 195 else if (WINDOWP (frame_or_window))
196 window = XFRAME (WINDOW_FRAME (XWINDOW (frame_or_window)))->root_window; 196 window = FVAR (XFRAME (WINDOW_FRAME (XWINDOW (frame_or_window))), root_window);
197 else 197 else
198 { 198 {
199 CHECK_LIVE_FRAME (frame_or_window); 199 CHECK_LIVE_FRAME (frame_or_window);
200 window = XFRAME (frame_or_window)->root_window; 200 window = FVAR (XFRAME (frame_or_window), root_window);
201 } 201 }
202 202
203 return window; 203 return window;
@@ -235,13 +235,13 @@ the first window of that frame. */)
235 Lisp_Object window; 235 Lisp_Object window;
236 236
237 if (NILP (frame_or_window)) 237 if (NILP (frame_or_window))
238 window = SELECTED_FRAME ()->root_window; 238 window = FVAR (SELECTED_FRAME (), root_window);
239 else if (WINDOWP (frame_or_window)) 239 else if (WINDOWP (frame_or_window))
240 window = XFRAME (WINDOW_FRAME (XWINDOW (frame_or_window)))->root_window; 240 window = FVAR (XFRAME (WINDOW_FRAME (XWINDOW (frame_or_window))), root_window);
241 else 241 else
242 { 242 {
243 CHECK_LIVE_FRAME (frame_or_window); 243 CHECK_LIVE_FRAME (frame_or_window);
244 window = XFRAME (frame_or_window)->root_window; 244 window = FVAR (XFRAME (frame_or_window), root_window);
245 } 245 }
246 246
247 while (NILP (XWINDOW (window)->buffer)) 247 while (NILP (XWINDOW (window)->buffer))
@@ -269,13 +269,14 @@ the selected window of that frame. */)
269 Lisp_Object window; 269 Lisp_Object window;
270 270
271 if (NILP (frame_or_window)) 271 if (NILP (frame_or_window))
272 window = SELECTED_FRAME ()->selected_window; 272 window = FVAR (SELECTED_FRAME (), selected_window);
273 else if (WINDOWP (frame_or_window)) 273 else if (WINDOWP (frame_or_window))
274 window = XFRAME (WINDOW_FRAME (XWINDOW (frame_or_window)))->selected_window; 274 window = FVAR (XFRAME (WINDOW_FRAME (XWINDOW (frame_or_window))),
275 selected_window);
275 else 276 else
276 { 277 {
277 CHECK_LIVE_FRAME (frame_or_window); 278 CHECK_LIVE_FRAME (frame_or_window);
278 window = XFRAME (frame_or_window)->selected_window; 279 window = FVAR (XFRAME (frame_or_window), selected_window);
279 } 280 }
280 281
281 return window; 282 return window;
@@ -303,7 +304,7 @@ Return WINDOW. */)
303 if (EQ (frame, selected_frame)) 304 if (EQ (frame, selected_frame))
304 return Fselect_window (window, norecord); 305 return Fselect_window (window, norecord);
305 else 306 else
306 return XFRAME (frame)->selected_window = window; 307 return FVAR (XFRAME (frame), selected_window) = window;
307} 308}
308 309
309DEFUN ("selected-window", Fselected_window, Sselected_window, 0, 0, 0, 310DEFUN ("selected-window", Fselected_window, Sselected_window, 0, 0, 0,
@@ -346,7 +347,7 @@ select_window (Lisp_Object window, Lisp_Object norecord, int inhibit_point_swap)
346 sf = SELECTED_FRAME (); 347 sf = SELECTED_FRAME ();
347 if (XFRAME (WINDOW_FRAME (w)) != sf) 348 if (XFRAME (WINDOW_FRAME (w)) != sf)
348 { 349 {
349 XFRAME (WINDOW_FRAME (w))->selected_window = window; 350 FVAR (XFRAME (WINDOW_FRAME (w)), selected_window) = window;
350 /* Use this rather than Fhandle_switch_frame 351 /* Use this rather than Fhandle_switch_frame
351 so that FRAME_FOCUS_FRAME is moved appropriately as we 352 so that FRAME_FOCUS_FRAME is moved appropriately as we
352 move around in the state where a minibuffer in a separate 353 move around in the state where a minibuffer in a separate
@@ -357,7 +358,7 @@ select_window (Lisp_Object window, Lisp_Object norecord, int inhibit_point_swap)
357 return window; 358 return window;
358 } 359 }
359 else 360 else
360 sf->selected_window = window; 361 FVAR (sf, selected_window) = window;
361 362
362 /* Store the current buffer's actual point into the 363 /* Store the current buffer's actual point into the
363 old selected window. It belongs to that window, 364 old selected window. It belongs to that window,
@@ -1219,13 +1220,13 @@ window_from_coordinates (struct frame *f, int x, int y,
1219 bar exists. */ 1220 bar exists. */
1220 if (NILP (window) 1221 if (NILP (window)
1221 && tool_bar_p 1222 && tool_bar_p
1222 && WINDOWP (f->tool_bar_window) 1223 && WINDOWP (FVAR (f, tool_bar_window))
1223 && WINDOW_TOTAL_LINES (XWINDOW (f->tool_bar_window)) > 0 1224 && WINDOW_TOTAL_LINES (XWINDOW (FVAR (f, tool_bar_window))) > 0
1224 && (coordinates_in_window (XWINDOW (f->tool_bar_window), x, y) 1225 && (coordinates_in_window (XWINDOW (FVAR (f, tool_bar_window)), x, y)
1225 != ON_NOTHING)) 1226 != ON_NOTHING))
1226 { 1227 {
1227 *part = ON_TEXT; 1228 *part = ON_TEXT;
1228 window = f->tool_bar_window; 1229 window = FVAR (f, tool_bar_window);
1229 } 1230 }
1230 1231
1231 return window; 1232 return window;
@@ -2319,7 +2320,7 @@ MINIBUF neither nil nor t means never include the minibuffer window. */)
2319 (Lisp_Object frame, Lisp_Object minibuf, Lisp_Object window) 2320 (Lisp_Object frame, Lisp_Object minibuf, Lisp_Object window)
2320{ 2321{
2321 if (NILP (window)) 2322 if (NILP (window))
2322 window = FRAMEP (frame) ? XFRAME (frame)->selected_window : selected_window; 2323 window = FRAMEP (frame) ? FVAR (XFRAME (frame), selected_window) : selected_window;
2323 CHECK_WINDOW (window); 2324 CHECK_WINDOW (window);
2324 if (NILP (frame)) 2325 if (NILP (frame))
2325 frame = selected_frame; 2326 frame = selected_frame;
@@ -3555,9 +3556,9 @@ be applied on the Elisp level. */)
3555void 3556void
3556resize_frame_windows (struct frame *f, int size, int horflag) 3557resize_frame_windows (struct frame *f, int size, int horflag)
3557{ 3558{
3558 Lisp_Object root = f->root_window; 3559 Lisp_Object root = FVAR (f, root_window);
3559 struct window *r = XWINDOW (root); 3560 struct window *r = XWINDOW (root);
3560 Lisp_Object mini = f->minibuffer_window; 3561 Lisp_Object mini = FVAR (f, minibuffer_window);
3561 struct window *m; 3562 struct window *m;
3562 /* new_size is the new size of the frame's root window. */ 3563 /* new_size is the new size of the frame's root window. */
3563 int new_size = (horflag 3564 int new_size = (horflag
@@ -3603,7 +3604,7 @@ resize_frame_windows (struct frame *f, int size, int horflag)
3603 { 3604 {
3604 /* We lost. Delete all windows but the frame's 3605 /* We lost. Delete all windows but the frame's
3605 selected one. */ 3606 selected one. */
3606 root = f->selected_window; 3607 root = FVAR (f, selected_window);
3607 Fdelete_other_windows_internal (root, Qnil); 3608 Fdelete_other_windows_internal (root, Qnil);
3608 if (horflag) 3609 if (horflag)
3609 XSETFASTINT (XWINDOW (root)->total_cols, new_size); 3610 XSETFASTINT (XWINDOW (root)->total_cols, new_size);
@@ -6464,8 +6465,8 @@ init_window_once (void)
6464 struct frame *f = make_initial_frame (); 6465 struct frame *f = make_initial_frame ();
6465 XSETFRAME (selected_frame, f); 6466 XSETFRAME (selected_frame, f);
6466 Vterminal_frame = selected_frame; 6467 Vterminal_frame = selected_frame;
6467 minibuf_window = f->minibuffer_window; 6468 minibuf_window = FVAR (f, minibuffer_window);
6468 selected_window = f->selected_window; 6469 selected_window = FVAR (f, selected_window);
6469 last_nonminibuf_frame = f; 6470 last_nonminibuf_frame = f;
6470 6471
6471 window_initialized = 1; 6472 window_initialized = 1;