comparison src/toolbar.c @ 398:74fd4e045ea6 r21-2-29

Import from CVS: tag r21-2-29
author cvs
date Mon, 13 Aug 2007 11:13:30 +0200
parents 8626e4521993
children a86b2b5e0111
comparison
equal deleted inserted replaced
397:f4aeb21a5bad 398:74fd4e045ea6
55 55
56 Lisp_Object Qinit_toolbar_from_resources; 56 Lisp_Object Qinit_toolbar_from_resources;
57 57
58 58
59 static Lisp_Object 59 static Lisp_Object
60 mark_toolbar_button (Lisp_Object obj, void (*markobj) (Lisp_Object)) 60 mark_toolbar_button (Lisp_Object obj)
61 { 61 {
62 struct toolbar_button *data = XTOOLBAR_BUTTON (obj); 62 struct toolbar_button *data = XTOOLBAR_BUTTON (obj);
63 markobj (data->next); 63 mark_object (data->next);
64 markobj (data->frame); 64 mark_object (data->frame);
65 markobj (data->up_glyph); 65 mark_object (data->up_glyph);
66 markobj (data->down_glyph); 66 mark_object (data->down_glyph);
67 markobj (data->disabled_glyph); 67 mark_object (data->disabled_glyph);
68 markobj (data->cap_up_glyph); 68 mark_object (data->cap_up_glyph);
69 markobj (data->cap_down_glyph); 69 mark_object (data->cap_down_glyph);
70 markobj (data->cap_disabled_glyph); 70 mark_object (data->cap_disabled_glyph);
71 markobj (data->callback); 71 mark_object (data->callback);
72 markobj (data->enabled_p); 72 mark_object (data->enabled_p);
73 return data->help_string; 73 return data->help_string;
74 } 74 }
75 75
76 static void 76 static void
77 print_toolbar_button (Lisp_Object obj, Lisp_Object printcharfun, 77 print_toolbar_button (Lisp_Object obj, Lisp_Object printcharfun,
88 write_c_string (buf, printcharfun); 88 write_c_string (buf, printcharfun);
89 } 89 }
90 90
91 DEFINE_LRECORD_IMPLEMENTATION ("toolbar-button", toolbar_button, 91 DEFINE_LRECORD_IMPLEMENTATION ("toolbar-button", toolbar_button,
92 mark_toolbar_button, print_toolbar_button, 92 mark_toolbar_button, print_toolbar_button,
93 0, 0, 0, 93 0, 0, 0, 0,
94 struct toolbar_button); 94 struct toolbar_button);
95 95
96 DEFUN ("toolbar-button-p", Ftoolbar_button_p, 1, 1, 0, /* 96 DEFUN ("toolbar-button-p", Ftoolbar_button_p, 1, 1, 0, /*
97 Return non-nil if OBJECT is a toolbar button. 97 Return non-nil if OBJECT is a toolbar button.
98 */ 98 */
301 elt = XVECTOR_DATA (desc); 301 elt = XVECTOR_DATA (desc);
302 buffer = XWINDOW (FRAME_LAST_NONMINIBUF_WINDOW (f))->buffer; 302 buffer = XWINDOW (FRAME_LAST_NONMINIBUF_WINDOW (f))->buffer;
303 303
304 if (!tb) 304 if (!tb)
305 { 305 {
306 tb = alloc_lcrecord_type (struct toolbar_button, lrecord_toolbar_button); 306 tb = alloc_lcrecord_type (struct toolbar_button, &lrecord_toolbar_button);
307 tb->next = Qnil; 307 tb->next = Qnil;
308 XSETFRAME (tb->frame, f); 308 XSETFRAME (tb->frame, f);
309 tb->up_glyph = Qnil; 309 tb->up_glyph = Qnil;
310 tb->down_glyph = Qnil; 310 tb->down_glyph = Qnil;
311 tb->disabled_glyph = Qnil; 311 tb->disabled_glyph = Qnil;
1310 SPECIFIER_HAS_METHOD (toolbar, validate); 1310 SPECIFIER_HAS_METHOD (toolbar, validate);
1311 SPECIFIER_HAS_METHOD (toolbar, after_change); 1311 SPECIFIER_HAS_METHOD (toolbar, after_change);
1312 } 1312 }
1313 1313
1314 void 1314 void
1315 reinit_specifier_type_create_toolbar (void)
1316 {
1317 REINITIALIZE_SPECIFIER_TYPE (toolbar);
1318 }
1319
1320 void
1315 specifier_vars_of_toolbar (void) 1321 specifier_vars_of_toolbar (void)
1316 { 1322 {
1317 Lisp_Object fb; 1323 Lisp_Object fb;
1318 1324
1319 DEFVAR_SPECIFIER ("default-toolbar", &Vdefault_toolbar /* 1325 DEFVAR_SPECIFIER ("default-toolbar", &Vdefault_toolbar /*
1426 Vdefault_toolbar = Fmake_specifier (Qtoolbar); 1432 Vdefault_toolbar = Fmake_specifier (Qtoolbar);
1427 /* #### It would be even nicer if the specifier caching 1433 /* #### It would be even nicer if the specifier caching
1428 automatically knew about specifier fallbacks, so we didn't 1434 automatically knew about specifier fallbacks, so we didn't
1429 have to do it ourselves. */ 1435 have to do it ourselves. */
1430 set_specifier_caching (Vdefault_toolbar, 1436 set_specifier_caching (Vdefault_toolbar,
1431 slot_offset (struct window, 1437 offsetof (struct window, default_toolbar),
1432 default_toolbar),
1433 default_toolbar_specs_changed, 1438 default_toolbar_specs_changed,
1434 0, 0); 1439 0, 0);
1435 1440
1436 DEFVAR_SPECIFIER ("top-toolbar", 1441 DEFVAR_SPECIFIER ("top-toolbar",
1437 &Vtoolbar[TOP_TOOLBAR] /* 1442 &Vtoolbar[TOP_TOOLBAR] /*
1439 Use `set-specifier' to change this. 1444 Use `set-specifier' to change this.
1440 See `default-toolbar' for a description of a valid toolbar instantiator. 1445 See `default-toolbar' for a description of a valid toolbar instantiator.
1441 */ ); 1446 */ );
1442 Vtoolbar[TOP_TOOLBAR] = Fmake_specifier (Qtoolbar); 1447 Vtoolbar[TOP_TOOLBAR] = Fmake_specifier (Qtoolbar);
1443 set_specifier_caching (Vtoolbar[TOP_TOOLBAR], 1448 set_specifier_caching (Vtoolbar[TOP_TOOLBAR],
1444 slot_offset (struct window, 1449 offsetof (struct window, toolbar[TOP_TOOLBAR]),
1445 toolbar[TOP_TOOLBAR]),
1446 toolbar_specs_changed, 1450 toolbar_specs_changed,
1447 0, 0); 1451 0, 0);
1448 1452
1449 DEFVAR_SPECIFIER ("bottom-toolbar", 1453 DEFVAR_SPECIFIER ("bottom-toolbar",
1450 &Vtoolbar[BOTTOM_TOOLBAR] /* 1454 &Vtoolbar[BOTTOM_TOOLBAR] /*
1457 `bottom-toolbar-height') is 0; thus, a bottom toolbar will not be 1461 `bottom-toolbar-height') is 0; thus, a bottom toolbar will not be
1458 displayed even if you provide a value for `bottom-toolbar'. 1462 displayed even if you provide a value for `bottom-toolbar'.
1459 */ ); 1463 */ );
1460 Vtoolbar[BOTTOM_TOOLBAR] = Fmake_specifier (Qtoolbar); 1464 Vtoolbar[BOTTOM_TOOLBAR] = Fmake_specifier (Qtoolbar);
1461 set_specifier_caching (Vtoolbar[BOTTOM_TOOLBAR], 1465 set_specifier_caching (Vtoolbar[BOTTOM_TOOLBAR],
1462 slot_offset (struct window, 1466 offsetof (struct window, toolbar[BOTTOM_TOOLBAR]),
1463 toolbar[BOTTOM_TOOLBAR]),
1464 toolbar_specs_changed, 1467 toolbar_specs_changed,
1465 0, 0); 1468 0, 0);
1466 1469
1467 DEFVAR_SPECIFIER ("left-toolbar", 1470 DEFVAR_SPECIFIER ("left-toolbar",
1468 &Vtoolbar[LEFT_TOOLBAR] /* 1471 &Vtoolbar[LEFT_TOOLBAR] /*
1475 `left-toolbar-width') is 0; thus, a left toolbar will not be 1478 `left-toolbar-width') is 0; thus, a left toolbar will not be
1476 displayed even if you provide a value for `left-toolbar'. 1479 displayed even if you provide a value for `left-toolbar'.
1477 */ ); 1480 */ );
1478 Vtoolbar[LEFT_TOOLBAR] = Fmake_specifier (Qtoolbar); 1481 Vtoolbar[LEFT_TOOLBAR] = Fmake_specifier (Qtoolbar);
1479 set_specifier_caching (Vtoolbar[LEFT_TOOLBAR], 1482 set_specifier_caching (Vtoolbar[LEFT_TOOLBAR],
1480 slot_offset (struct window, 1483 offsetof (struct window, toolbar[LEFT_TOOLBAR]),
1481 toolbar[LEFT_TOOLBAR]),
1482 toolbar_specs_changed, 1484 toolbar_specs_changed,
1483 0, 0); 1485 0, 0);
1484 1486
1485 DEFVAR_SPECIFIER ("right-toolbar", 1487 DEFVAR_SPECIFIER ("right-toolbar",
1486 &Vtoolbar[RIGHT_TOOLBAR] /* 1488 &Vtoolbar[RIGHT_TOOLBAR] /*
1493 `right-toolbar-width') is 0; thus, a right toolbar will not be 1495 `right-toolbar-width') is 0; thus, a right toolbar will not be
1494 displayed even if you provide a value for `right-toolbar'. 1496 displayed even if you provide a value for `right-toolbar'.
1495 */ ); 1497 */ );
1496 Vtoolbar[RIGHT_TOOLBAR] = Fmake_specifier (Qtoolbar); 1498 Vtoolbar[RIGHT_TOOLBAR] = Fmake_specifier (Qtoolbar);
1497 set_specifier_caching (Vtoolbar[RIGHT_TOOLBAR], 1499 set_specifier_caching (Vtoolbar[RIGHT_TOOLBAR],
1498 slot_offset (struct window, 1500 offsetof (struct window, toolbar[RIGHT_TOOLBAR]),
1499 toolbar[RIGHT_TOOLBAR]),
1500 toolbar_specs_changed, 1501 toolbar_specs_changed,
1501 0, 0); 1502 0, 0);
1502 1503
1503 /* initially, top inherits from default; this can be 1504 /* initially, top inherits from default; this can be
1504 changed with `set-default-toolbar-position'. */ 1505 changed with `set-default-toolbar-position'. */
1548 left toolbar but the selected window specifies that the left toolbar 1549 left toolbar but the selected window specifies that the left toolbar
1549 is not visible, so it is expanded to take up the slack. 1550 is not visible, so it is expanded to take up the slack.
1550 */ ); 1551 */ );
1551 Vdefault_toolbar_height = Fmake_specifier (Qnatnum); 1552 Vdefault_toolbar_height = Fmake_specifier (Qnatnum);
1552 set_specifier_caching (Vdefault_toolbar_height, 1553 set_specifier_caching (Vdefault_toolbar_height,
1553 slot_offset (struct window, 1554 offsetof (struct window, default_toolbar_height),
1554 default_toolbar_height),
1555 default_toolbar_size_changed_in_window, 1555 default_toolbar_size_changed_in_window,
1556 slot_offset (struct frame, 1556 offsetof (struct frame, default_toolbar_height),
1557 default_toolbar_height),
1558 default_toolbar_size_changed_in_frame); 1557 default_toolbar_size_changed_in_frame);
1559 1558
1560 DEFVAR_SPECIFIER ("default-toolbar-width", &Vdefault_toolbar_width /* 1559 DEFVAR_SPECIFIER ("default-toolbar-width", &Vdefault_toolbar_width /*
1561 *Width of the default toolbar, if it's oriented vertically. 1560 *Width of the default toolbar, if it's oriented vertically.
1562 This is a specifier; use `set-specifier' to change it. 1561 This is a specifier; use `set-specifier' to change it.
1563 1562
1564 See `default-toolbar-height' for more information. 1563 See `default-toolbar-height' for more information.
1565 */ ); 1564 */ );
1566 Vdefault_toolbar_width = Fmake_specifier (Qnatnum); 1565 Vdefault_toolbar_width = Fmake_specifier (Qnatnum);
1567 set_specifier_caching (Vdefault_toolbar_width, 1566 set_specifier_caching (Vdefault_toolbar_width,
1568 slot_offset (struct window, 1567 offsetof (struct window, default_toolbar_width),
1569 default_toolbar_width),
1570 default_toolbar_size_changed_in_window, 1568 default_toolbar_size_changed_in_window,
1571 slot_offset (struct frame, 1569 offsetof (struct frame, default_toolbar_width),
1572 default_toolbar_width),
1573 default_toolbar_size_changed_in_frame); 1570 default_toolbar_size_changed_in_frame);
1574 1571
1575 DEFVAR_SPECIFIER ("top-toolbar-height", 1572 DEFVAR_SPECIFIER ("top-toolbar-height",
1576 &Vtoolbar_size[TOP_TOOLBAR] /* 1573 &Vtoolbar_size[TOP_TOOLBAR] /*
1577 *Height of the top toolbar. 1574 *Height of the top toolbar.
1579 1576
1580 See `default-toolbar-height' for more information. 1577 See `default-toolbar-height' for more information.
1581 */ ); 1578 */ );
1582 Vtoolbar_size[TOP_TOOLBAR] = Fmake_specifier (Qnatnum); 1579 Vtoolbar_size[TOP_TOOLBAR] = Fmake_specifier (Qnatnum);
1583 set_specifier_caching (Vtoolbar_size[TOP_TOOLBAR], 1580 set_specifier_caching (Vtoolbar_size[TOP_TOOLBAR],
1584 slot_offset (struct window, 1581 offsetof (struct window, toolbar_size[TOP_TOOLBAR]),
1585 toolbar_size[TOP_TOOLBAR]),
1586 toolbar_geometry_changed_in_window, 1582 toolbar_geometry_changed_in_window,
1587 slot_offset (struct frame, 1583 offsetof (struct frame, toolbar_size[TOP_TOOLBAR]),
1588 toolbar_size[TOP_TOOLBAR]),
1589 frame_size_slipped); 1584 frame_size_slipped);
1590 1585
1591 DEFVAR_SPECIFIER ("bottom-toolbar-height", 1586 DEFVAR_SPECIFIER ("bottom-toolbar-height",
1592 &Vtoolbar_size[BOTTOM_TOOLBAR] /* 1587 &Vtoolbar_size[BOTTOM_TOOLBAR] /*
1593 *Height of the bottom toolbar. 1588 *Height of the bottom toolbar.
1595 1590
1596 See `default-toolbar-height' for more information. 1591 See `default-toolbar-height' for more information.
1597 */ ); 1592 */ );
1598 Vtoolbar_size[BOTTOM_TOOLBAR] = Fmake_specifier (Qnatnum); 1593 Vtoolbar_size[BOTTOM_TOOLBAR] = Fmake_specifier (Qnatnum);
1599 set_specifier_caching (Vtoolbar_size[BOTTOM_TOOLBAR], 1594 set_specifier_caching (Vtoolbar_size[BOTTOM_TOOLBAR],
1600 slot_offset (struct window, 1595 offsetof (struct window, toolbar_size[BOTTOM_TOOLBAR]),
1601 toolbar_size[BOTTOM_TOOLBAR]),
1602 toolbar_geometry_changed_in_window, 1596 toolbar_geometry_changed_in_window,
1603 slot_offset (struct frame, 1597 offsetof (struct frame, toolbar_size[BOTTOM_TOOLBAR]),
1604 toolbar_size[BOTTOM_TOOLBAR]),
1605 frame_size_slipped); 1598 frame_size_slipped);
1606 1599
1607 DEFVAR_SPECIFIER ("left-toolbar-width", 1600 DEFVAR_SPECIFIER ("left-toolbar-width",
1608 &Vtoolbar_size[LEFT_TOOLBAR] /* 1601 &Vtoolbar_size[LEFT_TOOLBAR] /*
1609 *Width of left toolbar. 1602 *Width of left toolbar.
1611 1604
1612 See `default-toolbar-height' for more information. 1605 See `default-toolbar-height' for more information.
1613 */ ); 1606 */ );
1614 Vtoolbar_size[LEFT_TOOLBAR] = Fmake_specifier (Qnatnum); 1607 Vtoolbar_size[LEFT_TOOLBAR] = Fmake_specifier (Qnatnum);
1615 set_specifier_caching (Vtoolbar_size[LEFT_TOOLBAR], 1608 set_specifier_caching (Vtoolbar_size[LEFT_TOOLBAR],
1616 slot_offset (struct window, 1609 offsetof (struct window, toolbar_size[LEFT_TOOLBAR]),
1617 toolbar_size[LEFT_TOOLBAR]),
1618 toolbar_geometry_changed_in_window, 1610 toolbar_geometry_changed_in_window,
1619 slot_offset (struct frame, 1611 offsetof (struct frame, toolbar_size[LEFT_TOOLBAR]),
1620 toolbar_size[LEFT_TOOLBAR]),
1621 frame_size_slipped); 1612 frame_size_slipped);
1622 1613
1623 DEFVAR_SPECIFIER ("right-toolbar-width", 1614 DEFVAR_SPECIFIER ("right-toolbar-width",
1624 &Vtoolbar_size[RIGHT_TOOLBAR] /* 1615 &Vtoolbar_size[RIGHT_TOOLBAR] /*
1625 *Width of right toolbar. 1616 *Width of right toolbar.
1627 1618
1628 See `default-toolbar-height' for more information. 1619 See `default-toolbar-height' for more information.
1629 */ ); 1620 */ );
1630 Vtoolbar_size[RIGHT_TOOLBAR] = Fmake_specifier (Qnatnum); 1621 Vtoolbar_size[RIGHT_TOOLBAR] = Fmake_specifier (Qnatnum);
1631 set_specifier_caching (Vtoolbar_size[RIGHT_TOOLBAR], 1622 set_specifier_caching (Vtoolbar_size[RIGHT_TOOLBAR],
1632 slot_offset (struct window, 1623 offsetof (struct window, toolbar_size[RIGHT_TOOLBAR]),
1633 toolbar_size[RIGHT_TOOLBAR]),
1634 toolbar_geometry_changed_in_window, 1624 toolbar_geometry_changed_in_window,
1635 slot_offset (struct frame, 1625 offsetof (struct frame, toolbar_size[RIGHT_TOOLBAR]),
1636 toolbar_size[RIGHT_TOOLBAR]),
1637 frame_size_slipped); 1626 frame_size_slipped);
1638 1627
1639 fb = Qnil; 1628 fb = Qnil;
1640 #ifdef HAVE_TTY 1629 #ifdef HAVE_TTY
1641 fb = Fcons (Fcons (list1 (Qtty), Qzero), fb); 1630 fb = Fcons (Fcons (list1 (Qtty), Qzero), fb);
1692 domain will result in a size change in the frame itself, while changing 1681 domain will result in a size change in the frame itself, while changing
1693 the value in a window domain will not. 1682 the value in a window domain will not.
1694 */ ); 1683 */ );
1695 Vdefault_toolbar_border_width = Fmake_specifier (Qnatnum); 1684 Vdefault_toolbar_border_width = Fmake_specifier (Qnatnum);
1696 set_specifier_caching (Vdefault_toolbar_border_width, 1685 set_specifier_caching (Vdefault_toolbar_border_width,
1697 slot_offset (struct window, 1686 offsetof (struct window, default_toolbar_border_width),
1698 default_toolbar_border_width),
1699 default_toolbar_border_width_changed_in_window, 1687 default_toolbar_border_width_changed_in_window,
1700 slot_offset (struct frame, 1688 offsetof (struct frame, default_toolbar_border_width),
1701 default_toolbar_border_width),
1702 default_toolbar_border_width_changed_in_frame); 1689 default_toolbar_border_width_changed_in_frame);
1703 1690
1704 DEFVAR_SPECIFIER ("top-toolbar-border-width", 1691 DEFVAR_SPECIFIER ("top-toolbar-border-width",
1705 &Vtoolbar_border_width[TOP_TOOLBAR] /* 1692 &Vtoolbar_border_width[TOP_TOOLBAR] /*
1706 *Border width of the top toolbar. 1693 *Border width of the top toolbar.
1708 1695
1709 See `default-toolbar-height' for more information. 1696 See `default-toolbar-height' for more information.
1710 */ ); 1697 */ );
1711 Vtoolbar_border_width[TOP_TOOLBAR] = Fmake_specifier (Qnatnum); 1698 Vtoolbar_border_width[TOP_TOOLBAR] = Fmake_specifier (Qnatnum);
1712 set_specifier_caching (Vtoolbar_border_width[TOP_TOOLBAR], 1699 set_specifier_caching (Vtoolbar_border_width[TOP_TOOLBAR],
1713 slot_offset (struct window, 1700 offsetof (struct window,
1714 toolbar_border_width[TOP_TOOLBAR]), 1701 toolbar_border_width[TOP_TOOLBAR]),
1715 toolbar_geometry_changed_in_window, 1702 toolbar_geometry_changed_in_window,
1716 slot_offset (struct frame, 1703 offsetof (struct frame,
1717 toolbar_border_width[TOP_TOOLBAR]), 1704 toolbar_border_width[TOP_TOOLBAR]),
1718 frame_size_slipped); 1705 frame_size_slipped);
1719 1706
1720 DEFVAR_SPECIFIER ("bottom-toolbar-border-width", 1707 DEFVAR_SPECIFIER ("bottom-toolbar-border-width",
1721 &Vtoolbar_border_width[BOTTOM_TOOLBAR] /* 1708 &Vtoolbar_border_width[BOTTOM_TOOLBAR] /*
1722 *Border width of the bottom toolbar. 1709 *Border width of the bottom toolbar.
1724 1711
1725 See `default-toolbar-height' for more information. 1712 See `default-toolbar-height' for more information.
1726 */ ); 1713 */ );
1727 Vtoolbar_border_width[BOTTOM_TOOLBAR] = Fmake_specifier (Qnatnum); 1714 Vtoolbar_border_width[BOTTOM_TOOLBAR] = Fmake_specifier (Qnatnum);
1728 set_specifier_caching (Vtoolbar_border_width[BOTTOM_TOOLBAR], 1715 set_specifier_caching (Vtoolbar_border_width[BOTTOM_TOOLBAR],
1729 slot_offset (struct window, 1716 offsetof (struct window,
1730 toolbar_border_width[BOTTOM_TOOLBAR]), 1717 toolbar_border_width[BOTTOM_TOOLBAR]),
1731 toolbar_geometry_changed_in_window, 1718 toolbar_geometry_changed_in_window,
1732 slot_offset (struct frame, 1719 offsetof (struct frame,
1733 toolbar_border_width[BOTTOM_TOOLBAR]), 1720 toolbar_border_width[BOTTOM_TOOLBAR]),
1734 frame_size_slipped); 1721 frame_size_slipped);
1735 1722
1736 DEFVAR_SPECIFIER ("left-toolbar-border-width", 1723 DEFVAR_SPECIFIER ("left-toolbar-border-width",
1737 &Vtoolbar_border_width[LEFT_TOOLBAR] /* 1724 &Vtoolbar_border_width[LEFT_TOOLBAR] /*
1738 *Border width of left toolbar. 1725 *Border width of left toolbar.
1740 1727
1741 See `default-toolbar-height' for more information. 1728 See `default-toolbar-height' for more information.
1742 */ ); 1729 */ );
1743 Vtoolbar_border_width[LEFT_TOOLBAR] = Fmake_specifier (Qnatnum); 1730 Vtoolbar_border_width[LEFT_TOOLBAR] = Fmake_specifier (Qnatnum);
1744 set_specifier_caching (Vtoolbar_border_width[LEFT_TOOLBAR], 1731 set_specifier_caching (Vtoolbar_border_width[LEFT_TOOLBAR],
1745 slot_offset (struct window, 1732 offsetof (struct window,
1746 toolbar_border_width[LEFT_TOOLBAR]), 1733 toolbar_border_width[LEFT_TOOLBAR]),
1747 toolbar_geometry_changed_in_window, 1734 toolbar_geometry_changed_in_window,
1748 slot_offset (struct frame, 1735 offsetof (struct frame,
1749 toolbar_border_width[LEFT_TOOLBAR]), 1736 toolbar_border_width[LEFT_TOOLBAR]),
1750 frame_size_slipped); 1737 frame_size_slipped);
1751 1738
1752 DEFVAR_SPECIFIER ("right-toolbar-border-width", 1739 DEFVAR_SPECIFIER ("right-toolbar-border-width",
1753 &Vtoolbar_border_width[RIGHT_TOOLBAR] /* 1740 &Vtoolbar_border_width[RIGHT_TOOLBAR] /*
1754 *Border width of right toolbar. 1741 *Border width of right toolbar.
1756 1743
1757 See `default-toolbar-height' for more information. 1744 See `default-toolbar-height' for more information.
1758 */ ); 1745 */ );
1759 Vtoolbar_border_width[RIGHT_TOOLBAR] = Fmake_specifier (Qnatnum); 1746 Vtoolbar_border_width[RIGHT_TOOLBAR] = Fmake_specifier (Qnatnum);
1760 set_specifier_caching (Vtoolbar_border_width[RIGHT_TOOLBAR], 1747 set_specifier_caching (Vtoolbar_border_width[RIGHT_TOOLBAR],
1761 slot_offset (struct window, 1748 offsetof (struct window,
1762 toolbar_border_width[RIGHT_TOOLBAR]), 1749 toolbar_border_width[RIGHT_TOOLBAR]),
1763 toolbar_geometry_changed_in_window, 1750 toolbar_geometry_changed_in_window,
1764 slot_offset (struct frame, 1751 offsetof (struct frame,
1765 toolbar_border_width[RIGHT_TOOLBAR]), 1752 toolbar_border_width[RIGHT_TOOLBAR]),
1766 frame_size_slipped); 1753 frame_size_slipped);
1767 1754
1768 fb = Qnil; 1755 fb = Qnil;
1769 #ifdef HAVE_TTY 1756 #ifdef HAVE_TTY
1770 fb = Fcons (Fcons (list1 (Qtty), Qzero), fb); 1757 fb = Fcons (Fcons (list1 (Qtty), Qzero), fb);
1804 `default-toolbar-visible-p' and all of the position-specific toolbar 1791 `default-toolbar-visible-p' and all of the position-specific toolbar
1805 visibility specifiers have a fallback value of true. 1792 visibility specifiers have a fallback value of true.
1806 */ ); 1793 */ );
1807 Vdefault_toolbar_visible_p = Fmake_specifier (Qboolean); 1794 Vdefault_toolbar_visible_p = Fmake_specifier (Qboolean);
1808 set_specifier_caching (Vdefault_toolbar_visible_p, 1795 set_specifier_caching (Vdefault_toolbar_visible_p,
1809 slot_offset (struct window, 1796 offsetof (struct window, default_toolbar_visible_p),
1810 default_toolbar_visible_p),
1811 default_toolbar_visible_p_changed_in_window, 1797 default_toolbar_visible_p_changed_in_window,
1812 slot_offset (struct frame, 1798 offsetof (struct frame, default_toolbar_visible_p),
1813 default_toolbar_visible_p),
1814 default_toolbar_visible_p_changed_in_frame); 1799 default_toolbar_visible_p_changed_in_frame);
1815 1800
1816 DEFVAR_SPECIFIER ("top-toolbar-visible-p", 1801 DEFVAR_SPECIFIER ("top-toolbar-visible-p",
1817 &Vtoolbar_visible_p[TOP_TOOLBAR] /* 1802 &Vtoolbar_visible_p[TOP_TOOLBAR] /*
1818 *Whether the top toolbar is visible. 1803 *Whether the top toolbar is visible.
1820 1805
1821 See `default-toolbar-visible-p' for more information. 1806 See `default-toolbar-visible-p' for more information.
1822 */ ); 1807 */ );
1823 Vtoolbar_visible_p[TOP_TOOLBAR] = Fmake_specifier (Qboolean); 1808 Vtoolbar_visible_p[TOP_TOOLBAR] = Fmake_specifier (Qboolean);
1824 set_specifier_caching (Vtoolbar_visible_p[TOP_TOOLBAR], 1809 set_specifier_caching (Vtoolbar_visible_p[TOP_TOOLBAR],
1825 slot_offset (struct window, 1810 offsetof (struct window,
1826 toolbar_visible_p[TOP_TOOLBAR]), 1811 toolbar_visible_p[TOP_TOOLBAR]),
1827 toolbar_geometry_changed_in_window, 1812 toolbar_geometry_changed_in_window,
1828 slot_offset (struct frame, 1813 offsetof (struct frame,
1829 toolbar_visible_p[TOP_TOOLBAR]), 1814 toolbar_visible_p[TOP_TOOLBAR]),
1830 frame_size_slipped); 1815 frame_size_slipped);
1831 1816
1832 DEFVAR_SPECIFIER ("bottom-toolbar-visible-p", 1817 DEFVAR_SPECIFIER ("bottom-toolbar-visible-p",
1833 &Vtoolbar_visible_p[BOTTOM_TOOLBAR] /* 1818 &Vtoolbar_visible_p[BOTTOM_TOOLBAR] /*
1834 *Whether the bottom toolbar is visible. 1819 *Whether the bottom toolbar is visible.
1836 1821
1837 See `default-toolbar-visible-p' for more information. 1822 See `default-toolbar-visible-p' for more information.
1838 */ ); 1823 */ );
1839 Vtoolbar_visible_p[BOTTOM_TOOLBAR] = Fmake_specifier (Qboolean); 1824 Vtoolbar_visible_p[BOTTOM_TOOLBAR] = Fmake_specifier (Qboolean);
1840 set_specifier_caching (Vtoolbar_visible_p[BOTTOM_TOOLBAR], 1825 set_specifier_caching (Vtoolbar_visible_p[BOTTOM_TOOLBAR],
1841 slot_offset (struct window, 1826 offsetof (struct window,
1842 toolbar_visible_p[BOTTOM_TOOLBAR]), 1827 toolbar_visible_p[BOTTOM_TOOLBAR]),
1843 toolbar_geometry_changed_in_window, 1828 toolbar_geometry_changed_in_window,
1844 slot_offset (struct frame, 1829 offsetof (struct frame,
1845 toolbar_visible_p[BOTTOM_TOOLBAR]), 1830 toolbar_visible_p[BOTTOM_TOOLBAR]),
1846 frame_size_slipped); 1831 frame_size_slipped);
1847 1832
1848 DEFVAR_SPECIFIER ("left-toolbar-visible-p", 1833 DEFVAR_SPECIFIER ("left-toolbar-visible-p",
1849 &Vtoolbar_visible_p[LEFT_TOOLBAR] /* 1834 &Vtoolbar_visible_p[LEFT_TOOLBAR] /*
1850 *Whether the left toolbar is visible. 1835 *Whether the left toolbar is visible.
1852 1837
1853 See `default-toolbar-visible-p' for more information. 1838 See `default-toolbar-visible-p' for more information.
1854 */ ); 1839 */ );
1855 Vtoolbar_visible_p[LEFT_TOOLBAR] = Fmake_specifier (Qboolean); 1840 Vtoolbar_visible_p[LEFT_TOOLBAR] = Fmake_specifier (Qboolean);
1856 set_specifier_caching (Vtoolbar_visible_p[LEFT_TOOLBAR], 1841 set_specifier_caching (Vtoolbar_visible_p[LEFT_TOOLBAR],
1857 slot_offset (struct window, 1842 offsetof (struct window,
1858 toolbar_visible_p[LEFT_TOOLBAR]), 1843 toolbar_visible_p[LEFT_TOOLBAR]),
1859 toolbar_geometry_changed_in_window, 1844 toolbar_geometry_changed_in_window,
1860 slot_offset (struct frame, 1845 offsetof (struct frame,
1861 toolbar_visible_p[LEFT_TOOLBAR]), 1846 toolbar_visible_p[LEFT_TOOLBAR]),
1862 frame_size_slipped); 1847 frame_size_slipped);
1863 1848
1864 DEFVAR_SPECIFIER ("right-toolbar-visible-p", 1849 DEFVAR_SPECIFIER ("right-toolbar-visible-p",
1865 &Vtoolbar_visible_p[RIGHT_TOOLBAR] /* 1850 &Vtoolbar_visible_p[RIGHT_TOOLBAR] /*
1866 *Whether the right toolbar is visible. 1851 *Whether the right toolbar is visible.
1868 1853
1869 See `default-toolbar-visible-p' for more information. 1854 See `default-toolbar-visible-p' for more information.
1870 */ ); 1855 */ );
1871 Vtoolbar_visible_p[RIGHT_TOOLBAR] = Fmake_specifier (Qboolean); 1856 Vtoolbar_visible_p[RIGHT_TOOLBAR] = Fmake_specifier (Qboolean);
1872 set_specifier_caching (Vtoolbar_visible_p[RIGHT_TOOLBAR], 1857 set_specifier_caching (Vtoolbar_visible_p[RIGHT_TOOLBAR],
1873 slot_offset (struct window, 1858 offsetof (struct window,
1874 toolbar_visible_p[RIGHT_TOOLBAR]), 1859 toolbar_visible_p[RIGHT_TOOLBAR]),
1875 toolbar_geometry_changed_in_window, 1860 toolbar_geometry_changed_in_window,
1876 slot_offset (struct frame, 1861 offsetof (struct frame,
1877 toolbar_visible_p[RIGHT_TOOLBAR]), 1862 toolbar_visible_p[RIGHT_TOOLBAR]),
1878 frame_size_slipped); 1863 frame_size_slipped);
1879 1864
1880 /* initially, top inherits from default; this can be 1865 /* initially, top inherits from default; this can be
1881 changed with `set-default-toolbar-position'. */ 1866 changed with `set-default-toolbar-position'. */
1882 fb = list1 (Fcons (Qnil, Qt)); 1867 fb = list1 (Fcons (Qnil, Qt));
1894 captioned versions specified. 1879 captioned versions specified.
1895 This is a specifier; use `set-specifier' to change it. 1880 This is a specifier; use `set-specifier' to change it.
1896 */ ); 1881 */ );
1897 Vtoolbar_buttons_captioned_p = Fmake_specifier (Qboolean); 1882 Vtoolbar_buttons_captioned_p = Fmake_specifier (Qboolean);
1898 set_specifier_caching (Vtoolbar_buttons_captioned_p, 1883 set_specifier_caching (Vtoolbar_buttons_captioned_p,
1899 slot_offset (struct window, 1884 offsetof (struct window, toolbar_buttons_captioned_p),
1900 toolbar_buttons_captioned_p),
1901 toolbar_buttons_captioned_p_changed, 1885 toolbar_buttons_captioned_p_changed,
1902 0, 0); 1886 0, 0);
1903 set_specifier_fallback (Vtoolbar_buttons_captioned_p, 1887 set_specifier_fallback (Vtoolbar_buttons_captioned_p,
1904 list1 (Fcons (Qnil, Qt))); 1888 list1 (Fcons (Qnil, Qt)));
1905 } 1889 }