Mercurial > emacs
comparison src/font.c @ 91174:6bee416e4d4e
(font_gstring_produce): Delete it.
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Mon, 03 Dec 2007 14:40:32 +0000 |
parents | 4323f9b78ae1 |
children | bcad98389aeb |
comparison
equal
deleted
inserted
replaced
91173:d073992bc6f3 | 91174:6bee416e4d4e |
---|---|
1866 cmp->width = 1; | 1866 cmp->width = 1; |
1867 | 1867 |
1868 return cmp->font; | 1868 return cmp->font; |
1869 } | 1869 } |
1870 | 1870 |
1871 int | |
1872 font_gstring_produce (old, from, to, new, idx, code, n) | |
1873 Lisp_Object old; | |
1874 int from, to; | |
1875 Lisp_Object new; | |
1876 int idx; | |
1877 unsigned *code; | |
1878 int n; | |
1879 { | |
1880 Lisp_Object min_idx, max_idx; | |
1881 int i; | |
1882 | |
1883 if (idx + n > ASIZE (new)) | |
1884 return -1; | |
1885 if (from == to) | |
1886 { | |
1887 if (from == 0) | |
1888 { | |
1889 min_idx = make_number (0); | |
1890 max_idx = make_number (1); | |
1891 } | |
1892 else | |
1893 { | |
1894 min_idx = AREF (AREF (old, from - 1), 0); | |
1895 max_idx = AREF (AREF (old, from - 1), 1); | |
1896 } | |
1897 } | |
1898 else if (from + 1 == to) | |
1899 { | |
1900 min_idx = AREF (AREF (old, from), 0); | |
1901 max_idx = AREF (AREF (old, from), 1); | |
1902 } | |
1903 else | |
1904 { | |
1905 int min_idx_i = XINT (AREF (AREF (old, from), 0)); | |
1906 int max_idx_i = XINT (AREF (AREF (old, from), 1)); | |
1907 | |
1908 for (i = from + 1; i < to; i++) | |
1909 { | |
1910 if (min_idx_i > XINT (AREF (AREF (old, i), 0))) | |
1911 min_idx_i = XINT (AREF (AREF (old, i), 0)); | |
1912 if (max_idx_i < XINT (AREF (AREF (old, i), 1))) | |
1913 max_idx_i = XINT (AREF (AREF (old, i), 1)); | |
1914 } | |
1915 min_idx = make_number (min_idx_i); | |
1916 max_idx = make_number (max_idx_i); | |
1917 } | |
1918 | |
1919 for (i = 0; i < n; i++) | |
1920 { | |
1921 ASET (AREF (new, idx + i), 0, min_idx); | |
1922 ASET (AREF (new, idx + i), 1, max_idx); | |
1923 ASET (AREF (new, idx + i), 2, make_number (code[i])); | |
1924 } | |
1925 | |
1926 return 0; | |
1927 } | |
1928 | 1871 |
1929 /* Font sorting */ | 1872 /* Font sorting */ |
1930 | 1873 |
1931 static unsigned font_score P_ ((Lisp_Object, Lisp_Object *)); | 1874 static unsigned font_score P_ ((Lisp_Object, Lisp_Object *)); |
1932 static int font_compare P_ ((const void *, const void *)); | 1875 static int font_compare P_ ((const void *, const void *)); |