view etc/images/describe.xpm @ 111116:b52e94e0cf53

Implement mouse highlight for bidi-reordered lines. xdisp.c (fast_find_string_pos): #ifdef away, not used anymore. (mouse_face_from_string_pos): New function, replaces fast_find_string_pos. (note_mouse_highlight): Call it instead of fast_find_string_pos. (note_mode_line_or_margin_highlight): Support bidi-reordered strings and R2L glyph rows. Fix comments. (note_mouse_highlight): When bidi reordering is turned on in a buffer, call next-single-property-change and previous-single-property-change with last argument nil. Clear mouse highlight when mouse pointer is in a R2L row on the stretch glyph that stands for no text beyond the line end. (row_containing_pos): Don't return too early when CHARPOS is in a bidi-reordered continued line. Return immediately when the first hit is found in a line that is not continued, or when an exact match for CHARPOS is found. (rows_from_pos_range): New function. (mouse_face_from_buffer_pos): Use it instead of calling row_containing_pos for START_CHARPOS and END_CHARPOS. Rewrite the function to support mouse highlight in bidi-reordered lines and not to assume that START_CHARPOS is always in mouse_face_beg_row. If necessary, swap mouse_face_beg_row and mouse_face_end_row so that the former is always above the latter or identical to it. (show_mouse_face): Support drawing highlighted R2L lines. (coords_in_mouse_face_p): New function, bidi-aware. (cursor_in_mouse_face_p, note_mouse_highlight, erase_phys_cursor): Call it instead of comparing with mouse-face members of dpyinfo. (note_mode_line_or_margin_highlight): Fix confusingly swapped usage of hpos and vpos.
author Eli Zaretskii <eliz@gnu.org>
date Sat, 23 Oct 2010 17:30:45 +0200
parents ed7704221f2b
children
line wrap: on
line source

/* XPM */
static char * stock_properties_xpm[] = {
"24 24 68 1",
" 	c None",
".	c #000000",
"+	c #74716E",
"@	c #C9C4BD",
"#	c #DFDAD2",
"$	c #F4EFE5",
"%	c #F2ECE1",
"&	c #FFFFFF",
"*	c #4C4B48",
"=	c #EEE5D4",
"-	c #ECE2CF",
";	c #EADFC9",
">	c #F9F9F9",
",	c #E2D2B1",
"'	c #F4F4F4",
")	c #EEEEEE",
"!	c #959595",
"~	c #F5F5F5",
"{	c #F6F6F6",
"]	c #D9D9D9",
"^	c #C7B99C",
"/	c #E9E9E9",
"(	c #787878",
"_	c #E1E1E1",
":	c #E2E2E2",
"<	c #C8C8C8",
"[	c #877E69",
"}	c #9A8F78",
"|	c #DEDEDE",
"1	c #E3E3E3",
"2	c #929292",
"3	c #AFA389",
"4	c #ACACAC",
"5	c #A2A2A2",
"6	c #E4E4E4",
"7	c #BCBCBC",
"8	c #939393",
"9	c #EDEDED",
"0	c #EFEFEF",
"a	c #F0F0F0",
"b	c #E5E5E5",
"c	c #E7E7E7",
"d	c #E8E8E8",
"e	c #EAEAEA",
"f	c #EBEBEB",
"g	c #BEBEBE",
"h	c #F1F1F1",
"i	c #DFDFDF",
"j	c #F3F3F3",
"k	c #E0E0E0",
"l	c #ABABAB",
"m	c #AEAEAE",
"n	c #AFAFAF",
"o	c #ADADAD",
"p	c #B0B0B0",
"q	c #B1B1B1",
"r	c #F7F7F7",
"s	c #B3B3B3",
"t	c #F8F8F8",
"u	c #B4B4B4",
"v	c #B5B5B5",
"w	c #B6B6B6",
"x	c #FAFAFA",
"y	c #FBFBFB",
"z	c #DCDCDC",
"A	c #DDDDDD",
"B	c #E6E6E6",
"C	c #969696",
"                        ",
"                        ",
"                        ",
"           .........    ",
"          .+@#$%.&&.    ",
"          *=---;.&>.    ",
"   .......;.,,,,.').    ",
"   !~~{].;.^.,^^./(..   ",
"  .~_:<.;.[.^.}..|]..   ",
"  .~:1.;.2.[.3.4...5.   ",
"  .{16..7/8.[.49)0a|.   ",
"  .{6bcd/ef8.g9)0ahi.   ",
"  .{bcd/ef9ef9)0ahjk.   ",
"  .{cllefmnomnppqj'_.   ",
"  .rd/ef9)09)0ahj'~:.   ",
"  .r/4o9)ppnppqss~{1.   ",
"  .tef9)0ah0ahj'~{rb.   ",
"  .>9npahssqssuvw>xc.   ",
"  .>)0ahj'~j'~{r>xyd.   ",
"  .nzA|ik_:k_:1bBcdC.   ",
"   .................    ",
"                        ",
"                        ",
"                        "};