/[emacs]/emacs/src/window.c
ViewVC logotype

Diff of /emacs/src/window.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.455 by kfstorm, Sun Nov 23 00:10:08 2003 UTC revision 1.456 by kfstorm, Sun Nov 23 21:47:24 2003 UTC
# Line 1829  enum window_loop Line 1829  enum window_loop
1829    DELETE_BUFFER_WINDOWS,        /* Arg is buffer */    DELETE_BUFFER_WINDOWS,        /* Arg is buffer */
1830    GET_LARGEST_WINDOW,    GET_LARGEST_WINDOW,
1831    UNSHOW_BUFFER,                /* Arg is buffer */    UNSHOW_BUFFER,                /* Arg is buffer */
1832      REDISPLAY_BUFFER_WINDOWS,     /* Arg is buffer */
1833    CHECK_ALL_WINDOWS    CHECK_ALL_WINDOWS
1834  };  };
1835    
# Line 2027  window_loop (type, obj, mini, frames) Line 2028  window_loop (type, obj, mini, frames)
2028                }                }
2029              break;              break;
2030    
2031              case REDISPLAY_BUFFER_WINDOWS:
2032                if (EQ (w->buffer, obj))
2033                  {
2034                    mark_window_display_accurate (window, 0);
2035                    best_window = window;
2036                  }
2037                break;
2038    
2039              /* Check for a window that has a killed buffer.  */              /* Check for a window that has a killed buffer.  */
2040            case CHECK_ALL_WINDOWS:            case CHECK_ALL_WINDOWS:
2041              if (! NILP (w->buffer)              if (! NILP (w->buffer)
# Line 3428  displayed.  */) Line 3437  displayed.  */)
3437    return display_buffer_1 (window);    return display_buffer_1 (window);
3438  }  }
3439    
3440    
3441    DEFUN ("force-window-update", Fforce_window_update, Sforce_window_update,
3442           0, 1, 0,
3443           doc: /* Force redisplay of all windows.
3444    If optional arg OBJECT is a window, force redisplay of that window only.
3445    If OBJECT is a buffer or buffer name, force redisplay of all windows
3446    displaying that buffer.  */)
3447         (object)
3448         Lisp_Object object;
3449    {
3450      if (NILP (object))
3451        {
3452          windows_or_buffers_changed++;
3453          return Qt;
3454        }
3455    
3456      if (WINDOWP (object))
3457        {
3458          mark_window_display_accurate (object, 0);
3459          return Qt;
3460        }
3461        
3462      if (STRINGP (object))
3463        object = Fget_buffer (object);
3464      if (BUFFERP (object) && !NILP (XBUFFER (object)->name))
3465        {
3466          /* Walk all windows looking for buffer, and force update
3467             of each of those windows.  */
3468    
3469          object = window_loop (REDISPLAY_BUFFER_WINDOWS, object, 0, Qvisible);
3470          return NILP (object) ? Qnil : Qt;
3471        }
3472    
3473      /* If nothing suitable was found, just return.
3474         We could signal an error, but this feature will typically be used
3475         asynchronously in timers or process sentinels, so we don't.  */
3476      return Qnil;
3477    }
3478    
3479    
3480  void  void
3481  temp_output_buffer_show (buf)  temp_output_buffer_show (buf)
3482       register Lisp_Object buf;       register Lisp_Object buf;
# Line 5844  usage: (save-window-excursion BODY ...) Line 5893  usage: (save-window-excursion BODY ...)
5893  DEFUN ("set-window-margins", Fset_window_margins, Sset_window_margins,  DEFUN ("set-window-margins", Fset_window_margins, Sset_window_margins,
5894         2, 3, 0,         2, 3, 0,
5895         doc: /* Set width of marginal areas of window WINDOW.         doc: /* Set width of marginal areas of window WINDOW.
5896  If window is nil, set margins of the currently selected window.  If WINDOW is nil, set margins of the currently selected window.
5897  First parameter LEFT-WIDTH specifies the number of character  Second arg LEFT-WIDTH specifies the number of character cells to
5898  cells to reserve for the left marginal area.  Second parameter  reserve for the left marginal area.  Optional third arg RIGHT-WIDTH
5899  RIGHT-WIDTH does the same for the right marginal area.  does the same for the right marginal area.  A nil width parameter
5900  A nil width parameter means no margin.  */)  means no margin.  */)
5901       (window, left, right)       (window, left, right)
5902       Lisp_Object window, left, right;       Lisp_Object window, left, right;
5903  {  {
# Line 5910  as nil.  */) Line 5959  as nil.  */)
5959  DEFUN ("set-window-fringes", Fset_window_fringes, Sset_window_fringes,  DEFUN ("set-window-fringes", Fset_window_fringes, Sset_window_fringes,
5960         2, 4, 0,         2, 4, 0,
5961         doc: /* Set the fringe widths of window WINDOW.         doc: /* Set the fringe widths of window WINDOW.
   
5962  If WINDOW is nil, set the fringe widths of the currently selected  If WINDOW is nil, set the fringe widths of the currently selected
5963  window.  window.
5964    Second arg LEFT-WIDTH specifies the number of pixels to reserve for
5965  The second parameter LEFT-WIDTH specifies the number of pixels to  the left fringe.  Optional third arg RIGHT-WIDTH specifies the right
5966  reserve for the left fringe.  The third parameter RIGHT-WIDTH  fringe width.  If a fringe width arg is nil, that means to use the
5967  specifies the right fringe width.  If a fringe width parameter is nil,  frame's default fringe width.  Default fringe widths can be set with
5968  that means to use the frame's default fringe width.  Default fringe  the command `set-fringe-style'.
5969  widths can be set with the command `set-fringe-style'.  If optional fourth arg OUTSIDE-MARGINS is non-nil, draw the fringes
   
 If the fourth parameter OUTSIDE-MARGINS is non-nil, draw the fringes  
5970  outside of the display margins.  By default, fringes are drawn between  outside of the display margins.  By default, fringes are drawn between
5971  display marginal areas and the text area.  */)  display marginal areas and the text area.  */)
5972       (window, left, right, outside_margins)       (window, left, right, outside_margins)
# Line 6605  This variable automatically becomes buff Line 6651  This variable automatically becomes buff
6651    defsubr (&Sspecial_display_p);    defsubr (&Sspecial_display_p);
6652    defsubr (&Ssame_window_p);    defsubr (&Ssame_window_p);
6653    defsubr (&Sdisplay_buffer);    defsubr (&Sdisplay_buffer);
6654      defsubr (&Sforce_window_update);
6655    defsubr (&Ssplit_window);    defsubr (&Ssplit_window);
6656    defsubr (&Senlarge_window);    defsubr (&Senlarge_window);
6657    defsubr (&Sshrink_window);    defsubr (&Sshrink_window);

Legend:
Removed from v.1.455  
changed lines
  Added in v.1.456

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26