comparison src/glyphs-x.c @ 20:859a2309aef8 r19-15b93

Import from CVS: tag r19-15b93
author cvs
date Mon, 13 Aug 2007 08:50:05 +0200
parents 0293115a14e9
children 4103f0995bd7
comparison
equal deleted inserted replaced
19:ac1f612d5250 20:859a2309aef8
3514 This can be dealt with in the new redisplay. */ 3514 This can be dealt with in the new redisplay. */
3515 3515
3516 /* #### These are completely un-re-implemented in 19.14. Get it done 3516 /* #### These are completely un-re-implemented in 19.14. Get it done
3517 for 19.15. */ 3517 for 19.15. */
3518 3518
3519 DEFUN ("make-subwindow", Fmake_subwindow, Smake_subwindow, 3519 DEFUN ("make-subwindow", Fmake_subwindow, 0, 3, 0, /*
3520 0, 3, 0 /*
3521 Creates a new `subwindow' object of size WIDTH x HEIGHT. 3520 Creates a new `subwindow' object of size WIDTH x HEIGHT.
3522 The default is a window of size 1x1, which is also the minimum allowed 3521 The default is a window of size 1x1, which is also the minimum allowed
3523 window size. Subwindows are per-frame. A buffer being shown in two 3522 window size. Subwindows are per-frame. A buffer being shown in two
3524 different frames will only display a subwindow glyph in the frame in 3523 different frames will only display a subwindow glyph in the frame in
3525 which it was actually created. If two windows on the same frame are 3524 which it was actually created. If two windows on the same frame are
3526 displaying the buffer then the most recently used window will actually 3525 displaying the buffer then the most recently used window will actually
3527 display the window. If the frame is not specified, the selected frame 3526 display the window. If the frame is not specified, the selected frame
3528 is used. 3527 is used.
3529 3528
3530 Subwindows are not currently implemented. 3529 Subwindows are not currently implemented.
3531 */ ) 3530 */
3532 (width, height, frame) 3531 (width, height, frame))
3533 Lisp_Object width, height, frame;
3534 { 3532 {
3535 Display *dpy; 3533 Display *dpy;
3536 Screen *xs; 3534 Screen *xs;
3537 Window pw; 3535 Window pw;
3538 struct frame *f; 3536 struct frame *f;
3589 return val; 3587 return val;
3590 } 3588 }
3591 } 3589 }
3592 3590
3593 /* #### Should this function exist? */ 3591 /* #### Should this function exist? */
3594 DEFUN ("change-subwindow-property", Fchange_subwindow_property, 3592 DEFUN ("change-subwindow-property", Fchange_subwindow_property, 3, 3, 0, /*
3595 Schange_subwindow_property, 3, 3, 0 /*
3596 For the given SUBWINDOW, set PROPERTY to DATA, which is a string. 3593 For the given SUBWINDOW, set PROPERTY to DATA, which is a string.
3597 Subwindows are not currently implemented. 3594 Subwindows are not currently implemented.
3598 */ ) 3595 */
3599 (subwindow, property, data) 3596 (subwindow, property, data))
3600 Lisp_Object subwindow, property, data;
3601 { 3597 {
3602 Atom property_atom; 3598 Atom property_atom;
3603 struct Lisp_Subwindow *sw; 3599 struct Lisp_Subwindow *sw;
3604 Display *dpy; 3600 Display *dpy;
3605 3601
3618 XSTRING_LENGTH (data)); 3614 XSTRING_LENGTH (data));
3619 3615
3620 return (property); 3616 return (property);
3621 } 3617 }
3622 3618
3623 DEFUN ("subwindowp", Fsubwindowp, Ssubwindowp, 1, 1, 0 /* 3619 DEFUN ("subwindowp", Fsubwindowp, 1, 1, 0, /*
3624 Return non-nil if OBJECT is a subwindow. 3620 Return non-nil if OBJECT is a subwindow.
3625 Subwindows are not currently implemented. 3621 Subwindows are not currently implemented.
3626 */ ) 3622 */
3627 (object) 3623 (object))
3628 Lisp_Object object;
3629 { 3624 {
3630 return (SUBWINDOWP (object) ? Qt : Qnil); 3625 return (SUBWINDOWP (object) ? Qt : Qnil);
3631 } 3626 }
3632 3627
3633 DEFUN ("subwindow-width", Fsubwindow_width, Ssubwindow_width, 3628 DEFUN ("subwindow-width", Fsubwindow_width, 1, 1, 0, /*
3634 1, 1, 0 /*
3635 Width of SUBWINDOW. 3629 Width of SUBWINDOW.
3636 Subwindows are not currently implemented. 3630 Subwindows are not currently implemented.
3637 */ ) 3631 */
3638 (subwindow) 3632 (subwindow))
3639 Lisp_Object subwindow;
3640 { 3633 {
3641 CHECK_SUBWINDOW (subwindow); 3634 CHECK_SUBWINDOW (subwindow);
3642 return (make_int (XSUBWINDOW (subwindow)->width)); 3635 return (make_int (XSUBWINDOW (subwindow)->width));
3643 } 3636 }
3644 3637
3645 DEFUN ("subwindow-height", Fsubwindow_height, Ssubwindow_height, 3638 DEFUN ("subwindow-height", Fsubwindow_height, 1, 1, 0, /*
3646 1, 1, 0 /*
3647 Height of SUBWINDOW. 3639 Height of SUBWINDOW.
3648 Subwindows are not currently implemented. 3640 Subwindows are not currently implemented.
3649 */ ) 3641 */
3650 (subwindow) 3642 (subwindow))
3651 Lisp_Object subwindow;
3652 { 3643 {
3653 CHECK_SUBWINDOW (subwindow); 3644 CHECK_SUBWINDOW (subwindow);
3654 return (make_int (XSUBWINDOW (subwindow)->height)); 3645 return (make_int (XSUBWINDOW (subwindow)->height));
3655 } 3646 }
3656 3647
3657 DEFUN ("subwindow-xid", Fsubwindow_xid, Ssubwindow_xid, 1, 1, 0 /* 3648 DEFUN ("subwindow-xid", Fsubwindow_xid, 1, 1, 0, /*
3658 Return the xid of SUBWINDOW as a number. 3649 Return the xid of SUBWINDOW as a number.
3659 Subwindows are not currently implemented. 3650 Subwindows are not currently implemented.
3660 */ ) 3651 */
3661 (subwindow) 3652 (subwindow))
3662 Lisp_Object subwindow;
3663 { 3653 {
3664 CHECK_SUBWINDOW (subwindow); 3654 CHECK_SUBWINDOW (subwindow);
3665 return (make_int (XSUBWINDOW (subwindow)->subwindow)); 3655 return (make_int (XSUBWINDOW (subwindow)->subwindow));
3666 } 3656 }
3667 3657
3668 DEFUN ("resize-subwindow", Fresize_subwindow, Sresize_subwindow, 3658 DEFUN ("resize-subwindow", Fresize_subwindow, 1, 3, 0, /*
3669 1, 3, 0 /*
3670 Resize SUBWINDOW to WIDTH x HEIGHT. 3659 Resize SUBWINDOW to WIDTH x HEIGHT.
3671 If a value is nil that parameter is not changed. 3660 If a value is nil that parameter is not changed.
3672 Subwindows are not currently implemented. 3661 Subwindows are not currently implemented.
3673 */ ) 3662 */
3674 (subwindow, width, height) 3663 (subwindow, width, height))
3675 Lisp_Object subwindow, width, height;
3676 { 3664 {
3677 int neww, newh; 3665 int neww, newh;
3678 struct Lisp_Subwindow *sw; 3666 struct Lisp_Subwindow *sw;
3679 3667
3680 CHECK_SUBWINDOW (subwindow); 3668 CHECK_SUBWINDOW (subwindow);
3696 sw->width = neww; 3684 sw->width = neww;
3697 3685
3698 return subwindow; 3686 return subwindow;
3699 } 3687 }
3700 3688
3701 DEFUN ("force-subwindow-map", Fforce_subwindow_map, 3689 DEFUN ("force-subwindow-map", Fforce_subwindow_map, 1, 1, 0, /*
3702 Sforce_subwindow_map, 1, 1, 0 /*
3703 Generate a Map event for SUBWINDOW. 3690 Generate a Map event for SUBWINDOW.
3704 Subwindows are not currently implemented. 3691 Subwindows are not currently implemented.
3705 */ ) 3692 */
3706 (subwindow) 3693 (subwindow))
3707 Lisp_Object subwindow;
3708 { 3694 {
3709 CHECK_SUBWINDOW (subwindow); 3695 CHECK_SUBWINDOW (subwindow);
3710 3696
3711 XMapWindow (DisplayOfScreen (XSUBWINDOW (subwindow)->xscreen), 3697 XMapWindow (DisplayOfScreen (XSUBWINDOW (subwindow)->xscreen),
3712 XSUBWINDOW (subwindow)->subwindow); 3698 XSUBWINDOW (subwindow)->subwindow);
3722 void 3708 void
3723 syms_of_glyphs_x (void) 3709 syms_of_glyphs_x (void)
3724 { 3710 {
3725 defsymbol (&Qsubwindowp, "subwindowp"); 3711 defsymbol (&Qsubwindowp, "subwindowp");
3726 3712
3727 defsubr (&Smake_subwindow); 3713 DEFSUBR (Fmake_subwindow);
3728 defsubr (&Schange_subwindow_property); 3714 DEFSUBR (Fchange_subwindow_property);
3729 defsubr (&Ssubwindowp); 3715 DEFSUBR (Fsubwindowp);
3730 defsubr (&Ssubwindow_width); 3716 DEFSUBR (Fsubwindow_width);
3731 defsubr (&Ssubwindow_height); 3717 DEFSUBR (Fsubwindow_height);
3732 defsubr (&Ssubwindow_xid); 3718 DEFSUBR (Fsubwindow_xid);
3733 defsubr (&Sresize_subwindow); 3719 DEFSUBR (Fresize_subwindow);
3734 defsubr (&Sforce_subwindow_map); 3720 DEFSUBR (Fforce_subwindow_map);
3735 3721
3736 defkeyword (&Q_mask_file, ":mask-file"); 3722 defkeyword (&Q_mask_file, ":mask-file");
3737 defkeyword (&Q_mask_data, ":mask-data"); 3723 defkeyword (&Q_mask_data, ":mask-data");
3738 defkeyword (&Q_hotspot_x, ":hotspot-x"); 3724 defkeyword (&Q_hotspot_x, ":hotspot-x");
3739 defkeyword (&Q_hotspot_y, ":hotspot-y"); 3725 defkeyword (&Q_hotspot_y, ":hotspot-y");