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

Diff of /emacs/src/frame.c

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

revision 1.269 by raeburn, Tue Oct 16 09:09:51 2001 UTC revision 1.270 by pj, Sun Oct 21 07:27:56 2001 UTC
# Line 148  extern Lisp_Object Fredirect_frame_focus Line 148  extern Lisp_Object Fredirect_frame_focus
148  extern Lisp_Object x_get_focus_frame ();  extern Lisp_Object x_get_focus_frame ();
149    
150  DEFUN ("framep", Fframep, Sframep, 1, 1, 0,  DEFUN ("framep", Fframep, Sframep, 1, 1, 0,
151    "Return non-nil if OBJECT is a frame.\n\         doc: /* Return non-nil if OBJECT is a frame.
152  Value is t for a termcap frame (a character-only terminal),\n\  Value is t for a termcap frame (a character-only terminal),
153  `x' for an Emacs frame that is really an X window,\n\  `x' for an Emacs frame that is really an X window,
154  `w32' for an Emacs frame that is a window on MS-Windows display,\n\  `w32' for an Emacs frame that is a window on MS-Windows display,
155  `mac' for an Emacs frame on a Macintosh display,\n\  `mac' for an Emacs frame on a Macintosh display,
156  `pc' for a direct-write MS-DOS frame.\n\  `pc' for a direct-write MS-DOS frame.
157  See also `frame-live-p'.")  See also `frame-live-p'.  */)
158    (object)       (object)
159       Lisp_Object object;       Lisp_Object object;
160  {  {
161    if (!FRAMEP (object))    if (!FRAMEP (object))
# Line 178  See also `frame-live-p'.") Line 178  See also `frame-live-p'.")
178  }  }
179    
180  DEFUN ("frame-live-p", Fframe_live_p, Sframe_live_p, 1, 1, 0,  DEFUN ("frame-live-p", Fframe_live_p, Sframe_live_p, 1, 1, 0,
181    "Return non-nil if OBJECT is a frame which has not been deleted.\n\         doc: /* Return non-nil if OBJECT is a frame which has not been deleted.
182  Value is nil if OBJECT is not a live frame.  If object is a live\n\  Value is nil if OBJECT is not a live frame.  If object is a live
183  frame, the return value indicates what sort of output device it is\n\  frame, the return value indicates what sort of output device it is
184  displayed on.  Value is t for a termcap frame (a character-only\n\  displayed on.  Value is t for a termcap frame (a character-only
185  terminal), `x' for an Emacs frame being displayed in an X window.")  terminal), `x' for an Emacs frame being displayed in an X window.  */)
186    (object)       (object)
187       Lisp_Object object;       Lisp_Object object;
188  {  {
189    return ((FRAMEP (object)    return ((FRAMEP (object)
# Line 498  make_terminal_frame () Line 498  make_terminal_frame ()
498  }  }
499    
500  DEFUN ("make-terminal-frame", Fmake_terminal_frame, Smake_terminal_frame,  DEFUN ("make-terminal-frame", Fmake_terminal_frame, Smake_terminal_frame,
501         1, 1, 0, "Create an additional terminal frame.\n\         1, 1, 0,
502  You can create multiple frames on a text-only terminal in this way.\n\         doc: /* Create an additional terminal frame.
503  Only the selected terminal frame is actually displayed.\n\  You can create multiple frames on a text-only terminal in this way.
504  This function takes one argument, an alist specifying frame parameters.\n\  Only the selected terminal frame is actually displayed.
505  In practice, generally you don't need to specify any parameters.\n\  This function takes one argument, an alist specifying frame parameters.
506  Note that changing the size of one terminal frame automatically affects all.")  In practice, generally you don't need to specify any parameters.
507    (parms)  Note that changing the size of one terminal frame automatically affects all.  */)
508         (parms)
509       Lisp_Object parms;       Lisp_Object parms;
510  {  {
511    struct frame *f;    struct frame *f;
# Line 651  do_switch_frame (frame, track, for_delet Line 652  do_switch_frame (frame, track, for_delet
652  }  }
653    
654  DEFUN ("select-frame", Fselect_frame, Sselect_frame, 1, 2, "e",  DEFUN ("select-frame", Fselect_frame, Sselect_frame, 1, 2, "e",
655    "Select the frame FRAME.\n\         doc: /* Select the frame FRAME.
656  Subsequent editing commands apply to its selected window.\n\  Subsequent editing commands apply to its selected window.
657  The selection of FRAME lasts until the next time the user does\n\  The selection of FRAME lasts until the next time the user does
658  something to select a different frame, or until the next time this\n\  something to select a different frame, or until the next time this
659  function is called.")  function is called.  */)
660    (frame, no_enter)    (frame, no_enter)
661      Lisp_Object frame, no_enter;      Lisp_Object frame, no_enter;
662  {  {
# Line 664  function is called.") Line 665  function is called.")
665    
666    
667  DEFUN ("handle-switch-frame", Fhandle_switch_frame, Shandle_switch_frame, 1, 2, "e",  DEFUN ("handle-switch-frame", Fhandle_switch_frame, Shandle_switch_frame, 1, 2, "e",
668    "Handle a switch-frame event EVENT.\n\         doc: /* Handle a switch-frame event EVENT.
669  Switch-frame events are usually bound to this function.\n\  Switch-frame events are usually bound to this function.
670  A switch-frame event tells Emacs that the window manager has requested\n\  A switch-frame event tells Emacs that the window manager has requested
671  that the user's events be directed to the frame mentioned in the event.\n\  that the user's events be directed to the frame mentioned in the event.
672  This function selects the selected window of the frame of EVENT.\n\  This function selects the selected window of the frame of EVENT.
673  \n\  
674  If EVENT is frame object, handle it as if it were a switch-frame event\n\  If EVENT is frame object, handle it as if it were a switch-frame event
675  to that frame.")  to that frame.  */)
676    (event, no_enter)       (event, no_enter)
677       Lisp_Object event, no_enter;       Lisp_Object event, no_enter;
678  {  {
679    /* Preserve prefix arg that the command loop just cleared.  */    /* Preserve prefix arg that the command loop just cleared.  */
# Line 682  to that frame.") Line 683  to that frame.")
683  }  }
684    
685  DEFUN ("ignore-event", Fignore_event, Signore_event, 0, 0, "",  DEFUN ("ignore-event", Fignore_event, Signore_event, 0, 0, "",
686    "Do nothing, but preserve any prefix argument already specified.\n\         doc: /* Do nothing, but preserve any prefix argument already specified.
687  This is a suitable binding for iconify-frame and make-frame-visible.")  This is a suitable binding for iconify-frame and make-frame-visible.  */)
688       ()       ()
689  {  {
690    current_kboard->Vprefix_arg = Vcurrent_prefix_arg;    current_kboard->Vprefix_arg = Vcurrent_prefix_arg;
# Line 691  This is a suitable binding for iconify-f Line 692  This is a suitable binding for iconify-f
692  }  }
693    
694  DEFUN ("selected-frame", Fselected_frame, Sselected_frame, 0, 0, 0,  DEFUN ("selected-frame", Fselected_frame, Sselected_frame, 0, 0, 0,
695    "Return the frame that is now selected.")         doc: /* Return the frame that is now selected.  */)
696    ()       ()
697  {  {
698    return selected_frame;    return selected_frame;
699  }  }
700    
701  DEFUN ("window-frame", Fwindow_frame, Swindow_frame, 1, 1, 0,  DEFUN ("window-frame", Fwindow_frame, Swindow_frame, 1, 1, 0,
702    "Return the frame object that window WINDOW is on.")         doc: /* Return the frame object that window WINDOW is on.  */)
703    (window)       (window)
704       Lisp_Object window;       Lisp_Object window;
705  {  {
706    CHECK_LIVE_WINDOW (window, 0);    CHECK_LIVE_WINDOW (window, 0);
# Line 707  DEFUN ("window-frame", Fwindow_frame, Sw Line 708  DEFUN ("window-frame", Fwindow_frame, Sw
708  }  }
709    
710  DEFUN ("frame-first-window", Fframe_first_window, Sframe_first_window, 0, 1, 0,  DEFUN ("frame-first-window", Fframe_first_window, Sframe_first_window, 0, 1, 0,
711    "Returns the topmost, leftmost window of FRAME.\n\         doc: /* Returns the topmost, leftmost window of FRAME.
712  If omitted, FRAME defaults to the currently selected frame.")  If omitted, FRAME defaults to the currently selected frame.  */)
713    (frame)       (frame)
714       Lisp_Object frame;       Lisp_Object frame;
715  {  {
716    Lisp_Object w;    Lisp_Object w;
# Line 735  If omitted, FRAME defaults to the curren Line 736  If omitted, FRAME defaults to the curren
736    
737  DEFUN ("active-minibuffer-window", Factive_minibuffer_window,  DEFUN ("active-minibuffer-window", Factive_minibuffer_window,
738         Sactive_minibuffer_window, 0, 0, 0,         Sactive_minibuffer_window, 0, 0, 0,
739         "Return the currently active minibuffer window, or nil if none.")         doc: /* Return the currently active minibuffer window, or nil if none.  */)
740    ()       ()
741  {  {
742    return minibuf_level ? minibuf_window : Qnil;    return minibuf_level ? minibuf_window : Qnil;
743  }  }
744    
745  DEFUN ("frame-root-window", Fframe_root_window, Sframe_root_window, 0, 1, 0,  DEFUN ("frame-root-window", Fframe_root_window, Sframe_root_window, 0, 1, 0,
746         "Returns the root-window of FRAME.\n\         doc: /* Returns the root-window of FRAME.
747  If omitted, FRAME defaults to the currently selected frame.")  If omitted, FRAME defaults to the currently selected frame.  */)
748    (frame)       (frame)
749       Lisp_Object frame;       Lisp_Object frame;
750  {  {
751    Lisp_Object window;    Lisp_Object window;
# Line 762  If omitted, FRAME defaults to the curren Line 763  If omitted, FRAME defaults to the curren
763    
764  DEFUN ("frame-selected-window", Fframe_selected_window,  DEFUN ("frame-selected-window", Fframe_selected_window,
765         Sframe_selected_window, 0, 1, 0,         Sframe_selected_window, 0, 1, 0,
766    "Return the selected window of frame object FRAME.\n\         doc: /* Return the selected window of frame object FRAME.
767  If omitted, FRAME defaults to the currently selected frame.")  If omitted, FRAME defaults to the currently selected frame.  */)
768    (frame)       (frame)
769       Lisp_Object frame;       Lisp_Object frame;
770  {  {
771    Lisp_Object window;    Lisp_Object window;
# Line 782  If omitted, FRAME defaults to the curren Line 783  If omitted, FRAME defaults to the curren
783    
784  DEFUN ("set-frame-selected-window", Fset_frame_selected_window,  DEFUN ("set-frame-selected-window", Fset_frame_selected_window,
785         Sset_frame_selected_window, 2, 2, 0,         Sset_frame_selected_window, 2, 2, 0,
786    "Set the selected window of frame object FRAME to WINDOW.\n\         doc: /* Set the selected window of frame object FRAME to WINDOW.
787  If FRAME is nil, the selected frame is used.\n\  If FRAME is nil, the selected frame is used.
788  If FRAME is the selected frame, this makes WINDOW the selected window.")  If FRAME is the selected frame, this makes WINDOW the selected window.  */)
789    (frame, window)       (frame, window)
790       Lisp_Object frame, window;       Lisp_Object frame, window;
791  {  {
792    if (NILP (frame))    if (NILP (frame))
# Line 805  If FRAME is the selected frame, this mak Line 806  If FRAME is the selected frame, this mak
806    
807  DEFUN ("frame-list", Fframe_list, Sframe_list,  DEFUN ("frame-list", Fframe_list, Sframe_list,
808         0, 0, 0,         0, 0, 0,
809         "Return a list of all frames.")         doc: /* Return a list of all frames.  */)
810    ()       ()
811  {  {
812    Lisp_Object frames;    Lisp_Object frames;
813    frames = Fcopy_sequence (Vframe_list);    frames = Fcopy_sequence (Vframe_list);
# Line 975  prev_frame (frame, minibuf) Line 976  prev_frame (frame, minibuf)
976    
977    
978  DEFUN ("next-frame", Fnext_frame, Snext_frame, 0, 2, 0,  DEFUN ("next-frame", Fnext_frame, Snext_frame, 0, 2, 0,
979    "Return the next frame in the frame list after FRAME.\n\         doc: /* Return the next frame in the frame list after FRAME.
980  It considers only frames on the same terminal as FRAME.\n\  It considers only frames on the same terminal as FRAME.
981  By default, skip minibuffer-only frames.\n\  By default, skip minibuffer-only frames.
982  If omitted, FRAME defaults to the selected frame.\n\  If omitted, FRAME defaults to the selected frame.
983  If optional argument MINIFRAME is nil, exclude minibuffer-only frames.\n\  If optional argument MINIFRAME is nil, exclude minibuffer-only frames.
984  If MINIFRAME is a window, include only its own frame\n\  If MINIFRAME is a window, include only its own frame
985  and any frame now using that window as the minibuffer.\n\  and any frame now using that window as the minibuffer.
986  If MINIFRAME is `visible', include all visible frames.\n\  If MINIFRAME is `visible', include all visible frames.
987  If MINIFRAME is 0, include all visible and iconified frames.\n\  If MINIFRAME is 0, include all visible and iconified frames.
988  Otherwise, include all frames.")  Otherwise, include all frames.  */)
989    (frame, miniframe)       (frame, miniframe)
990       Lisp_Object frame, miniframe;       Lisp_Object frame, miniframe;
991  {  {
992    if (NILP (frame))    if (NILP (frame))
# Line 996  Otherwise, include all frames.") Line 997  Otherwise, include all frames.")
997  }  }
998    
999  DEFUN ("previous-frame", Fprevious_frame, Sprevious_frame, 0, 2, 0,  DEFUN ("previous-frame", Fprevious_frame, Sprevious_frame, 0, 2, 0,
1000    "Return the previous frame in the frame list before FRAME.\n\         doc: /* Return the previous frame in the frame list before FRAME.
1001  It considers only frames on the same terminal as FRAME.\n\  It considers only frames on the same terminal as FRAME.
1002  By default, skip minibuffer-only frames.\n\  By default, skip minibuffer-only frames.
1003  If omitted, FRAME defaults to the selected frame.\n\  If omitted, FRAME defaults to the selected frame.
1004  If optional argument MINIFRAME is nil, exclude minibuffer-only frames.\n\  If optional argument MINIFRAME is nil, exclude minibuffer-only frames.
1005  If MINIFRAME is a window, include only its own frame\n\  If MINIFRAME is a window, include only its own frame
1006  and any frame now using that window as the minibuffer.\n\  and any frame now using that window as the minibuffer.
1007  If MINIFRAME is `visible', include all visible frames.\n\  If MINIFRAME is `visible', include all visible frames.
1008  If MINIFRAME is 0, include all visible and iconified frames.\n\  If MINIFRAME is 0, include all visible and iconified frames.
1009  Otherwise, include all frames.")  Otherwise, include all frames.  */)
1010    (frame, miniframe)       (frame, miniframe)
1011       Lisp_Object frame, miniframe;       Lisp_Object frame, miniframe;
1012  {  {
1013    if (NILP (frame))    if (NILP (frame))
# Line 1061  other_visible_frames (f) Line 1062  other_visible_frames (f)
1062  }  }
1063    
1064  DEFUN ("delete-frame", Fdelete_frame, Sdelete_frame, 0, 2, "",  DEFUN ("delete-frame", Fdelete_frame, Sdelete_frame, 0, 2, "",
1065    "Delete FRAME, permanently eliminating it from use.\n\         doc: /* Delete FRAME, permanently eliminating it from use.
1066  If omitted, FRAME defaults to the selected frame.\n\  If omitted, FRAME defaults to the selected frame.
1067  A frame may not be deleted if its minibuffer is used by other frames.\n\  A frame may not be deleted if its minibuffer is used by other frames.
1068  Normally, you may not delete a frame if all other frames are invisible,\n\  Normally, you may not delete a frame if all other frames are invisible,
1069  but if the second optional argument FORCE is non-nil, you may do so.\n\  but if the second optional argument FORCE is non-nil, you may do so.
1070  \n\  
1071  This function runs `delete-frame-hook' before actually deleting the\n\  This function runs `delete-frame-hook' before actually deleting the
1072  frame.  The hook is called with one argument FRAME.")  frame.  The hook is called with one argument FRAME.  */)
1073    (frame, force)       (frame, force)
1074       Lisp_Object frame, force;       Lisp_Object frame, force;
1075  {  {
1076    struct frame *f;    struct frame *f;
# Line 1313  frame.  The hook is called with one argu Line 1314  frame.  The hook is called with one argu
1314  /* Return mouse position in character cell units.  */  /* Return mouse position in character cell units.  */
1315    
1316  DEFUN ("mouse-position", Fmouse_position, Smouse_position, 0, 0, 0,  DEFUN ("mouse-position", Fmouse_position, Smouse_position, 0, 0, 0,
1317    "Return a list (FRAME X . Y) giving the current mouse frame and position.\n\         doc: /* Return a list (FRAME X . Y) giving the current mouse frame and position.
1318  The position is given in character cells, where (0, 0) is the\n\  The position is given in character cells, where (0, 0) is the
1319  upper-left corner.\n\  upper-left corner.
1320  If Emacs is running on a mouseless terminal or hasn't been programmed\n\  If Emacs is running on a mouseless terminal or hasn't been programmed
1321  to read the mouse position, it returns the selected frame for FRAME\n\  to read the mouse position, it returns the selected frame for FRAME
1322  and nil for X and Y.\n\  and nil for X and Y.
1323  If `mouse-position-function' is non-nil, `mouse-position' calls it,\n\  If `mouse-position-function' is non-nil, `mouse-position' calls it,
1324  passing the normal return value to that function as an argument,\n\  passing the normal return value to that function as an argument,
1325  and returns whatever that function returns.")  and returns whatever that function returns.  */)
1326    ()       ()
1327  {  {
1328    FRAME_PTR f;    FRAME_PTR f;
1329    Lisp_Object lispy_dummy;    Lisp_Object lispy_dummy;
# Line 1361  and returns whatever that function retur Line 1362  and returns whatever that function retur
1362    
1363  DEFUN ("mouse-pixel-position", Fmouse_pixel_position,  DEFUN ("mouse-pixel-position", Fmouse_pixel_position,
1364         Smouse_pixel_position, 0, 0, 0,         Smouse_pixel_position, 0, 0, 0,
1365    "Return a list (FRAME X . Y) giving the current mouse frame and position.\n\         doc: /* Return a list (FRAME X . Y) giving the current mouse frame and position.
1366  The position is given in pixel units, where (0, 0) is the\n\  The position is given in pixel units, where (0, 0) is the
1367  upper-left corner.\n\  upper-left corner.
1368  If Emacs is running on a mouseless terminal or hasn't been programmed\n\  If Emacs is running on a mouseless terminal or hasn't been programmed
1369  to read the mouse position, it returns the selected frame for FRAME\n\  to read the mouse position, it returns the selected frame for FRAME
1370  and nil for X and Y.")  and nil for X and Y.  */)
1371    ()       ()
1372  {  {
1373    FRAME_PTR f;    FRAME_PTR f;
1374    Lisp_Object lispy_dummy;    Lisp_Object lispy_dummy;
# Line 1391  and nil for X and Y.") Line 1392  and nil for X and Y.")
1392  }  }
1393    
1394  DEFUN ("set-mouse-position", Fset_mouse_position, Sset_mouse_position, 3, 3, 0,  DEFUN ("set-mouse-position", Fset_mouse_position, Sset_mouse_position, 3, 3, 0,
1395    "Move the mouse pointer to the center of character cell (X,Y) in FRAME.\n\         doc: /* Move the mouse pointer to the center of character cell (X,Y) in FRAME.
1396  Coordinates are relative to the frame, not a window,\n\  Coordinates are relative to the frame, not a window,
1397  so the coordinates of the top left character in the frame\n\  so the coordinates of the top left character in the frame
1398  may be nonzero due to left-hand scroll bars or the menu bar.\n\  may be nonzero due to left-hand scroll bars or the menu bar.
1399  \n\  
1400  This function is a no-op for an X frame that is not visible.\n\  This function is a no-op for an X frame that is not visible.
1401  If you have just created a frame, you must wait for it to become visible\n\  If you have just created a frame, you must wait for it to become visible
1402  before calling this function on it, like this.\n\  before calling this function on it, like this.
1403    (while (not (frame-visible-p frame)) (sleep-for .5))")    (while (not (frame-visible-p frame)) (sleep-for .5))  */)
1404    (frame, x, y)    (frame, x, y)
1405       Lisp_Object frame, x, y;       Lisp_Object frame, x, y;
1406  {  {
# Line 1427  before calling this function on it, like Line 1428  before calling this function on it, like
1428    
1429  DEFUN ("set-mouse-pixel-position", Fset_mouse_pixel_position,  DEFUN ("set-mouse-pixel-position", Fset_mouse_pixel_position,
1430         Sset_mouse_pixel_position, 3, 3, 0,         Sset_mouse_pixel_position, 3, 3, 0,
1431    "Move the mouse pointer to pixel position (X,Y) in FRAME.\n\         doc: /* Move the mouse pointer to pixel position (X,Y) in FRAME.
1432  Note, this is a no-op for an X frame that is not visible.\n\  Note, this is a no-op for an X frame that is not visible.
1433  If you have just created a frame, you must wait for it to become visible\n\  If you have just created a frame, you must wait for it to become visible
1434  before calling this function on it, like this.\n\  before calling this function on it, like this.
1435    (while (not (frame-visible-p frame)) (sleep-for .5))")    (while (not (frame-visible-p frame)) (sleep-for .5))  */)
1436    (frame, x, y)    (frame, x, y)
1437       Lisp_Object frame, x, y;       Lisp_Object frame, x, y;
1438  {  {
# Line 1461  static void make_frame_visible_1 P_ ((Li Line 1462  static void make_frame_visible_1 P_ ((Li
1462    
1463  DEFUN ("make-frame-visible", Fmake_frame_visible, Smake_frame_visible,  DEFUN ("make-frame-visible", Fmake_frame_visible, Smake_frame_visible,
1464         0, 1, "",         0, 1, "",
1465    "Make the frame FRAME visible (assuming it is an X window).\n\         doc: /* Make the frame FRAME visible (assuming it is an X window).
1466  If omitted, FRAME defaults to the currently selected frame.")  If omitted, FRAME defaults to the currently selected frame.  */)
1467    (frame)       (frame)
1468       Lisp_Object frame;       Lisp_Object frame;
1469  {  {
1470    if (NILP (frame))    if (NILP (frame))
# Line 1513  make_frame_visible_1 (window) Line 1514  make_frame_visible_1 (window)
1514    
1515  DEFUN ("make-frame-invisible", Fmake_frame_invisible, Smake_frame_invisible,  DEFUN ("make-frame-invisible", Fmake_frame_invisible, Smake_frame_invisible,
1516         0, 2, "",         0, 2, "",
1517    "Make the frame FRAME invisible (assuming it is an X window).\n\         doc: /* Make the frame FRAME invisible (assuming it is an X window).
1518  If omitted, FRAME defaults to the currently selected frame.\n\  If omitted, FRAME defaults to the currently selected frame.
1519  Normally you may not make FRAME invisible if all other frames are invisible,\n\  Normally you may not make FRAME invisible if all other frames are invisible,
1520  but if the second optional argument FORCE is non-nil, you may do so.")  but if the second optional argument FORCE is non-nil, you may do so.  */)
1521    (frame, force)    (frame, force)
1522       Lisp_Object frame, force;       Lisp_Object frame, force;
1523  {  {
# Line 1557  but if the second optional argument FORC Line 1558  but if the second optional argument FORC
1558    
1559  DEFUN ("iconify-frame", Ficonify_frame, Siconify_frame,  DEFUN ("iconify-frame", Ficonify_frame, Siconify_frame,
1560         0, 1, "",         0, 1, "",
1561    "Make the frame FRAME into an icon.\n\         doc: /* Make the frame FRAME into an icon.
1562  If omitted, FRAME defaults to the currently selected frame.")  If omitted, FRAME defaults to the currently selected frame.  */)
1563    (frame)    (frame)
1564       Lisp_Object frame;       Lisp_Object frame;
1565  {  {
# Line 1596  If omitted, FRAME defaults to the curren Line 1597  If omitted, FRAME defaults to the curren
1597    
1598  DEFUN ("frame-visible-p", Fframe_visible_p, Sframe_visible_p,  DEFUN ("frame-visible-p", Fframe_visible_p, Sframe_visible_p,
1599         1, 1, 0,         1, 1, 0,
1600         "Return t if FRAME is now \"visible\" (actually in use for display).\n\         doc: /* Return t if FRAME is now \"visible\" (actually in use for display).
1601  A frame that is not \"visible\" is not updated and, if it works through\n\  A frame that is not \"visible\" is not updated and, if it works through
1602  a window system, it may not show at all.\n\  a window system, it may not show at all.
1603  Return the symbol `icon' if frame is visible only as an icon.")  Return the symbol `icon' if frame is visible only as an icon.  */)
1604    (frame)       (frame)
1605       Lisp_Object frame;       Lisp_Object frame;
1606  {  {
1607    CHECK_LIVE_FRAME (frame, 0);    CHECK_LIVE_FRAME (frame, 0);
# Line 1616  Return the symbol `icon' if frame is vis Line 1617  Return the symbol `icon' if frame is vis
1617    
1618  DEFUN ("visible-frame-list", Fvisible_frame_list, Svisible_frame_list,  DEFUN ("visible-frame-list", Fvisible_frame_list, Svisible_frame_list,
1619         0, 0, 0,         0, 0, 0,
1620         "Return a list of all frames now \"visible\" (being updated).")         doc: /* Return a list of all frames now \"visible\" (being updated).  */)
1621    ()    ()
1622  {  {
1623    Lisp_Object tail, frame;    Lisp_Object tail, frame;
# Line 1638  DEFUN ("visible-frame-list", Fvisible_fr Line 1639  DEFUN ("visible-frame-list", Fvisible_fr
1639    
1640    
1641  DEFUN ("raise-frame", Fraise_frame, Sraise_frame, 0, 1, "",  DEFUN ("raise-frame", Fraise_frame, Sraise_frame, 0, 1, "",
1642    "Bring FRAME to the front, so it occludes any frames it overlaps.\n\         doc: /* Bring FRAME to the front, so it occludes any frames it overlaps.
1643  If FRAME is invisible, make it visible.\n\  If FRAME is invisible, make it visible.
1644  If you don't specify a frame, the selected frame is used.\n\  If you don't specify a frame, the selected frame is used.
1645  If Emacs is displaying on an ordinary terminal or some other device which\n\  If Emacs is displaying on an ordinary terminal or some other device which
1646  doesn't support multiple overlapping frames, this function does nothing.")  doesn't support multiple overlapping frames, this function does nothing.  */)
1647    (frame)       (frame)
1648       Lisp_Object frame;       Lisp_Object frame;
1649  {  {
1650    if (NILP (frame))    if (NILP (frame))
# Line 1662  doesn't support multiple overlapping fra Line 1663  doesn't support multiple overlapping fra
1663    
1664  /* Should we have a corresponding function called Flower_Power?  */  /* Should we have a corresponding function called Flower_Power?  */
1665  DEFUN ("lower-frame", Flower_frame, Slower_frame, 0, 1, "",  DEFUN ("lower-frame", Flower_frame, Slower_frame, 0, 1, "",
1666    "Send FRAME to the back, so it is occluded by any frames that overlap it.\n\         doc: /* Send FRAME to the back, so it is occluded by any frames that overlap it.
1667  If you don't specify a frame, the selected frame is used.\n\  If you don't specify a frame, the selected frame is used.
1668  If Emacs is displaying on an ordinary terminal or some other device which\n\  If Emacs is displaying on an ordinary terminal or some other device which
1669  doesn't support multiple overlapping frames, this function does nothing.")  doesn't support multiple overlapping frames, this function does nothing.  */)
1670    (frame)       (frame)
1671       Lisp_Object frame;       Lisp_Object frame;
1672  {  {
1673    if (NILP (frame))    if (NILP (frame))
# Line 1683  doesn't support multiple overlapping fra Line 1684  doesn't support multiple overlapping fra
1684    
1685  DEFUN ("redirect-frame-focus", Fredirect_frame_focus, Sredirect_frame_focus,  DEFUN ("redirect-frame-focus", Fredirect_frame_focus, Sredirect_frame_focus,
1686         1, 2, 0,         1, 2, 0,
1687    "Arrange for keystrokes typed at FRAME to be sent to FOCUS-FRAME.\n\         doc: /* Arrange for keystrokes typed at FRAME to be sent to FOCUS-FRAME.
1688  In other words, switch-frame events caused by events in FRAME will\n\  In other words, switch-frame events caused by events in FRAME will
1689  request a switch to FOCUS-FRAME, and `last-event-frame' will be\n\  request a switch to FOCUS-FRAME, and `last-event-frame' will be
1690  FOCUS-FRAME after reading an event typed at FRAME.\n\  FOCUS-FRAME after reading an event typed at FRAME.
1691  \n\  
1692  If FOCUS-FRAME is omitted or nil, any existing redirection is\n\  If FOCUS-FRAME is omitted or nil, any existing redirection is
1693  cancelled, and the frame again receives its own keystrokes.\n\  cancelled, and the frame again receives its own keystrokes.
1694  \n\  
1695  Focus redirection is useful for temporarily redirecting keystrokes to\n\  Focus redirection is useful for temporarily redirecting keystrokes to
1696  a surrogate minibuffer frame when a frame doesn't have its own\n\  a surrogate minibuffer frame when a frame doesn't have its own
1697  minibuffer window.\n\  minibuffer window.
1698  \n\  
1699  A frame's focus redirection can be changed by select-frame.  If frame\n\  A frame's focus redirection can be changed by select-frame.  If frame
1700  FOO is selected, and then a different frame BAR is selected, any\n\  FOO is selected, and then a different frame BAR is selected, any
1701  frames redirecting their focus to FOO are shifted to redirect their\n\  frames redirecting their focus to FOO are shifted to redirect their
1702  focus to BAR.  This allows focus redirection to work properly when the\n\  focus to BAR.  This allows focus redirection to work properly when the
1703  user switches from one frame to another using `select-window'.\n\  user switches from one frame to another using `select-window'.
1704  \n\  
1705  This means that a frame whose focus is redirected to itself is treated\n\  This means that a frame whose focus is redirected to itself is treated
1706  differently from a frame whose focus is redirected to nil; the former\n\  differently from a frame whose focus is redirected to nil; the former
1707  is affected by select-frame, while the latter is not.\n\  is affected by select-frame, while the latter is not.
1708  \n\  
1709  The redirection lasts until `redirect-frame-focus' is called to change it.")  The redirection lasts until `redirect-frame-focus' is called to change it.  */)
1710    (frame, focus_frame)       (frame, focus_frame)
1711      Lisp_Object frame, focus_frame;       Lisp_Object frame, focus_frame;
1712  {  {
1713    /* Note that we don't check for a live frame here.  It's reasonable    /* Note that we don't check for a live frame here.  It's reasonable
1714       to redirect the focus of a frame you're about to delete, if you       to redirect the focus of a frame you're about to delete, if you
# Line 1727  The redirection lasts until `redirect-fr Line 1728  The redirection lasts until `redirect-fr
1728    
1729    
1730  DEFUN ("frame-focus", Fframe_focus, Sframe_focus, 1, 1, 0,  DEFUN ("frame-focus", Fframe_focus, Sframe_focus, 1, 1, 0,
1731    "Return the frame to which FRAME's keystrokes are currently being sent.\n\         doc: /* Return the frame to which FRAME's keystrokes are currently being sent.
1732  This returns nil if FRAME's focus is not redirected.\n\  This returns nil if FRAME's focus is not redirected.
1733  See `redirect-frame-focus'.")  See `redirect-frame-focus'.  */)
1734    (frame)       (frame)
1735      Lisp_Object frame;       Lisp_Object frame;
1736  {  {
1737    CHECK_LIVE_FRAME (frame, 0);    CHECK_LIVE_FRAME (frame, 0);
1738    
# Line 1960  store_frame_param (f, prop, val) Line 1961  store_frame_param (f, prop, val)
1961  }  }
1962    
1963  DEFUN ("frame-parameters", Fframe_parameters, Sframe_parameters, 0, 1, 0,  DEFUN ("frame-parameters", Fframe_parameters, Sframe_parameters, 0, 1, 0,
1964    "Return the parameters-alist of frame FRAME.\n\         doc: /* Return the parameters-alist of frame FRAME.
1965  It is a list of elements of the form (PARM . VALUE), where PARM is a symbol.\n\  It is a list of elements of the form (PARM . VALUE), where PARM is a symbol.
1966  The meaningful PARMs depend on the kind of frame.\n\  The meaningful PARMs depend on the kind of frame.
1967  If FRAME is omitted, return information on the currently selected frame.")  If FRAME is omitted, return information on the currently selected frame.  */)
1968    (frame)       (frame)
1969       Lisp_Object frame;       Lisp_Object frame;
1970  {  {
1971    Lisp_Object alist;    Lisp_Object alist;
# Line 2059  If FRAME is omitted, return information Line 2060  If FRAME is omitted, return information
2060    
2061    
2062  DEFUN ("frame-parameter", Fframe_parameter, Sframe_parameter, 2, 2, 0,  DEFUN ("frame-parameter", Fframe_parameter, Sframe_parameter, 2, 2, 0,
2063     "Return FRAME's value for parameter PARAMETER.\n\         doc: /* Return FRAME's value for parameter PARAMETER.
2064  If FRAME is nil, describe the currently selected frame.")  If FRAME is nil, describe the currently selected frame.  */)
2065    (frame, parameter)       (frame, parameter)
2066         Lisp_Object frame, parameter;       Lisp_Object frame, parameter;
2067  {  {
2068    struct frame *f;    struct frame *f;
2069    Lisp_Object value;    Lisp_Object value;
# Line 2134  If FRAME is nil, describe the currently Line 2135  If FRAME is nil, describe the currently
2135    
2136  DEFUN ("modify-frame-parameters", Fmodify_frame_parameters,  DEFUN ("modify-frame-parameters", Fmodify_frame_parameters,
2137         Smodify_frame_parameters, 2, 2, 0,         Smodify_frame_parameters, 2, 2, 0,
2138    "Modify the parameters of frame FRAME according to ALIST.\n\         doc: /* Modify the parameters of frame FRAME according to ALIST.
2139  If FRAME is nil, it defaults to the selected frame.\n\  If FRAME is nil, it defaults to the selected frame.
2140  ALIST is an alist of parameters to change and their new values.\n\  ALIST is an alist of parameters to change and their new values.
2141  Each element of ALIST has the form (PARM . VALUE), where PARM is a symbol.\n\  Each element of ALIST has the form (PARM . VALUE), where PARM is a symbol.
2142  The meaningful PARMs depend on the kind of frame.\n\  The meaningful PARMs depend on the kind of frame.
2143  Undefined PARMs are ignored, but stored in the frame's parameter list\n\  Undefined PARMs are ignored, but stored in the frame's parameter list
2144  so that `frame-parameters' will return them.\n\  so that `frame-parameters' will return them.
2145  \n\  
2146  The value of frame parameter FOO can also be accessed\n\  The value of frame parameter FOO can also be accessed
2147  as a frame-local binding for the variable FOO, if you have\n\  as a frame-local binding for the variable FOO, if you have
2148  enabled such bindings for that variable with `make-variable-frame-local'.")  enabled such bindings for that variable with `make-variable-frame-local'.  */)
2149    (frame, alist)       (frame, alist)
2150       Lisp_Object frame, alist;       Lisp_Object frame, alist;
2151  {  {
2152    FRAME_PTR f;    FRAME_PTR f;
# Line 2211  enabled such bindings for that variable Line 2212  enabled such bindings for that variable
2212  }  }
2213    
2214  DEFUN ("frame-char-height", Fframe_char_height, Sframe_char_height,  DEFUN ("frame-char-height", Fframe_char_height, Sframe_char_height,
2215    0, 1, 0,         0, 1, 0,
2216    "Height in pixels of a line in the font in frame FRAME.\n\         doc: /* Height in pixels of a line in the font in frame FRAME.
2217  If FRAME is omitted, the selected frame is used.\n\  If FRAME is omitted, the selected frame is used.
2218  For a terminal frame, the value is always 1.")  For a terminal frame, the value is always 1.  */)
2219    (frame)    (frame)
2220       Lisp_Object frame;       Lisp_Object frame;
2221  {  {
# Line 2235  For a terminal frame, the value is alway Line 2236  For a terminal frame, the value is alway
2236    
2237    
2238  DEFUN ("frame-char-width", Fframe_char_width, Sframe_char_width,  DEFUN ("frame-char-width", Fframe_char_width, Sframe_char_width,
2239    0, 1, 0,         0, 1, 0,
2240    "Width in pixels of characters in the font in frame FRAME.\n\         doc: /* Width in pixels of characters in the font in frame FRAME.
2241  If FRAME is omitted, the selected frame is used.\n\  If FRAME is omitted, the selected frame is used.
2242  The width is the same for all characters, because\n\  The width is the same for all characters, because
2243  currently Emacs supports only fixed-width fonts.\n\  currently Emacs supports only fixed-width fonts.
2244  For a terminal screen, the value is always 1.")  For a terminal screen, the value is always 1.  */)
2245    (frame)       (frame)
2246       Lisp_Object frame;       Lisp_Object frame;
2247  {  {
2248    struct frame *f;    struct frame *f;
# Line 2261  For a terminal screen, the value is alwa Line 2262  For a terminal screen, the value is alwa
2262    
2263  DEFUN ("frame-pixel-height", Fframe_pixel_height,  DEFUN ("frame-pixel-height", Fframe_pixel_height,
2264         Sframe_pixel_height, 0, 1, 0,         Sframe_pixel_height, 0, 1, 0,
2265    "Return a FRAME's height in pixels.\n\         doc: /* Return a FRAME's height in pixels.
2266  This counts only the height available for text lines,\n\  This counts only the height available for text lines,
2267  not menu bars on window-system Emacs frames.\n\  not menu bars on window-system Emacs frames.
2268  For a terminal frame, the result really gives the height in characters.\n\  For a terminal frame, the result really gives the height in characters.
2269  If FRAME is omitted, the selected frame is used.")  If FRAME is omitted, the selected frame is used.  */)
2270    (frame)       (frame)
2271       Lisp_Object frame;       Lisp_Object frame;
2272  {  {
2273    struct frame *f;    struct frame *f;
# Line 2286  If FRAME is omitted, the selected frame Line 2287  If FRAME is omitted, the selected frame
2287    
2288  DEFUN ("frame-pixel-width", Fframe_pixel_width,  DEFUN ("frame-pixel-width", Fframe_pixel_width,
2289         Sframe_pixel_width, 0, 1, 0,         Sframe_pixel_width, 0, 1, 0,
2290    "Return FRAME's width in pixels.\n\         doc: /* Return FRAME's width in pixels.
2291  For a terminal frame, the result really gives the width in characters.\n\  For a terminal frame, the result really gives the width in characters.
2292  If FRAME is omitted, the selected frame is used.")  If FRAME is omitted, the selected frame is used.  */)
2293    (frame)       (frame)
2294       Lisp_Object frame;       Lisp_Object frame;
2295  {  {
2296    struct frame *f;    struct frame *f;
# Line 2308  If FRAME is omitted, the selected frame Line 2309  If FRAME is omitted, the selected frame
2309  }  }
2310    
2311  DEFUN ("set-frame-height", Fset_frame_height, Sset_frame_height, 2, 3, 0,  DEFUN ("set-frame-height", Fset_frame_height, Sset_frame_height, 2, 3, 0,
2312    "Specify that the frame FRAME has LINES lines.\n\         doc: /* Specify that the frame FRAME has LINES lines.
2313  Optional third arg non-nil means that redisplay should use LINES lines\n\  Optional third arg non-nil means that redisplay should use LINES lines
2314  but that the idea of the actual height of the frame should not be changed.")  but that the idea of the actual height of the frame should not be changed.  */)
2315    (frame, lines, pretend)       (frame, lines, pretend)
2316       Lisp_Object frame, lines, pretend;       Lisp_Object frame, lines, pretend;
2317  {  {
2318    register struct frame *f;    register struct frame *f;
# Line 2337  but that the idea of the actual height o Line 2338  but that the idea of the actual height o
2338  }  }
2339    
2340  DEFUN ("set-frame-width", Fset_frame_width, Sset_frame_width, 2, 3, 0,  DEFUN ("set-frame-width", Fset_frame_width, Sset_frame_width, 2, 3, 0,
2341    "Specify that the frame FRAME has COLS columns.\n\         doc: /* Specify that the frame FRAME has COLS columns.
2342  Optional third arg non-nil means that redisplay should use COLS columns\n\  Optional third arg non-nil means that redisplay should use COLS columns
2343  but that the idea of the actual width of the frame should not be changed.")  but that the idea of the actual width of the frame should not be changed.  */)
2344    (frame, cols, pretend)       (frame, cols, pretend)
2345       Lisp_Object frame, cols, pretend;       Lisp_Object frame, cols, pretend;
2346  {  {
2347    register struct frame *f;    register struct frame *f;
# Line 2365  but that the idea of the actual width of Line 2366  but that the idea of the actual width of
2366  }  }
2367    
2368  DEFUN ("set-frame-size", Fset_frame_size, Sset_frame_size, 3, 3, 0,  DEFUN ("set-frame-size", Fset_frame_size, Sset_frame_size, 3, 3, 0,
2369    "Sets size of FRAME to COLS by ROWS, measured in characters.")         doc: /* Sets size of FRAME to COLS by ROWS, measured in characters.  */)
2370    (frame, cols, rows)       (frame, cols, rows)
2371       Lisp_Object frame, cols, rows;       Lisp_Object frame, cols, rows;
2372  {  {
2373    register struct frame *f;    register struct frame *f;
# Line 2394  DEFUN ("set-frame-size", Fset_frame_size Line 2395  DEFUN ("set-frame-size", Fset_frame_size
2395    
2396  DEFUN ("set-frame-position", Fset_frame_position,  DEFUN ("set-frame-position", Fset_frame_position,
2397         Sset_frame_position, 3, 3, 0,         Sset_frame_position, 3, 3, 0,
2398    "Sets position of FRAME in pixels to XOFFSET by YOFFSET.\n\         doc: /* Sets position of FRAME in pixels to XOFFSET by YOFFSET.
2399  This is actually the position of the upper left corner of the frame.\n\  This is actually the position of the upper left corner of the frame.
2400  Negative values for XOFFSET or YOFFSET are interpreted relative to\n\  Negative values for XOFFSET or YOFFSET are interpreted relative to
2401  the rightmost or bottommost possible position (that stays within the screen).")  the rightmost or bottommost possible position (that stays within the screen).  */)
2402    (frame, xoffset, yoffset)       (frame, xoffset, yoffset)
2403       Lisp_Object frame, xoffset, yoffset;       Lisp_Object frame, xoffset, yoffset;
2404  {  {
2405    register struct frame *f;    register struct frame *f;
# Line 2467  syms_of_frame () Line 2468  syms_of_frame ()
2468    staticpro (&Qbackground_mode);    staticpro (&Qbackground_mode);
2469    
2470    DEFVAR_LISP ("default-frame-alist", &Vdefault_frame_alist,    DEFVAR_LISP ("default-frame-alist", &Vdefault_frame_alist,
2471      "Alist of default values for frame creation.\n\                 doc: /* Alist of default values for frame creation.
2472  These may be set in your init file, like this:\n\  These may be set in your init file, like this:
2473    (setq default-frame-alist '((width . 80) (height . 55) (menu-bar-lines . 1))\n\    (setq default-frame-alist '((width . 80) (height . 55) (menu-bar-lines . 1))
2474  These override values given in window system configuration data,\n\  These override values given in window system configuration data,
2475   including X Windows' defaults database.\n\   including X Windows' defaults database.
2476  For values specific to the first Emacs frame, see `initial-frame-alist'.\n\  For values specific to the first Emacs frame, see `initial-frame-alist'.
2477  For values specific to the separate minibuffer frame, see\n\  For values specific to the separate minibuffer frame, see
2478   `minibuffer-frame-alist'.\n\   `minibuffer-frame-alist'.
2479  The `menu-bar-lines' element of the list controls whether new frames\n\  The `menu-bar-lines' element of the list controls whether new frames
2480   have menu bars; `menu-bar-mode' works by altering this element.");   have menu bars; `menu-bar-mode' works by altering this element.  */);
2481    Vdefault_frame_alist = Qnil;    Vdefault_frame_alist = Qnil;
2482    
2483    Qinhibit_default_face_x_resources    Qinhibit_default_face_x_resources
# Line 2484  The `menu-bar-lines' element of the list Line 2485  The `menu-bar-lines' element of the list
2485    staticpro (&Qinhibit_default_face_x_resources);    staticpro (&Qinhibit_default_face_x_resources);
2486    
2487    DEFVAR_LISP ("terminal-frame", &Vterminal_frame,    DEFVAR_LISP ("terminal-frame", &Vterminal_frame,
2488      "The initial frame-object, which represents Emacs's stdout.");                 doc: /* The initial frame-object, which represents Emacs's stdout.  */);
2489    
2490    DEFVAR_LISP ("emacs-iconified", &Vemacs_iconified,    DEFVAR_LISP ("emacs-iconified", &Vemacs_iconified,
2491      "Non-nil if all of emacs is iconified and frame updates are not needed.");                 doc: /* Non-nil if all of emacs is iconified and frame updates are not needed.  */);
2492    Vemacs_iconified = Qnil;    Vemacs_iconified = Qnil;
2493    
2494    DEFVAR_LISP ("mouse-position-function", &Vmouse_position_function,    DEFVAR_LISP ("mouse-position-function", &Vmouse_position_function,
2495      "If non-nil, function to transform normal value of `mouse-position'.\n\                 doc: /* If non-nil, function to transform normal value of `mouse-position'.
2496  `mouse-position' calls this function, passing its usual return value as\n\  `mouse-position' calls this function, passing its usual return value as
2497  argument, and returns whatever this function returns.\n\  argument, and returns whatever this function returns.
2498  This abnormal hook exists for the benefit of packages like `xt-mouse.el'\n\  This abnormal hook exists for the benefit of packages like `xt-mouse.el'
2499  which need to do mouse handling at the Lisp level.");  which need to do mouse handling at the Lisp level.  */);
2500    Vmouse_position_function = Qnil;    Vmouse_position_function = Qnil;
2501    
2502    DEFVAR_KBOARD ("default-minibuffer-frame", Vdefault_minibuffer_frame,    DEFVAR_KBOARD ("default-minibuffer-frame", Vdefault_minibuffer_frame,
2503      "Minibufferless frames use this frame's minibuffer.\n\                   doc: /* Minibufferless frames use this frame's minibuffer.
2504  \n\  
2505  Emacs cannot create minibufferless frames unless this is set to an\n\  Emacs cannot create minibufferless frames unless this is set to an
2506  appropriate surrogate.\n\  appropriate surrogate.
2507  \n\  
2508  Emacs consults this variable only when creating minibufferless\n\  Emacs consults this variable only when creating minibufferless
2509  frames; once the frame is created, it sticks with its assigned\n\  frames; once the frame is created, it sticks with its assigned
2510  minibuffer, no matter what this variable is set to.  This means that\n\  minibuffer, no matter what this variable is set to.  This means that
2511  this variable doesn't necessarily say anything meaningful about the\n\  this variable doesn't necessarily say anything meaningful about the
2512  current set of frames, or where the minibuffer is currently being\n\  current set of frames, or where the minibuffer is currently being
2513  displayed.\n\  displayed.
2514  \n\  
2515  This variable is local to the current terminal and cannot be buffer-local.");  This variable is local to the current terminal and cannot be buffer-local.  */);
2516    
2517    staticpro (&Vframe_list);    staticpro (&Vframe_list);
2518    

Legend:
Removed from v.1.269  
changed lines
  Added in v.1.270

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