Mercurial > emacs
view lwlib/lwlib-Xm.h @ 92109:4d9fc08769fa
Consolidate the image_cache to the terminal struct.
* termhooks.h (P_): Remove redundant def.
(struct terminal): New field `image_cache'.
* frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
of FRAME_X_IMAGE_CACHE.
* xterm.h (struct x_display_info): Remove image_cache field.
(FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
* w32term.h (struct w32_display_info): Remove image_cache field.
(FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
* macterm.h (struct mac_display_info): Remove image_cache field.
(FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
* xterm.c (x_term_init):
* w32term.c (w32_term_init):
* macterm.c (mac_term_init): Set the image_cache in the terminal.
* dispextern.h (clear_image_cache, forall_images_in_image_cache):
Remove declarations.
(clear_image_caches, mark_image_cache): New declarations.
* xfaces.c (clear_face_cache):
* xdisp.c (redisplay_internal): Use clear_image_caches.
* image.c (clear_image_cache): Don't check that a frame is on
a window-system before checking if it shares the same cache.
(clear_image_caches): New function.
(Fclear_image_cache): Use it.
(mark_image): Move from allo.c.
(mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
* alloc.c (mark_image, mark_image_cache): Move to image.c.
(mark_object): Don't call mark_image_cache for frames.
(mark_terminals): Call mark_image_cache.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Fri, 22 Feb 2008 17:42:09 +0000 |
parents | 2b21fb87e10a |
children | ec58e5c426ef e16f43875a48 |
line wrap: on
line source
/* The lwlib interface to Motif widgets. Copyright (C) 1992 Lucid, Inc. This file is part of the Lucid Widget Library. The Lucid Widget Library is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version. The Lucid Widget Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Emacs; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef LWLIB_XM_H #define LWLIB_XM_H #include "lwlib-int.h" extern widget_creation_entry xm_creation_table []; Widget xm_create_dialog __P ((widget_instance* instance)); Boolean lw_motif_widget_p __P ((Widget widget)); void xm_update_one_widget __P ((widget_instance* instance, Widget widget, widget_value* val, Boolean deep_p)); void xm_update_one_value __P ((widget_instance* instance, Widget widget, widget_value* val)); void xm_destroy_instance __P ((widget_instance* instance)); void xm_set_keyboard_focus __P ((Widget parent, Widget w)); void xm_popup_menu __P ((Widget widget, XEvent *event)); void xm_pop_instance __P ((widget_instance* instance, Boolean up)); void xm_set_main_areas __P ((Widget parent, Widget menubar, Widget work_area)); void xm_manage_resizing __P ((Widget w, Boolean flag)); #endif /* LWLIB_XM_H */ /* arch-tag: 61561304-c146-437b-8ed3-dc33818703c6 (do not change this comment) */