Jonathan Yavner [Sat, 14 Feb 2004 23:56:51 +0000 (23:56 +0000)]
Delete function ses-build-load-map and distribute its functions to
defconst's for the three maps. Add menus. Use "ses--" prefixes for
buffer-local variables. Use (point-min) instead of 1, even when we know the
buffer is unnarrowed. New function ses-read-number duplicates some code
from interactive "N" spec.
Kim F. Storm [Fri, 13 Feb 2004 23:29:58 +0000 (23:29 +0000)]
(struct draw_fringe_bitmap_params): Change member
bits from char to short to facilitate wider bitmaps.
(struct redisplay_interface): Fix prototype of define_fringe_bitmap
member.
Kim F. Storm [Fri, 13 Feb 2004 23:28:52 +0000 (23:28 +0000)]
(struct fringe_bitmap): Change member bits from char to
short to facilitate 16 bits wide bitmaps. Modify all standard
bitmaps accordingly.
(BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
(FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
(draw_fringe_bitmap): Ditto.
(init_fringe_bitmap) [MAC_OS]: Don't bitswap.
(init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
handle up to 16 bits wide bitmaps.
(Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
Kim F. Storm [Fri, 13 Feb 2004 23:28:32 +0000 (23:28 +0000)]
(mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
(x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
Stefan Monnier [Wed, 11 Feb 2004 06:06:24 +0000 (06:06 +0000)]
Don't use compile any more, use diff-mode instead.
(diff-regexp-alist, diff-old-file, diff-new-file)
(diff-parse-differences, diff-process-setup): Remove.
(diff-sentinel): New fun.
(diff): Use it. Run the process ourselves.
Use diff-mode for the rest of the processing.
Stefan Monnier [Tue, 10 Feb 2004 21:37:35 +0000 (21:37 +0000)]
(diff-switches): New fun.
(diff, diff-backup): Use it.
(diff): Clean up the args construction. Use backquote.
Use listp instead of consp to avoid putting a nil arg.
Kim F. Storm [Mon, 9 Feb 2004 09:18:17 +0000 (09:18 +0000)]
(mac_draw_bitmap): Add overlay_p arg.
(x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
thanks to YAMAMOTO Mitsuharu for advice on how to do this.
Use cursor color for displaying cursor in fringe.
Stefan Monnier [Sun, 8 Feb 2004 23:37:11 +0000 (23:37 +0000)]
(prolog-program-name): Use gprolog if available.
(prolog-mode-syntax-table, prolog-mode-abbrev-table, prolog-mode-map):
Bring together declaration and initialization.
(prolog-mode-variables): Don't set the syntax table.
Don't set paragraph-start and comment-indent-function.
Add /*..*/ to the comment regexps.
(prolog-mode-commands): Remove. Do it during init of prolog-mode-map.
(prolog-mode-map): Don't bind TAB.
(prolog-mode): Set the syntax table.
(prolog-comment-indent): Remove.
(inferior-prolog-mode-map): Initialize in the declaration.
(inferior-prolog-mode-syntax-table)
(inferior-prolog-mode-abbrev-table): New vars.
(inferior-prolog-mode): Derive from comint-mode.
(run-prolog): Avoid switch-to-buffer which can fail in dedicated and
minibuffer windows.
Kim F. Storm [Sun, 8 Feb 2004 23:21:19 +0000 (23:21 +0000)]
(x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
Use cursor color for displaying cursor in fringe.
(x_redisplay_interface): Add null handlers for
define_fringe_bitmap and destroy_fringe_bitmap functions.
Kim F. Storm [Sun, 8 Feb 2004 23:20:52 +0000 (23:20 +0000)]
(Voverflow_newline_into_fringe, syms_of_xdisp)
(left_bits, right_bits, up_arrow_bits, down_arrow_bits)
(continued_bits, continuation_bits, ov_bits, first_line_bits)
(last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
(bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
(fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
(draw_window_fringes, compute_fringe_widths, update_window_fringes):
Move fringe handling vars and code to new file fringe.c.
(handle_display_prop): Handle left-fringe and right-fringe
display properties; store user fringe bitmaps in iterator.
(move_it_in_display_line_to): Handle cursor in fringe at eob.
(clear_garbaged_frames): Set force_flush_display_p if resized.
(redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
(display_line): Handle cursor in fringe at eob.
(display_line): Set row user fringe bitmaps from iterator.
Kim F. Storm [Sun, 8 Feb 2004 23:20:23 +0000 (23:20 +0000)]
(w32_draw_fringe_bitmap): Copy unadapted code from
xterm.c to handle overlayed fringe bitmaps and to use cursor color
for displaying cursor in fringe.
(w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
specific functions to define and destroy fringe bitmaps in fringe_bmp.
(w32_redisplay_interface): Add them to redisplay_interface.
(w32_term_init): Call w32_init_fringe instead of explicitly
defining fringe bitmaps in fringe_bmp array.
(x_delete_display): Call w32_reset_fringes instead of explicitly
destroying fringe bitmaps in fringe_bmp array.
Kim F. Storm [Sun, 8 Feb 2004 23:20:10 +0000 (23:20 +0000)]
(x_draw_fringe_bitmap): Copy unadapted code from
xterm.c to handle overlayed fringe bitmaps and to use cursor color
for displaying cursor in fringe.
(x_redisplay_interface): Add null handlers for
define_fringe_bitmap and destroy_fringe_bitmap functions.
Kim F. Storm [Sun, 8 Feb 2004 23:19:15 +0000 (23:19 +0000)]
(row_equal_p): Compare fringe bitmap faces and overlay
arrows.
(update_frame): Do flush_display if force_flush_display_p to
ensure display (specifically fringes) are updated in a timely
manner when resizing the frame by dragging the mouse.
(update_window_line): Update row if overlay arrow changed.
(scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
or overlay arrow changed.
Kim F. Storm [Sun, 8 Feb 2004 23:18:36 +0000 (23:18 +0000)]
(FRINGE_ID_BITS): New definition for number of
bits allocated to hold a fringe number. Increase number of bits
from 4 to 8 to allow user defined fringe bitmaps.
(struct glyph_row, struct it): New members left_user_fringe_bitmap,
left_user_fringe_face_id, right_user_fringe_bitmap,
right_user_fringe_face_id.
(enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
Move to new file fringe.c.
(MAX_FRINGE_BITMAPS): Define here.
(struct draw_fringe_bitmap_params): New members bits, cursor_p,
and overlay_p. Change member which to int.
(struct redisplay_interface): New members define_fringe_bitmap
and destroy_fringe_bitmap.
(valid_fringe_bitmap_id_p): Add prototype.
(w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
Kim F. Storm [Sun, 8 Feb 2004 23:18:16 +0000 (23:18 +0000)]
New file. Move original fringe related declarations
and code from dispextern.h and xdisp.c here.
Rework code to support user defined fringe bitmaps, redefining
standard bitmaps, ability to overlay user defined bitmap with
overlay arrow bitmap, and add faces to bitmaps.
(Voverflow_newline_into_fringe): Declare here.
(enum fringe_bitmap_align): New enum.
(..._bits): All bitmaps are now defined without bitswapping; that
is now done in init_fringe_once (if necessary).
(standard_bitmaps): New array with specifications for the
standard fringe bitmaps.
(fringe_faces): New array.
(valid_fringe_bitmap_id_p): New function.
(draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
(draw_fringe_bitmap): New function which draws fringe bitmap,
possibly overlaying bitmap with cursor in right fringe or the
overlay arrow in the left fringe.
(update_window_fringes): Do not handle overlay arrow here.
Compare and copy fringe bitmap faces.
(init_fringe_bitmap): New function.
(Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
define and destroy user defined fringe bitmaps.
(Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
(Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
(syms_of_fringe): New function. Defsubr new DEFUNs.
DEFVAR_LISP Voverflow_newline_into_fringe.
(init_fringe_once, init_fringe): New functions.
(w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.