Mercurial > hg > xemacs-beta
comparison src/glyphs-widget.c @ 5047:07dcc7000bbf
put width before height consistently, fix a real bug found in the process
-------------------- ChangeLog entries follow: --------------------
src/ChangeLog addition:
2010-02-20 Ben Wing <ben@xemacs.org>
* EmacsFrame.c (EmacsFrameRecomputeCellSize):
* faces.c (default_face_font_info):
* faces.c (default_face_width_and_height):
* faces.c (Fface_list):
* faces.h:
* frame-gtk.c (gtk_set_initial_frame_size):
* frame-gtk.c (gtk_set_frame_size):
* frame-gtk.c (gtk_recompute_cell_sizes):
* frame.c:
* frame.c (frame_conversion_internal_1):
* frame.c (change_frame_size_1):
* frame.c (change_frame_size):
* glyphs-msw.c (mswindows_combo_box_instantiate):
* glyphs-widget.c (widget_instantiate):
* glyphs-widget.c (tree_view_query_geometry):
* glyphs-widget.c (Fwidget_logical_to_character_width):
* glyphs-widget.c (Fwidget_logical_to_character_height):
* indent.c (vmotion_pixels):
* redisplay-output.c (get_cursor_size_and_location):
* redisplay-xlike-inc.c (XLIKE_output_eol_cursor):
* redisplay-xlike-inc.c (XLIKE_flash):
* redisplay.c (calculate_baseline):
* redisplay.c (start_with_point_on_display_line):
* redisplay.c (glyph_to_pixel_translation):
* redisplay.c (pixel_to_glyph_translation):
* window.c (margin_width_internal):
* window.c (frame_size_valid_p):
* window.c (frame_pixsize_valid_p):
* window.c (check_frame_size):
* window.c (set_window_pixsize):
* window.c (window_pixel_height_to_char_height):
* window.c (window_char_height_to_pixel_height):
* window.c (window_displayed_height):
* window.c (window_pixel_width_to_char_width):
* window.c (window_char_width_to_pixel_width):
* window.c (change_window_height):
* window.c (window_scroll):
* window.h:
IMPORTANT: Aidan and Carbon Repo, please pay attention and fix
appropriately!
Rename: default_face_height_and_width -> default_face_width_and_height
and reverse width/height arguments.
Reverse width/height arguments to the following functions:
-- default_face_font_info
-- default_face_height_and_width (see above)
-- check_frame_size
-- frame_size_valid_p (made into a static function)
Fix a redisplay bug where args to default_face_height_and_width
were in the wrong order.
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Sat, 20 Feb 2010 18:56:01 -0600 |
parents | 8f1ee2d15784 |
children | 8b2f75cecb89 |
comparison
equal
deleted
inserted
replaced
5046:d4f666cda5e6 | 5047:07dcc7000bbf |
---|---|
809 anyway. :height is measured in logical characters which take into | 809 anyway. :height is measured in logical characters which take into |
810 account the borders and spacing on widgets. */ | 810 account the borders and spacing on widgets. */ |
811 if (tw) | 811 if (tw) |
812 { | 812 { |
813 int charwidth; | 813 int charwidth; |
814 default_face_font_info (domain, 0, 0, 0, &charwidth, 0); | 814 default_face_font_info (domain, 0, 0, &charwidth, 0, 0); |
815 pw = ROUND_UP (charwidth * tw + 4 * widget_instance_border_width (ii), charwidth); | 815 pw = ROUND_UP (charwidth * tw + 4 * widget_instance_border_width (ii), charwidth); |
816 } | 816 } |
817 | 817 |
818 /* For heights the widget face is more appropriate. */ | 818 /* For heights the widget face is more appropriate. */ |
819 if (th == 1) | 819 if (th == 1) |
825 IMAGE_INSTANCE_WIDGET_FACE (ii), | 825 IMAGE_INSTANCE_WIDGET_FACE (ii), |
826 0, &charheight, domain); | 826 0, &charheight, domain); |
827 } | 827 } |
828 else | 828 else |
829 { | 829 { |
830 default_face_font_info (domain, 0, 0, &charheight, 0, 0); | 830 default_face_font_info (domain, 0, 0, 0, &charheight, 0); |
831 } | 831 } |
832 ph = (charheight + 2 * widget_instance_border_width (ii)) * th; | 832 ph = (charheight + 2 * widget_instance_border_width (ii)) * th; |
833 } | 833 } |
834 /* For heights > 1 use logical units. */ | 834 /* For heights > 1 use logical units. */ |
835 else if (th > 1) | 835 else if (th > 1) |
947 } | 947 } |
948 if (*height) | 948 if (*height) |
949 { | 949 { |
950 int len, h; | 950 int len, h; |
951 /* #### widget face would be better here. */ | 951 /* #### widget face would be better here. */ |
952 default_face_font_info (domain, 0, 0, &h, 0, 0); | 952 default_face_font_info (domain, 0, 0, 0, &h, 0); |
953 GET_LIST_LENGTH (items, len); | 953 GET_LIST_LENGTH (items, len); |
954 *height = len * h; | 954 *height = len * h; |
955 } | 955 } |
956 } | 956 } |
957 | 957 |
1657 w = XINT (width); | 1657 w = XINT (width); |
1658 | 1658 |
1659 if (HAS_DEVMETH_P (DOMAIN_XDEVICE (domain), widget_border_width)) | 1659 if (HAS_DEVMETH_P (DOMAIN_XDEVICE (domain), widget_border_width)) |
1660 border_width = DEVMETH (DOMAIN_XDEVICE (domain), widget_border_width, ()); | 1660 border_width = DEVMETH (DOMAIN_XDEVICE (domain), widget_border_width, ()); |
1661 | 1661 |
1662 default_face_font_info (domain, 0, 0, 0, &charwidth, 0); | 1662 default_face_font_info (domain, 0, 0, &charwidth, 0, 0); |
1663 neww = ROUND_UP (charwidth * w + 4 * border_width + 2 * widget_spacing (domain), | 1663 neww = ROUND_UP (charwidth * w + 4 * border_width + 2 * widget_spacing (domain), |
1664 charwidth) / charwidth; | 1664 charwidth) / charwidth; |
1665 | 1665 |
1666 return make_int (neww); | 1666 return make_int (neww); |
1667 } | 1667 } |
1691 if (NILP (domain)) | 1691 if (NILP (domain)) |
1692 domain = Fselected_frame (Qnil); | 1692 domain = Fselected_frame (Qnil); |
1693 | 1693 |
1694 h = XINT (height); | 1694 h = XINT (height); |
1695 | 1695 |
1696 default_face_font_info (domain, 0, 0, &charheight, 0, 0); | 1696 default_face_font_info (domain, 0, 0, 0, &charheight, 0); |
1697 newh = ROUND_UP (logical_unit_height (Fsymbol_name (Qwidget), | 1697 newh = ROUND_UP (logical_unit_height (Fsymbol_name (Qwidget), |
1698 Vwidget_face, domain) * h, charheight) | 1698 Vwidget_face, domain) * h, charheight) |
1699 / charheight; | 1699 / charheight; |
1700 | 1700 |
1701 return make_int (newh); | 1701 return make_int (newh); |