Gerd Moellmann [Tue, 23 Oct 2001 12:05:01 +0000 (12:05 +0000)]
(x_draw_glyphs): Remove parameters READ_START and
REAL_END. Notice if cursor gets overwritten.
(notice_overwritten_cursor): Take X positions as parameters.
(x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
around call to x_draw_glyphs.
Eli Zaretskii [Mon, 22 Oct 2001 08:54:13 +0000 (08:54 +0000)]
(tooltip-x-offset, tooltip-y-offset): Mention in the
doc string the effect of `left' and `top' parameters in
tooltip-frame-parameters, the default values, and the units.
(tooltip-frame-parameters): Mention `top' and `left' in the doc
string.
(tooltip-show): Mention in the doc string the `top' and `left'
parameters in tooltip-frame-parameters, and x-max-tooltip-size.
André Spiegel [Mon, 22 Oct 2001 07:57:00 +0000 (07:57 +0000)]
New scaling algorithm for vc-annotate.
From JD Smith <jdsmith@astro.cornell.edu>.
(vc-cvs-annotate-difference): Removed to generic
version in vc.el, with
(vc-cvs-annotate-current-time): Added, as override of default.
(vc-cvs-annotate-time) Added. Taken mostly from the (now removed)
`vc-cvs-annotate-difference'.
André Spiegel [Mon, 22 Oct 2001 07:54:03 +0000 (07:54 +0000)]
Change scaling algorithm for vc-annotate.
From JD Smith <jdsmith@astro.cornell.edu>.
(vc-annotate-display-default): Accept colormap scaling
ratio (now deprecated).
(vc-annotate-display-autoscale): Added.
(vc-annotate-add-menu): New autoscaling menu options "Span to
Oldest" and "Span Oldest->Newest". Easymenu support added for
toggle menus driven by customize variable
`vc-annotate-display-mode'.
(vc-annotate-display-select): Added.
(vc-annotate): Changed temp-buffer-show-function to
`vc-annotate-display-select'.
(vc-annotate-display): Removed arguments BUFFER and BACKEND.
Added argument OFFSET. Instead of backend function, calls now
generic `vc-annotate-difference'.
(vc-annotate-difference): Added as generic function instead of
backend-specific function. No longer takes argument POINT, but
instead accepts a time OFFSET.
(vc-default-annotate-current-time): Added.
Jason Rumney [Sun, 21 Oct 2001 15:20:03 +0000 (15:20 +0000)]
(remember_mouse_glyph): New function.
(w32_mouse_position): Use it.
(note_mouse_movement): If the mouse moved off the glyph, remember its
new position.
Sync with xterm.c:
(notice_overwritten_cursor): Renamed from note_overwritten_text_cursor.
Rewritten to take glyph widths into account.
(x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
(fast_find_string_pos): New function.
(fast_find_position): Return the correct vpos. Add parameter STOP.
In the final row, stop before glyphs having STOP as object.
Don't consider glyphs that are not from a buffer.
(fast_find_position) [0]: Add a presumably more correct version for after 21.1.
(expose_window_tree, expose_frame): Don't compute intersections here.
(expose_window): Do it here instead.
(expose_window_tree, expose_window, expose_line): Return 1 when
overwriting mouse-face.
(expose_window): If W is the window currently being updated, mark
the frame garbaged.
(expose_frame): If mouse-face was overwritten, redo it.
(x_use_underline_position_properties): New variable.
(syms_of_xterm): DEFVAR_BOOL it.
(x_draw_glyph_string): Add comment to use it in future.
(x_draw_glyph_string): Restore clipping after drawing box.
Fix a computation of the underline position.
(w32_get_glyph_string_clip_rect): Minor cleanup.
(x_fill_stretch_glyph_string): Remove an assertion.
(x_produce_glyphs): Don't convert multibyte characters
to unibyte characters in unibyte buffers.
(cursor_in_mouse_face_p): New function.
(x_draw_stretch_glyph_string): Use it to choose a different GC
when drawing a cursor within highlighted text. Don't draw
background again if it has already been drawn.
(x_draw_glyph_string_box): Don't draw a full-width
box just because the glyph row's full_width_p flag is set.
(x_draw_glyphs): Fix computation of rightmost x for full-width rows.
(x_dump_glyph_string): Put in #if GLYPH_DEBUG.
(w32_draw_relief_rect): Extend left shadow to the bottom and left;
change bottom shadow accordingly. Some cleanup.
(x_update_window_end): Handle overwritten mouse face
also for tool bar windows.
(show_mouse_face): Set the glyph row's mouse_face_p flag also when
DRAW is DRAW_IMAGE_RAISED.
(clear_mouse_face): Return 1 if text with mouse face was
actually redrawn. Make the function static. Reset
dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
optimize away highlighting if we pass over that same overlay again.
(note_mouse_highlight): Call mouse_face_overlay_overlaps
to detect a case where we have to highlight a different region
despite not having left the currently highlighted region.
Set mouse_face_overlay in the x_display_info. Avoid changing the
mouse pointer shape when show_mouse_face has already done it, or
there is no need. Handle mouse-face and help-echo in strings.
(glyph_rect): New function.
(w32_mouse_position): Use it to raise the threshold for mouse
movement event generation.
(w32_initialize_display_info): Initialize the x_display_info's
mouse_face_overlay.
(w32_set_vertical_scroll_bar): Don't clear a zero height or width area.
(w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
a widget to zero height.
Miles Bader [Sun, 21 Oct 2001 13:48:16 +0000 (13:48 +0000)]
(struct rcsoc_state): New type.
(read_c_string_or_comment): Use a variable of type `rcsoc_state' to hold
most of our state.
(put_char): Add STATE parameter, and remove all other parameters
except CH. Use STATE to get access to all needed state.
(scan_keyword_or_put_char): New function.
André Spiegel [Sun, 21 Oct 2001 12:15:22 +0000 (12:15 +0000)]
(vc-diff-internal, vc-coding-system-for-diff, vc-default-diff-tree):
New functions.
(vc-version-diff): Use them. As a result, coding systems are now set
up properly for all sorts of diffs, and tree diffs can now also be
done locally.
(vc-diff): With a prefix argument, don't require that it's called from
a buffer under version control.
Jason Rumney [Sun, 21 Oct 2001 11:45:21 +0000 (11:45 +0000)]
(Fx_file_dialog): Pass a filter to GetOpenFileName.
Sync with xfns.c:
(x_laplace_read_row, x_laplace_write_row): Removed.
(postprocess_image): New function.
(lookup_image): Call it for all image types except PostScript.
(x_kill_gs_process): Call postprocess_image.
(tiff_error_handler, tiff_warning_handler): New functions.
(tiff_load): Install them as handlers.
(x_kill_gs_process): Recognize if someone has cleared the image
cache under us.
(valid_image_p): Protect better against invalid image
specifications. Previous code could signal an error.
(Fx_hide_tip, Fshow_tip): Doc fix.
(Fv_max_tooltip_size): New variable.
(syns_of_xfns): DEFVAR_LISP it.
(Fx_show_tip): Add parameter TEXT. Set the tip frame's root
window buffer to *tip* right after creating the frame. Set frame's
window_width. Use a maximum tooltip size specified by
Vx_max_tooltip_size, if that has valid contents.
(compute_tip_xy): Add parameters WIDTH and HEIGHT.
Make sure the tooltip is completely visible.
(x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
(Fx_create_frame): Adjust the frame's height for presence
of the tool bar before calling x_figure_window_size.
(x_set_tool_bar_lines): Clear the tool bar window's current matrix
when the window gets smaller.
(x_set_foreground_color): Set frame's cursor_pixel.
(x_set_foreground_color, x_set_background_color): Cleaned up.
(x_set_font): Handle case of x_new_fontset returning the same name
as before, although there was a change in fontsets.
Jason Rumney [Sun, 21 Oct 2001 10:54:17 +0000 (10:54 +0000)]
(single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
Protect unibyte stings created by replacing their multibyte
equivalents in menu_items.
(w32_menu_show): Don't overwrite an item's name with its key
description in case the description is a multibyte string.
(single_submenu): Some cleanup.
Miles Bader [Sun, 21 Oct 2001 09:21:46 +0000 (09:21 +0000)]
(read_c_string_or_comment): Add SAW_USAGE parameter, and implement
scanning for a `usage:' keyword.
(scan_c_file): Pass SAW_USAGE argument to read_c_string_or_comment.
Don't output a usage-string if there was one in the doc string.
Miles Bader [Sat, 20 Oct 2001 15:16:30 +0000 (15:16 +0000)]
(checkbox): Swap bg/fg colors in images, and invert
image bits to compensate. Use `make-string' instead of
`make-bool-vector' (XBM apparently wants byte-aligned rows).
Miles Bader [Sat, 20 Oct 2001 10:33:48 +0000 (10:33 +0000)]
(TN_standout_width, TF_xs, TN_magic_cookie_glitch_ul): Variables removed.
(term_init): Don't set them.
Turn off any standout/underline modes that require magic cookies.
(ins_del_lines, highlight_if_desired, background_highlight)
(turn_on_highlight, turn_off_highlight, reset_terminal_modes):
Remove special processing for magic-cookie standout modes.
(turn_off_face, turn_on_face): Remove special processing for
underline magic-cookie glitch.
Miles Bader [Sat, 20 Oct 2001 05:55:56 +0000 (05:55 +0000)]
(IT_reassert_line_highlight, IT_change_line_highlight): Functions removed.
(internal_terminal_init): Don't set reassert_line_highlight_hook
or change_line_highlight_hook.
(highlight): Variable removed.
(IT_set_face, IT_update_begin, IT_update_end, IT_set_terminal_modes):
Don't set or use it.