emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Console based mouse face highlighting.


From: Nick Roberts
Subject: Re: [PATCH] Console based mouse face highlighting.
Date: Tue, 15 May 2007 09:11:31 +1200

 > >   -rw-r--r--  1 nickrob nickrob    22289 2007-04-23 05:00 abbrev.c
 > >   -rw-r--r--  1 nickrob nickrob   185308 2007-05-09 23:02 abbrev.o
 > >   -rw-r--r--  1 nickrob nickrob     1311 2007-02-11 11:34 acldef.h
 > >   -rw-r--r--  1 nickrob nickrob    14768 2004-01-31 06:10 alloca.c
 > > 
 > > The filenames have mouse face highlighting.
 > 
 > Does the highlight show when you move the mouse pointer above any of
 > these names?
 > 
 > > If I click on acldef.h
 > 
 > Why do you need to click?  Mouse highlight is supposed to happen
 > without any need to click.

I'm getting closer.  The help string appears now appears in the mini-buffer
when the pointer is over highlighting and I don't have to click.  The correct
text is displayed with highlighting, however, it starts where the cursor is.
The file msdos.c says:

          /* IT_write_glyphs writes at cursor position,...

and I guess the same is true for write_glyphs in term.c.  I don't quite follow
what new_pos_X, new_pos_Y do, and their use appears to use dos calls.  In
term_mouse_show_face, I would like to do something like:

          /* write_glyphs writes at cursor position, so we need to
             temporarily move cursor coordinates to the beginning of
             the highlight region.  */

          /* Get cursor co-ordinates */
          GET_CURSOR (pos_x, pos_y);
          save_x = pos_x;
          save_y = pos_x;

          pos_x = start_hpos + WINDOW_LEFT_EDGE_X (w);
          pos_y = row->y + WINDOW_TOP_EDGE_Y (w);
        
          cursor_to (pos_x, pos_y);

          draw_mouse_face = draw == DRAW_MOUSE_FACE;
          write_glyphs (row->glyphs[TEXT_AREA] + start_hpos, nglyphs);

          cursor_to (save_x, save_y);

but I can't find a function that does the task of GET_CURSOR and when I do
this without it, for some reason, the highlighting appears in the
minibuffer where the help string is!

Any ideas?

-- 
Nick                                           http://www.inet.net.nz/~nickrob




reply via email to

[Prev in Thread] Current Thread [Next in Thread]