Commit graph

231 commits

Author SHA1 Message Date
Chong Yidong
ebe7c7e710 (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE twice. 2007-11-07 15:30:51 +00:00
Richard M. Stallman
c69a28f1e6 (struct it): New elt string_overlays.
New elt from_overlay, also in stack.
Rearrange a few elements.
(face_for_overlay_string): Decl renamed from
face_at_buffer_position_no_overlays, and add argument.
2007-11-04 07:31:56 +00:00
Richard M. Stallman
490943fe14 (face_at_buffer_position_no_overlays): Add decl. 2007-11-03 03:46:57 +00:00
Jan Djärv
8337e95186 (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE. 2007-09-02 16:58:49 +00:00
Chong Yidong
6facdb9be2 (struct image): New members. 2007-08-07 16:32:33 +00:00
Glenn Morris
684d6f5bcc Switch license to GPLv3 or later. 2007-07-25 05:19:07 +00:00
Glenn Morris
4e6835dbc4 Add 2007 to copyright years. 2007-01-21 04:57:37 +00:00
Stefan Monnier
516c741dce Declare x_create_bitmap_from_xpm_data. 2006-10-10 14:38:34 +00:00
Chong Yidong
92b2332318 * xdisp.c (mouse_autoselect_window): Removed.
(Vmouse_autoselect_window): New variable.  DEFVAR_LISP it.

	* dispextern.h (mouse_autoselect_window): Remove extern.
	(Vmouse_autoselect_window): Add extern.

	* macterm.c (XTread_socket): Test Vmouse_autoselect_window
	instead of mouse_autoselect_window.

	* msdos.c (dos_rawgetc): Likewise.

	* w32term.c (w32_read_socket): Likewise.

	* xterm.c (handle_one_xevent): Likewise.
2006-09-08 14:14:28 +00:00
Kim F. Storm
6a6be67ad3 (sit_for): Remove prototype. 2006-07-11 20:09:49 +00:00
Kim F. Storm
128ce5c6a1 (struct it): Add `position' member to iterator stack.
Rename `pos' member to `current'.  Rearrange and add comments.
2006-06-21 11:49:32 +00:00
Kim F. Storm
fd00a1e8a3 (struct it): Add union to iterator stack to save
image, composition, and stretch specific paramters.
2006-06-16 11:53:00 +00:00
Kim F. Storm
946a79d0f7 (IT_STACK_SIZE): New macro specifying size of
iterator stack (instead of hardcoded number).  Increase from 2 to 4
to make room for propertized overlay strings before and after a
display string, image or composition.
(struct it): Add image_id and method members to iterator stack.
2006-06-13 22:45:21 +00:00
Kim F. Storm
c558b5be6c (set_cursor_from_row): Update prototype. 2006-05-28 20:19:17 +00:00
Kim F. Storm
11d2f3e76d (get_phys_cursor_geometry): Update prototype. 2006-05-27 22:37:05 +00:00
Kim F. Storm
7b48cc1354 (struct image): New member `corners'.
(TOP_CORNER, LEFT_CORNER, BOT_CORNER, RIGHT_CORNER): New macros.
2006-04-21 14:06:55 +00:00
YAMAMOTO Mitsuharu
ea21ef7859 (mac_init_fringe) [MAC_OS]: Add prototype. 2006-03-15 07:55:36 +00:00
Kenichi Handa
502b312859 (unibyte_display_via_language_environment): Extern
it.
2006-02-07 07:58:19 +00:00
Thien-Thi Nguyen
aaef169dc6 Update years in copyright notice; nfc. 2006-02-06 15:23:23 +00:00
Kim F. Storm
fcc38f6dbe (struct it): New member ignore_overlay_strings_at_pos_p. 2005-11-11 15:33:34 +00:00
Kim F. Storm
d7f18f68ff (remember_mouse_glyph): Add prototype. 2005-10-11 22:35:22 +00:00
YAMAMOTO Mitsuharu
10a07952dc (struct glyph_string): Rename member for_overlaps_p
to for_overlaps.  Now occupy 3 bits.
(OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
(OVERLAPS_ERASED_CURSOR): New defines.
(struct redisplay_interface): Add new OVERLAPS arg to member
fix_overlapping_area.
(x_fix_overlapping_area): Add new OVERLAPS arg.
(get_glyph_string_clip_rects): Add extern.
2005-10-07 07:38:12 +00:00
Dan Nicolaescu
fa8459a34e * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct
type.
* xterm.c (handle_one_xevent, handle_one_xevent): Likewise.

* unexelf.c (fatal): Fix prototype.

* term.c (fatal): Implement using varargs.

* regex.c (re_char): Move typedef ...
* regex.h (re_char): ... here.
(re_iswctype, re_wctype, re_set_whitespace_regexp): New
prototypes.

* emacs.c (malloc_set_state): Fix return type.
(endif): Fix type.

* lisp.h (fatal): Add argument types.

* dispextern.h (fatal): Delete prototype.

* systime.h: (make_time): Prototype moved from ...
* editfns.c (make_time): ... here.

* editfns.c: Move systime.h include after lisp.h.
* dired.c:
* xsmfns.c:
* process.c: Likewise.

* alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
Add parameter types.
(__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
(emacs_blocked_free): Change definition to match __free_hook.
(emacs_blocked_malloc): Change definition to match __malloc_hook.
(emacs_blocked_realloc): Change definition to match
__realloc_hook.
2005-09-30 22:38:16 +00:00
Thien-Thi Nguyen
0b5538bd85 Update years in copyright notice; nfc. 2005-08-07 12:33:19 +00:00
Lute Kamstra
4fc5845fe8 Update FSF's address. 2005-07-04 16:49:24 +00:00
Richard M. Stallman
92489bddbb (try_window): Declare new arg. 2005-06-25 22:33:51 +00:00
Miles Bader
53abc3bfc0 Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-438
Rename vertical-divider face to vertical-border

2005-06-22  Miles Bader  <miles@gnu.org>

   * lisp/faces.el (vertical-border): Renamed from `vertical-divider'.

2005-06-22  Miles Bader  <miles@gnu.org>

   * man/display.texi (Faces): Change `vertical-divider' to `vertical-border'.

2005-06-22  Miles Bader  <miles@gnu.org>

   * src/xfaces.c (Qvertical_border): Renamed from `Qvertical_divider'.
   (realize_basic_faces, syms_of_xfaces): Update references to it.
   * src/dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
   to `VERTICAL_BORDER_FACE_ID'.
   * src/dispnew.c (build_frame_matrix_from_leaf_window): Update references.
2005-06-22 01:22:42 +00:00
Juri Linkov
9b0ad2cbac Add extern Qframe_set_background_mode. 2005-06-21 16:14:15 +00:00
Miles Bader
b4e49aee84 Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-435
Implement tty vertical-divider face

2005-06-20  Miles Bader  <miles@gnu.org>

   * lisp/faces.el (vertical-divider): New face.

2005-06-20  Miles Bader  <miles@gnu.org>

   * man/display.texi (Faces): Add `vertical-divider'.

2005-06-20  Miles Bader  <miles@gnu.org>

   * src/xfaces.c (Qvertical_divider): New variable.
   (realize_basic_faces): Realize its face.
   (syms_of_xfaces): Initialize it.

   * src/dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.

   * src/dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
   window-separator on ttys using `vertical-divider' face by default.
2005-06-20 10:45:31 +00:00
Richard M. Stallman
c68b9c2ffe (spec_glyph_lookup_face): Add declaration. 2005-06-17 14:02:03 +00:00
Kim F. Storm
e937c04680 (struct glyph_row): New member overlay_arrow_bitmap.
It replaces the corresponding member from struct window, as a
window may now show multiple overlay arrows.
Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
2005-04-18 14:09:00 +00:00
Kim F. Storm
19aaca78a7 * dispextern.h (lookup_derived_face): Fix prototype. 2005-03-22 23:00:23 +00:00
Jan Djärv
3b8029d7f6 * dispextern.h: Declare hourglass_started. 2005-03-10 19:07:39 +00:00
Kim F. Storm
139c65cf7b (XASSERTS): Define to 0 if not already defined.
(xassert) [!XASSERTS]: Define dummy version.
2005-03-02 22:35:17 +00:00
Kim F. Storm
e9323aedda (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16. 2005-02-25 21:49:59 +00:00
Kim F. Storm
6a88f968f9 (enum it_method): New enum.
(GET_FROM_*): Its members.
(struct it): Change member method from function pointer to enum.
2005-02-16 23:44:48 +00:00
Miles Bader
d78f30b86d Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-72
src/dispextern.h (xassert): Enable unconditionally.

2005-02-02  Miles Bader  <miles@gnu.org>

   * src/dispextern.h (xassert): Enable unconditionally.
2005-02-03 03:56:00 +00:00
Kim F. Storm
4f5d664038 (get_phys_cursor_geometry): Add prototype. 2005-01-27 22:33:01 +00:00
Steven Tamm
8c2da0fa6c * dispextern.h (struct glyph_string): New members clip_head and
clip_tail.
* xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
	region to the area between clip_head and clip_tail.
	(draw_glyphs): Record the area that need to be actually redrawn to
	the new variables clip_head and clip_tail when there are
	overhangs.  Set values of these variables to the corresponding
	members in struct glyph_string.  Refine x coordinates for
* macgui.h (STORE_XCHARSETSTRUCT): New macro.
* macterm.c (mac_compute_glyph_string_overhangs): Implement with
	QDTextBounds.
	(x_draw_glyph_string): Don't fill the background of the successor
	of a glyph with a right overhang if the successor will draw a
	cursor.
	(XLoadQueryFont): Obtain font metrics using QDTextBounds.
	(x_redisplay_interface): Add entry for
	compute_glyph_string_overhangs.
2005-01-24 17:59:36 +00:00
Kim F. Storm
a2858aae1c (merge_faces): Rename from merge_into_realized_face. 2005-01-10 13:30:46 +00:00
Kim F. Storm
888ca1e7e2 (struct it): New member dpvec_face_id.
(merge_into_realized_face): Add prototype.
2005-01-09 02:05:04 +00:00
Richard M. Stallman
b437860aad (struct it): New element ellipsis_p.
(struct glyph_row): New element ends_in_ellipsis_p.
2005-01-01 01:36:48 +00:00
Steven Tamm
b15325b22a * dispextern.h: Change HAVE_CARBON to MAC_OS.
(struct glyph_string): Likewise.
* emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
	mac_initialize.
* fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
	Change TARGET_API_MAC_CARBON to HAVE_CARBON.
* fns.c (vector): Change MAC_OSX to MAC_OS.
* frame.c (x_set_frame_parameters, x_report_frame_params)
	(x_set_fullscreen): Remove #ifndef HAVE_CARBON.
	(x_set_border_width, Vdefault_frame_scroll_bars): Change
	HAVE_CARBON to MAC_OS.
* image.c [MAC_OS]: Include sys/stat.h.
	[MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
	QuickTimeComponents.h.
* mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
	[!MAC_OSX] (select): Use mac_wait_next_event.
	[!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to
	Vexec_suffixes.
	[!MAC_OSX] (select, run_mac_command): Change `#ifdef
	TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
	(mac_clear_font_name_table): Add extern.
	(Fmac_clear_font_name_table): New defun.
	(syms_of_mac): Defsubr it.
	[MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
	[MAC_OSX] (select_and_poll_event): New function.
	[MAC_OSX] (sys_select): Use it.
	[MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
	[MAC_OSX && SELECT_USE_CFSOCKET]
	(SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
	[MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
	RunLoop for simultaneously monitoring two kinds of inputs, window
	events and process outputs, without periodically polling.
* macfns.c (mac_initialized): Remove extern.
	(stricmp): Put in #if 0.  All callers changed to use xstricmp in
	xfaces.c.
	(strnicmp): Decrement `n' at the end of each loop, not the
	beginning.
	(check_mac): Use the term "Mac native windows" instead of "Mac
	OS".
	(check_x_display_info, x_display_info_for_name): Sync with xfns.c.
	(mac_get_rdb_resource): New function (from w32reg.c).
	(x_get_string_resource): Use it.
	(install_window_handler): Add extern.
	(mac_window): New function.
	(Fx_create_frame): Use it instead of make_mac_frame.  Set
	parameter for Qfullscreen.  Call x_wm_set_size_hint.
	(Fx_open_connection, Fx_close_connection): New defuns.
	(syms_of_macfns): Defsubr them.
	(x_create_tip_frame) [TARGET_API_MAC_CARBON]: Add
	kWindowNoUpdatesAttribute to the window attribute.
	(x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
	(x_create_tip_frame): Don't call ShowWindow.
	(Fx_show_tip): Call ShowWindow.
	(Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
	TARGET_API_MAC_CARBON'.
	(mac_frame_parm_handlers): Set handlers for Qfullscreen.
	(syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
* macgui.h [!MAC_OSX]: Don't include Controls.h.  Include
	Windows.h.
	(Window): Typedef to WindowPtr and move outside `#if
	TARGET_API_MAC_CARBON'.
	(XSizeHints): New struct.
* macterm.c (x_update_begin, x_update_end)
	[TARGET_API_MAC_CARBON]: Disable screen updates during update of a
	frame.
	(x_draw_glyph_string_background, x_draw_glyph_string_foreground)
	[MAC_OS8]: Use XDrawImageString/XDrawImageString16.
	(construct_mouse_click): Put in #if 0.
	(x_check_fullscreen, x_check_fullscreen_move): Remove decls.
	(x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
	TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
	(activate_scroll_bars, deactivate_scroll_bars)
	[!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
	(x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
	if the position is neither user-specified nor program-specified.
	(x_free_frame_resources): Free size_hints.
	(x_wm_set_size_hint): Allocate size_hints if needed.  Set
	size_hints.
	(mac_clear_font_name_table): New function.
	(mac_do_list_fonts): Initialize font_name_table if needed.
	(x_list_fonts): Don't initialize font_name_table.  Add BLOCK_INPUT
	around mac_do_list_fonts.
	(mac_unload_font): New function.
	(x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
	(init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
	and definitions with #if TARGET_API_MAC_CARBON.
	[USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
	(install_window_handler): Add decl.
	(do_window_update): Add BeginUpdate/EndUpdate for the tooltip
	window.  Use UpdateControls.  Get the rectangle that should be
	updated and restrict the target of expose_frame to it.
	(do_grow_window): Set minimum height/width according to
	size_hints.
	(do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
	(do_zoom_window): Don't use x_set_window_size.
	[USE_CARBON_EVENTS] (mac_handle_window_event): New function.
	(install_window_handler): New function.
	[!USE_CARBON_EVENTS] (mouse_region): New variable.
	[!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
	(XTread_socket) [USE_CARBON_EVENTS]: Move call to
	GetEventDispatcherTarget inside BLOCK_INPUT.
	(XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
	Update mouse_region when mouse is moved.
	(make_mac_frame): Remove.
	(make_mac_terminal_frame): Put in #ifdef MAC_OS8.  Initialize
	mouse pointer shapes.  Change values of f->left_pos and
	f->top_pos.  Don't use make_mac_frame.  Use NewCWindow.  Don't
	call ShowWindow.
	(mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
	Vinvocation_name and Vsystem_name.
	(mac_make_rdb): New function (from w32term.c).
	(mac_term_init): Use it.  Add BLOCK_INPUT.  Error if display has
	already been opened.  Don't pass argument to
	mac_initialize_display_info.  Don't set dpyinfo->height/width.
	Add entries to x_display_list and x_display_name_list.
	(x_delete_display): New function.
	(mac_initialize): Don't call mac_initialize_display_info.
	(syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
* macterm.h (check_mac): Add extern.
	(struct mac_output): New member size_hints.
	(FRAME_SIZE_HINTS): New macro.
	(mac_unload_font): Add extern.
* xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
* xfaces.c (clear_font_table) [MAC_OS]: call mac_unload_font.
2004-12-27 17:27:30 +00:00
Kim F. Storm
e6fb381c3e * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
(MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
2004-11-23 00:51:55 +00:00
Kim F. Storm
1c395ea72d (lookup_named_face): Fix prototype. 2004-11-22 23:26:26 +00:00
Luc Teirlinck
a7416ec1c9 Extern reseat_at_previous_visible_line_start. 2004-11-16 02:01:00 +00:00
Luc Teirlinck
9de1330977 Reverse previous change. 2004-11-14 06:21:25 +00:00
Luc Teirlinck
3cffaddf34 extern reseat_at_previous_visible_line_start. 2004-11-14 05:24:59 +00:00
Kim F. Storm
db0c5a7d08 (struct glyph_row): New member extra_line_spacing.
(struct it): New member max_extra_line_spacing.
(MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
(MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
(MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
part of last line is only extra line spacing (so the text on the
line is fully visible). Use helper macros.
Add W arg (to use them).  All callers changed.
(MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
(MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
2004-11-12 14:26:34 +00:00
Kim F. Storm
f38e574844 Fix comment for it->object; it may also be nil. 2004-10-13 12:18:37 +00:00