SUBDIRS=
all_sources=
noinst_LIBRARIES=
-header_HEADERS=$(acgen_headers)
+header_HEADERS=$(acgen_headers)
BUILT_SOURCES = Emacs.ad.h
-EXTRA_DIST = Emacs.ad.h
+EXTRA_DIST = Emacs.ad.h
libsxeui_a_headers = \
Emacs.ad.h bitmaps.h \
- conslots.h console-stream.h \
- console.h device.h faces.h frame.h \
- frameslots.h getpagesize.h gifrlib.h \
- glyphs.h gui.h gutter.h \
- imgproc.h insdel.h keymap.h menubar.h \
+ conslots.h console-stream.h \
+ console.h device.h faces.h frame.h \
+ frameslots.h getpagesize.h gifrlib.h \
+ glyphs.h gui.h gutter.h \
+ imgproc.h insdel.h keymap.h menubar.h \
objects.h redisplay.h scrollbar.h select.h \
- toolbar.h universe.h window.h winslots.h
-libsxeui_a_sources = \
+ toolbar.h universe.h window.h winslots.h
+libsxeui_a_sources = \
console.c console-stream.c device.c faces.c font-lock.c \
frame.c glyphs.c glyphs-eimage.c glyphs-widget.c gui.c gutter.c \
imgproc.c keymap.c insdel.c minibuf.c redisplay.c \
- redisplay-output.c select.c specifier.c widget.c window.c
+ redisplay-output.c select.c specifier.c widget.c window.c
libsxeui_a_SOURCES = $(libsxeui_a_headers) $(libsxeui_a_sources)
libsxeui_a_CPPFLAGS = $(AM_CPPFLAGS) $(c_switch_general) $(X_CFLAGS)
EXTRA_libsxeui_a_SOURCES=scrollbar.c menubar.c dialog.c toolbar.c
Emacs.ad.h: $(top_srcdir)/etc/Emacs.ad
@echo "Producing \`src/Emacs.ad.h' from \`etc/Emacs.ad'."
@(echo "/* Do not edit this file!" ; \
- echo " Automatically generated from $(top_srcdir)/etc/Emacs.ad" ; \
+ echo " Automatically generated from $(top_srcdir)/etc/Emacs.ad" ; \
echo " */" ; \
$(SHELL) $(sxelibsrcdir)/ad2c $(top_srcdir)/etc/Emacs.ad ) > $@
-#
+#
# Help the SXEmacs developers get nice post-processed source files
## Create preprocessor output (debugging purposes only)
-/*
+/*
This file is part of SXEmacs
error("printing unreadable object #<console %s 0x%x>",
XSTRING_DATA(con->name), con->header.uid);
- write_fmt_string(printcharfun, "#<%s-console",
+ write_fmt_string(printcharfun, "#<%s-console",
(!CONSOLE_LIVE_P(con) ? "dead" : CONSOLE_TYPE_NAME(con)));
if (CONSOLE_LIVE_P(con) && !NILP(CONSOLE_CONNECTION(con))) {
write_c_string(" on ", printcharfun);
0, /* uid */ \
0 /* free */ \
}, \
- &(console_local_flags.field_name), \
+ &(console_local_flags.field_name), \
forward_type \
}, \
magicfun \
0, /* uid */ \
0 /* free */ \
}, \
- &(console_local_flags.field_name), \
+ &(console_local_flags.field_name), \
forward_type \
}, \
magicfun \
DEFVAR_CONSOLE_LOCAL() calls. */
#define MARKED_SLOT(slot) \
if ((XINT (console_local_flags.slot) != -2 && \
- XINT (console_local_flags.slot) != -3) \
+ XINT (console_local_flags.slot) != -3) \
!= !(NILP (XCONSOLE (Vconsole_local_symbols)->slot))) \
abort ()
#include "conslots.h"
CONTYPE_METH_OR_GIVEN (meth, m, args, Qnil)
/******** Same functions, operating on a console instead of a
- struct console_methods ********/
+ struct console_methods ********/
#define HAS_CONMETH_P(c, m) HAS_CONTYPE_METH_P ((c)->conmeths, m)
#define CONMETH(c, m, args) CONTYPE_METH ((c)->conmeths, m, args)
# define CONSOLE_DATA(con) ((struct console *)con)->console_data
#else
# define CONSOLE_TYPE_DATA(con, type) \
- ((struct type##_console *)(((struct console *)con)->console_data))
+ ((struct type##_console *)(((struct console *)con)->console_data))
# define CONSOLE_DATA(con) ((struct console *)con)->console_data
#endif
#define CDFW_CONSOLE(obj) \
(WINDOWP (obj) ? WINDOW_CONSOLE (XWINDOW (obj)) \
: (FRAMEP (obj) ? FRAME_CONSOLE (XFRAME (obj)) \
- : (DEVICEP (obj) ? DEVICE_CONSOLE (XDEVICE (obj)) \
+ : (DEVICEP (obj) ? DEVICE_CONSOLE (XDEVICE (obj)) \
: (CONSOLEP (obj) ? obj \
: Qnil))))
error("printing unreadable object #<device %s 0x%x>",
XSTRING_DATA(d->name), d->header.uid);
- write_fmt_string(printcharfun, "#<%s-device",
+ write_fmt_string(printcharfun, "#<%s-device",
(!DEVICE_LIVE_P(d) ? "dead" :DEVICE_TYPE_NAME(d)));
if (DEVICE_LIVE_P(d) && !NILP(DEVICE_CONNECTION(d))) {
write_c_string(" on ", printcharfun);
#define FROB(m) \
if (!UNBOUNDP ((one_metric = \
- DEVMETH_OR_GIVEN (d, device_system_metrics, \
+ DEVMETH_OR_GIVEN (d, device_system_metrics, \
(d, DM_##m), Qunbound)))) \
plist = Fcons (Q##m, Fcons (one_metric, plist));
because Win32, presumably the first port which does not use select()
polling, DOES have handles for a console device. -- kkm */
- /* We removed Win32 support, but does it make sense to move infd
- and outfd back inside HAVE_UNIXOID_EVENT_LOOP conditionals?
- -- njsf */
+ /* We removed Win32 support, but does it make sense to move infd
+ and outfd back inside HAVE_UNIXOID_EVENT_LOOP conditionals?
+ -- njsf */
#ifdef HAVE_UNIXOID_EVENT_LOOP
/* holds some data necessary for SIGIO control. Perhaps this should
do { \
CHECK_DEVICE (dev); \
if (!(DEVICEP (dev) \
- && DEVICE_DISPLAY_P (XDEVICE (dev)))) \
+ && DEVICE_DISPLAY_P (XDEVICE (dev)))) \
dead_wrong_type_argument (Qdisplay, dev); \
} while (0)
do { \
CONCHECK_DEVICE (dev); \
if (!(DEVICEP (dev) \
- && DEVICE_DISPLAY_P (XDEVICE (dev)))) \
+ && DEVICE_DISPLAY_P (XDEVICE (dev)))) \
wrong_type_argument (Qdisplay, dev); \
} while (0)
do { \
CHECK_DEVICE (dev); \
if (!(DEVICEP (dev) \
- && DEVICE_PRINTER_P (XDEVICE (dev)))) \
+ && DEVICE_PRINTER_P (XDEVICE (dev)))) \
dead_wrong_type_argument (Qprinter, dev); \
} while (0)
do { \
CONCHECK_DEVICE (dev); \
if (!(DEVICEP (dev) \
- && DEVICE_PRINTER_P (XDEVICE (dev)))) \
+ && DEVICE_PRINTER_P (XDEVICE (dev)))) \
wrong_type_argument (Qprinter, dev); \
} while (0)
#define DEVICE_FRAME_LOOP(frmcons, d) \
LIST_LOOP (frmcons, DEVICE_FRAME_LIST (d))
#define CONSOLE_FRAME_LOOP_NO_BREAK(frmcons, devcons, con) \
- CONSOLE_DEVICE_LOOP (devcons, con) \
+ CONSOLE_DEVICE_LOOP (devcons, con) \
DEVICE_FRAME_LOOP (frmcons, XDEVICE (XCAR (devcons)))
void select_device_1(Lisp_Object);
#define COPY_PROPERTY(property) \
Fcopy_specifier (fold->property, fnew->property, \
- locale, tag_set, exact_p, how_to_add);
+ locale, tag_set, exact_p, how_to_add);
COPY_PROPERTY(foreground);
COPY_PROPERTY(background);
error("printing unreadable object #<frame %s 0x%x>",
XSTRING_DATA(frm->name), frm->header.uid);
- write_fmt_string(printcharfun, "#<%s-frame ",
+ write_fmt_string(printcharfun, "#<%s-frame ",
(!FRAME_LIVE_P(frm) ? "dead" : FRAME_TYPE_NAME(frm)));
print_internal(frm->name, printcharfun, 1);
write_fmt_str(printcharfun, " 0x%x>", frm->header.uid);
Values for the first Emacs frame are taken from `initial-frame-plist'.
Since the first X frame is created before loading your .emacs file, you
may wish use the X resource database to avoid flashing.
-
+
For values specific to the separate minibuffer frame, see
`minibuffer-frame-plist'. See also the variables `default-x-frame-plist'
and `default-tty-frame-plist', which are like `default-frame-plist'
/* flag indicating if any window on this frame is displaying a subwindow */
unsigned int subwindows_being_displayed:1;
- /* flag indicating wheather windor-configuration-hook is running; this
+ /* flag indicating wheather windor-configuration-hook is running; this
is an attempt at preventing infinite loops. */
unsigned int window_configuration_hook :1;
? FRAME_RAW_REAL_TOOLBAR_VISIBLE (f, pos) \
: 0)
#define FRAME_REAL_TOOLBAR_SIZE(f, pos) \
- ((!NILP (FRAME_REAL_TOOLBAR (f, pos)) \
+ ((!NILP (FRAME_REAL_TOOLBAR (f, pos)) \
&& FRAME_RAW_REAL_TOOLBAR_VISIBLE (f, pos)) \
? FRAME_RAW_REAL_TOOLBAR_SIZE (f, pos) \
: 0)
#define D_GIF_ERR_EOF_TOO_SOON 113
/******************************************************************************
-* O.K., here are the error routines *
+* O.K., here are the error routines *
******************************************************************************/
extern void GifSetErrorFunc(GifFileType * GifFile, Gif_error_func func,
VoidPtr data);
Extcount len;
#ifdef HAVE_FFI
- if (EFFIOP(data)) {
- bytes = XEFFIO(data)->fostorage;
- len = XEFFIO(data)->storage_size;
- } else
+ if (EFFIOP(data)) {
+ bytes = XEFFIO(data)->fostorage;
+ len = XEFFIO(data)->storage_size;
+ } else
#endif /* HAVE_FFI */
/* #### This is a definite problem under Mule due to the amount of
stack data it might allocate. Need to be able to convert and
(VoidPtr) & gif_err);
#ifdef HAVE_FFI
- if (EFFIOP(data)) {
- bytes = XEFFIO(data)->fostorage;
- len = XEFFIO(data)->storage_size;
- } else
+ if (EFFIOP(data)) {
+ bytes = XEFFIO(data)->fostorage;
+ len = XEFFIO(data)->storage_size;
+ } else
#endif /* HAVE_FFI */
TO_EXTERNAL_FORMAT(LISP_STRING, data, ALLOCA, (bytes, len),
Qbinary);
assert(!NILP(data));
#ifdef HAVE_FFI
- if (EFFIOP(data)) {
- bytes = XEFFIO(data)->fostorage;
- len = XEFFIO(data)->storage_size;
- } else
+ if (EFFIOP(data)) {
+ bytes = XEFFIO(data)->fostorage;
+ len = XEFFIO(data)->storage_size;
+ } else
#endif /* HAVE_FFI */
/* #### This is a definite problem under Mule due to the amount of
stack data it might allocate. Need to think about using Lstreams */
for (y = 0; y < height; y++) {
row_pointers[y] = NULL;
}
-
+
for (y = 0; y < height; y++) {
- row_pointers[y] = unwind.eimage + (width * 3 * y);
+ row_pointers[y] = unwind.eimage + (width * 3 * y);
}
-
+
{
/* if the png specifies a background chunk, go ahead and
* use it, else use what we can get
* of this yet, but it's not going to hurt, and you
* never know... one of these days... --SY.
*/
- if (png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS))
- png_set_tRNS_to_alpha(png_ptr);
+ if (png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS))
+ png_set_tRNS_to_alpha(png_ptr);
/* Turn on interlace handling */
if (interlace_type == PNG_INTERLACE_ADAM7)
passes = png_set_interlace_handling(png_ptr);
assert(!NILP(data));
#ifdef HAVE_FFI
- if (EFFIOP(data)) {
- bytes = XEFFIO(data)->fostorage;
- len = XEFFIO(data)->storage_size;
- } else
+ if (EFFIOP(data)) {
+ bytes = XEFFIO(data)->fostorage;
+ len = XEFFIO(data)->storage_size;
+ } else
#endif /* HAVE_FFI */
/* #### This is a definite problem under Mule due to the amount of
stack data it might allocate. Think about Lstreams... */
assert(!NILP(data));
#ifdef HAVE_FFI
- if (EFFIOP(data)) {
- bytes = XEFFIO(data)->fostorage;
- len = XEFFIO(data)->storage_size;
- } else
+ if (EFFIOP(data)) {
+ bytes = XEFFIO(data)->fostorage;
+ len = XEFFIO(data)->storage_size;
+ } else
#endif /* HAVE_FFI */
TO_EXTERNAL_FORMAT(LISP_STRING, data,
ALLOCA, (bytes, len), Qbinary);
assert(!NILP(data));
#ifdef HAVE_FFI
- if (EFFIOP(data)) {
- bytes = XEFFIO(data)->fostorage;
- len = XEFFIO(data)->storage_size;
- } else
+ if (EFFIOP(data)) {
+ bytes = XEFFIO(data)->fostorage;
+ len = XEFFIO(data)->storage_size;
+ } else
#endif /* HAVE_FFI */
TO_EXTERNAL_FORMAT(LISP_STRING, data,
ALLOCA, (bytes, len), Qbinary);
static void check_valid_ffio_or_string(Lisp_Object data)
{
#ifdef HAVE_FFI
- if (!EFFIOP(data) && !STRINGP(data))
- dead_wrong_type_argument(Qstringp, data);
+ if (!EFFIOP(data) && !STRINGP(data))
+ dead_wrong_type_argument(Qstringp, data);
#else
- CHECK_STRING(data);
+ CHECK_STRING(data);
#endif /* HAVE_FFI */
}
GCPRO1(descriptor_item);
/* Pick up any generic properties that we might need to keep hold
- of.
+ of.
#### This is potentially bogus because it is changing the items
in place rather than in the pending items. */
if (!NILP(text)) {
keywords.
#### This is inconsistent with instantiation in that you have to
- have the :descriptor keyword for updates in order to recognise
+ have the :descriptor keyword for updates in order to recognise
changes. */
if (VECTORP(desc)) {
descriptor_item = gui_parse_item_keywords_no_errors(desc);
keywords. Note that standard gui descriptor shortcuts will not work
because of keyword parsing.
- #### This is bogus in that descriptor and items share the same slot,
+ #### This is bogus in that descriptor and items share the same slot,
we should rationalize. */
if (VECTORP(desc)) {
IMAGE_INSTANCE_WIDGET_ITEMS(ii) =
glyphs are cached on a device basis like most other glyphs. Instead
they should be cached per-window and then the instance would be
fixed and we wouldn't have to mess around with font metrics and the
- rest.
+ rest.
Another sizing problem is alignment. We provide layout widgets that
allow users to stack widgets vertically or horizontally. These
Destructively set the property KEYWORD of INSTANTIATOR to VALUE.
If the property is not set then it is added to a copy of the
instantiator and the new instantiator returned.
-Use `set-glyph-image' on glyphs to register instantiator changes.
+Use `set-glyph-image' on glyphs to register instantiator changes.
*/
(instantiator, keyword, value))
{
}
\f
/*****************************************************************************
- * glyph cachel functions *
+ * glyph cachel functions *
*****************************************************************************/
/* #### All of this is 95% copied from face cachels. Consider
#endif /* MEMORY_USAGE_STATS */
\f
/*****************************************************************************
- * subwindow cachel functions *
+ * subwindow cachel functions *
*****************************************************************************/
/* Subwindows are curious in that you have to physically unmap them to
not display them. It is problematic deciding what to do in
#ifdef HAVE_X_WINDOWS
extern void x_subwindow_query_geometry(Lisp_Object image_instance,
- int *width, int *height);
+ int *width, int *height);
static void
subwindow_query_geometry(Lisp_Object image_instance, int *width,
int *height, enum image_instance_geometry disp,
Lisp_Object domain)
{
- if (IMAGE_INSTANCE_INITIALIZED(XIMAGE_INSTANCE(image_instance)))
- {
- /* Query real size of subwindow */
- x_subwindow_query_geometry(image_instance, width, height);
- } else {
- /* Set them in case of initial layout instantiation */
- if (width)
- *width = 20;
- if (height)
- *height = 20;
- }
+ if (IMAGE_INSTANCE_INITIALIZED(XIMAGE_INSTANCE(image_instance)))
+ {
+ /* Query real size of subwindow */
+ x_subwindow_query_geometry(image_instance, width, height);
+ } else {
+ /* Set them in case of initial layout instantiation */
+ if (width)
+ *width = 20;
+ if (height)
+ *height = 20;
+ }
}
#else
/* This is just a backup in case no-one has assigned a suitable geometry.
? WINDOW_GUTTER_BORDER_WIDTH (f, pos) \
: 0)
#define WINDOW_REAL_GUTTER_BOUNDS(f, pos) \
- (WINDOW_REAL_GUTTER_SIZE (f,pos) + \
+ (WINDOW_REAL_GUTTER_SIZE (f,pos) + \
2 * WINDOW_REAL_GUTTER_BORDER_WIDTH (f,pos))
/* these macros predicate size on position and type of window */
Copyright (c) 1988-1997 Sam Leffler
Copyright (c) 1991-1997 Silicon Graphics, Inc.
-
- Permission to use, copy, modify, distribute, and sell this software and
+
+ Permission to use, copy, modify, distribute, and sell this software and
its documentation for any purpose is hereby granted without fee, provided
that (i) the above copyright notices and this permission notice appear in
all copies of the software and related documentation, and (ii) the names of
publicity relating to the software without the specific, prior written
permission of Sam Leffler and Silicon Graphics. */
-/* Quantizing code based off of the paper
+/* Quantizing code based off of the paper
Color Image Quantization for Frame Buffer Display, Paul Heckbert,
Siggraph '82 proceedings, pp. 297-307 */
box->bmin = blue;
if (blue > box->bmax)
box->bmax = blue;
-#if defined(DEBUG_SXEMACS) && DEBUG_SXEMACS
- if( red < 0 || green < 0 || blue < 0 ||
+#if defined(DEBUG_SXEMACS) && DEBUG_SXEMACS
+ if( red < 0 || green < 0 || blue < 0 ||
! (red < B_LEN && green < B_LEN && blue < B_LEN) ) {
abort();
} else
character "at" (i.e. following) a particular position can be
obtained from the formula
- buffer_start_address + memory_index(position) - 1
+ buffer_start_address + memory_index(position) - 1
except in the case of characters at the gap position.
Emchar:
-------
- This typedef represents a single Emacs character, which can be
+ This typedef represents a single Emacs character, which can be
ASCII, ISO-8859, or some extended character, as would typically
be used for Kanji. Note that the representation of a character
as an Emchar is *not* the same as the representation of that
Bufbyte:
--------
- The data in a buffer or string is logically made up of Bufbyte
+ The data in a buffer or string is logically made up of Bufbyte
objects, where a Bufbyte takes up the same amount of space as a
char. (It is declared differently, though, to catch invalid
usages.) Strings stored using Bufbytes are said to be in
array of char:
--------------
- Strings that go in or out of Emacs are in "external format",
+ Strings that go in or out of Emacs are in "external format",
typedef'ed as an array of char or a char *. There is more
than one external format (JIS, EUC, etc.) but they all
have similar properties. They are modal encodings,
Charcount:
----------
- This typedef represents a count of characters, such as
+ This typedef represents a count of characters, such as
a character offset into a string or the number of
characters between two positions in a buffer. The
difference between two Bufpos's is a Charcount, and
Bytecount:
----------
- Similar to a Charcount but represents a count of bytes.
+ Similar to a Charcount but represents a count of bytes.
The difference between two Bytind's is a Bytecount.
Usage of the various representations:
{
if (!b->base_buffer) {
SET_BUF_GAP_SIZE(b, 20);
- (void)BUFFER_ALLOC(
+ (void)BUFFER_ALLOC(
b->text->beg, BUF_GAP_SIZE(b) + BUF_END_SENTINEL_SIZE);
if (!BUF_BEG_ADDR(b))
memory_full();
/* A keymap contains six slots:
parents Ordered list of keymaps to search after
- this one if no match is found.
+ this one if no match is found.
Keymaps can thus be arranged in a hierarchy.
table A hash table, hashing keysyms to their bindings.
- It will be one of the following:
+ It will be one of the following:
-- a symbol, e.g. 'home
-- a character, representing something printable
the Fwhere_is_internal() function be fast. It needs to be
fast because we want to be able to call it in realtime to
update the keyboard-equivalents on the pulldown menus.
- Values of the table are either atoms (keysyms)
- or a dotted list of keysyms.
+ Values of the table are either atoms (keysyms)
+ or a dotted list of keysyms.
sub_maps_cache An alist; for each entry in this keymap whose binding is
a keymap (that is, Fkeymapp()) this alist associates that
would look like
keymap-1: associates the integer (XEMACS_MOD_CONTROL | XEMACS_MOD_HYPER)
- with keymap-2
+ with keymap-2
keymap-2: associates "a" with the command
Note that a special exception is made for the meta modifier, in order
keymap-1: associates the integer XEMACS_MOD_META with keymap-2
keymap-2: associates the integer (XEMACS_MOD_CONTROL | XEMACS_MOD_HYPER)
- with keymap-3
+ with keymap-3
keymap-3: associates "a" with the command
Note that keymap-2 might have normal bindings in it; these would be
relevant_map_push (Vglobal_tty_map, &closure);
else
relevant_map_push (Vglobal_window_system_map, &closure);
-
+
{
int nmaps = closure.nmaps;
/* Silently truncate at 100 keymaps to prevent infinite lossage */
The return value will be
-- nil (there is no binding; this will also be returned
- whenever the event chain is "too long", i.e. there
+ whenever the event chain is "too long", i.e. there
is a non-nil, non-keymap binding for a prefix of
the event chain)
-- a keymap (part of a command has been specified)
-- a command (anything that satisfies `commandp'; this includes
- some symbols, lists, subrs, strings, vectors, and
+ some symbols, lists, subrs, strings, vectors, and
compiled-function objects) */
Lisp_Object event_binding(Lisp_Object event0, int accept_default)
{
char buf[255];
char *bufp = buf;
Lisp_Object rest;
- buf[sizeof(buf)-1] = buf[0] = '\0';
-
+ buf[sizeof(buf)-1] = buf[0] = '\0';
+
LIST_LOOP(rest, key) {
Lisp_Object keysym = XCAR(rest);
if (EQ(keysym, Qcontrol))
strcpy(bufp, "BS");
else
#endif
- {
+ {
strncpy(bufp,
- (char *)
- string_data(XSYMBOL(keysym)->
- name),
- sizeof(buf)-(bufp-buf)-1);
- /* bufp iterates over buf */
- buf[sizeof(buf)-1]='\0';
- }
+ (char *)
+ string_data(XSYMBOL(keysym)->
+ name),
+ sizeof(buf)-(bufp-buf)-1);
+ /* bufp iterates over buf */
+ buf[sizeof(buf)-1]='\0';
+ }
if (!NILP(XCDR(rest)))
signal_simple_error
("Invalid key description", key);
(const void*)c->keys_so_far,
c->keys_so_far_total_size *
sizeof(struct key_data));
- xfree(c->keys_so_far);
- c->keys_so_far = new;
+ xfree(c->keys_so_far);
+ c->keys_so_far = new;
} else
XREALLOC_ARRAY(c->keys_so_far, struct key_data,
size);
the functions on the `activate-menubar-hook' are invoked to make top-level
changes to the menus and menubar. Note, however, that the use of menu
filters (using the :filter keyword) is usually a more efficient way to
-dynamically alter or sensitize menus.
+dynamically alter or sensitize menus.
*/ ,
menubar_variable_changed);
/* This shrinks the display box to exactly enclose the glyph
area. */
redisplay_normalize_display_box(db, dga);
- buf = Dynarr_new(Emchar);
+ buf = Dynarr_new(Emchar);
/* Flip through the widgets in the layout displaying as necessary */
LIST_LOOP(rest, IMAGE_INSTANCE_LAYOUT_CHILDREN(p)) {
Lisp_Object child =
xpos - absolute horizontal position of area.
- ypos - absolute vertical position of area.
+ ypos - absolute vertical position of area.
glyphsrc - display_glyph_area
ADD_NEXT_OCTAL_RUNE_CHAR;
(void)add_failed;
-
+
data->cursor_type = orig_cursor_type;
if (prop && prop != ADD_FAILED )
Dynarr_free(prop);
glyph_block_dynarr* tmpglyphs = 0;
/* #### I think this is safe, but could be wrong. */
data.ch = BI_BUF_FETCH_CHAR (b, data.bi_bufpos);
-
+
*prop = add_glyph_runes (&data);
tmpglyphs = data.ef->glyphs;
-
- if (*prop)
+
+ if (*prop)
{
/* If we just clipped a glyph and we are
at the end of a line and there are more
glyphs to display then do appropriate
processing to not get a continuation
glyph. */
- if (*prop != ADD_FAILED
+ if (*prop != ADD_FAILED
&& Dynarr_atp (*prop, 0)->type == PROP_GLYPH
&& data.ch == '\n') {
/* If there are no more glyphs
then do the normal processing.
-
+
#### This doesn't actually work
if the same glyph is present
more than once in the block. To
carry the index around which
might be problematic since the
fragment is recalculated for
- each line. */
+ each line. */
if (EQ (Dynarr_end (tmpglyphs)->glyph,
Dynarr_atp (*prop, 0)->data.p_glyph.glyph)) {
Dynarr_free (*prop);
goto done;
}
}
-
+
/* If the current position is covered by an invisible
extent, do nothing (except maybe add some
ellipses). */
gb.extent = Qnil;
gb.glyph = Vhscroll_glyph;
add_glyph_rune_noret(&data, &gb, BEGIN_GLYPHS,
- 0, GLYPH_CACHEL(w,
- HSCROLL_GLYPH_INDEX));
+ 0, GLYPH_CACHEL(w,
+ HSCROLL_GLYPH_INDEX));
} else {
/* This duplicates code down below to add a newline to
the end of an otherwise empty line. */
struct glyph_block {
Lisp_Object glyph;
Lisp_Object extent;
-
+
face_index findex; /* Only used by margin routines. */
int active; /* For begin/end glyph indicates type,
otherwise for margin routines. */
Lisp_Object MTC_devcons, MTC_concons; \
DEVICE_LOOP_NO_BREAK (MTC_devcons, MTC_concons) \
{ \
- Lisp_Object MTC_frmcons; \
- struct device *MTC_d = XDEVICE (XCAR (MTC_devcons)); \
- DEVICE_FRAME_LOOP (MTC_frmcons, MTC_d) \
+ Lisp_Object MTC_frmcons; \
+ struct device *MTC_d = XDEVICE (XCAR (MTC_devcons)); \
+ DEVICE_FRAME_LOOP (MTC_frmcons, MTC_d) \
{ \
struct frame *MTC_f = XFRAME (XCAR (MTC_frmcons)); \
- MTC_f->object##_changed = 1; \
+ MTC_f->object##_changed = 1; \
MTC_f->modiff++; \
} \
- MTC_d->object##_changed = 1; \
+ MTC_d->object##_changed = 1; \
} \
object##_changed = 1; \
object##_changed_set = 1; } \
do { \
if (FRAME_SB_##cache (f)) \
{ \
- struct scrollbar_instance *retval = FRAME_SB_##cache (f); \
- FRAME_SB_##cache (f) = FRAME_SB_##cache (f)->next; \
- retval->next = NULL; \
- return retval; \
+ struct scrollbar_instance *retval = FRAME_SB_##cache (f); \
+ FRAME_SB_##cache (f) = FRAME_SB_##cache (f)->next; \
+ retval->next = NULL; \
+ return retval; \
} \
} while (0)
Lisp_Object fallback = list1(Fcons(Qnil, Qnil));
#if defined (HAVE_X_WINDOWS) \
&& !defined (LWLIB_SCROLLBARS_MOTIF) \
- && !defined (LWLIB_SCROLLBARS_LUCID) \
+ && !defined (LWLIB_SCROLLBARS_LUCID) \
&& !defined (LWLIB_SCROLLBARS_ATHENA3D)
fallback = Fcons(Fcons(list1(Qx), Qt), fallback);
DEFUN("register-selection-data-type", Fregister_selection_data_type, 1, 2, 0, /*
Register a new selection data type DATA-TYPE, optionally on the specified
DEVICE. Returns the device-specific data type identifier, or nil if the
-device does not support this feature or the registration fails.
+device does not support this feature or the registration fails.
*/
(data_type, device))
{
DEFUN("selection-data-type-name", Fselection_data_type_name, 1, 2, 0, /*
Retrieve the name of the specified selection data type DATA-TYPE, optionally
on the specified DEVICE. Returns either a string or a symbol on success, and
-nil if the device does not support this feature or the type is not known.
+nil if the device does not support this feature or the type is not known.
*/
(data_type, device))
{
value. These functions should return a suitable representation of the
value, or nil to indicate that the conversion was not possible.
-See also `selection-converter-out-alist'.
+See also `selection-converter-out-alist'.
*/ );
Vselection_converter_in_alist = Qnil;
return to a program calling `get-selection' with the appropriate
parameters.
-See also `selection-converter-in-alist' and `selection-converter-out-alist'.
+See also `selection-converter-in-alist' and `selection-converter-out-alist'.
*/ );
Vselection_coercion_alist = Qnil;
of the selection (typically PRIMARY, SECONDARY or CLIPBOARD); the type
of the selection; and two selection values. The functions are expected to
return a value representing the catenation of the two values, or nil to
-indicate that this was not possible.
+indicate that this was not possible.
*/ );
Vselection_appender_alist = Qnil;
or CLIPBOARD); the type of the selection; the value of the selection; and
the buffer that has just been killed. These functions should return a new
selection value, or nil to indicate that the selection value should be
-deleted.
+deleted.
*/ );
Vselection_buffer_killed_alist = Qnil;
DEFVAR_LISP("selection-coercible-types", &Vselection_coercible_types /*
A list of selection types that are coercible---that is, types that may be
automatically converted to another type. Selection values with types in this
-list may be subject to conversion attempts to other types.
+list may be subject to conversion attempts to other types.
*/
);
Vselection_coercible_types = Qnil;
# define MARKED_P(a) 1
#endif
assert(!MAGIC_SPECIFIER_P(sp)
- || ( BODILY_SPECIFIER_P(sp) &&
+ || ( BODILY_SPECIFIER_P(sp) &&
MARKED_P(sp->fallback) )
- || ( GHOST_SPECIFIER_P(sp) &&
+ || ( GHOST_SPECIFIER_P(sp) &&
MARKED_P(sp->magic_parent)));
#undef MARKED_P
/* This specifier is garbage. Remove it from the list. */
if (FRAME_REAL_##pos##_VISIBLE (f)) \
{ \
int x, y, width, height, vert; \
- \
+ \
get_toolbar_coords (f, pos, &x, &y, &width, &height, &vert, 0); \
if ((x_coord >= x) && (x_coord < (x + width))) \
{ \
}
/* toolbar button spec is [pixmap-pair function enabled-p help]
- or [:style 2d-or-3d :size width-or-height] */
+ or [:style 2d-or-3d :size width-or-height] */
DEFUN("check-toolbar-button-syntax", Fcheck_toolbar_button_syntax, 1, 2, 0, /*
Verify the syntax of entry BUTTON in a toolbar description list.
win = Fselected_window(Qnil);
CHECK_WINDOW(win);
-
+
w = XWINDOW (win);
frame = WINDOW_FRAME (w);
f = XFRAME (frame);
-
+
if ( ! f->window_configuration_hook ) {
f->window_configuration_hook = 1;
va_run_hook_with_args(Qwindow_configuration_hook, 1, win);
if (XFRAME(w->frame)->mirror_dirty)
update_frame_window_mirror(XFRAME(w->frame));
t = find_window_mirror(w);
- if (!t)
+ if (!t)
{
abort();
return NULL;
t = find_window_mirror(w);
if (!t)
abort();
- else
+ else
t->buffer = b;
}
\f
}
DEFUN("minibuffer-window", Fminibuffer_window, 0, 1, 0, /*
-Return the window used now for minibuffers.
+Return the window used now for minibuffers.
If the optional argument CON-DEV-OR-FRAME is specified and is a frame,
return the minibuffer window used by that frame. If CON-DEV-OR-FRAME
is a device, then the selected frame on that device will be used. If
must use `save-buffers-kill-emacs' or `kill-emacs'). However, if
optional second argument FORCE is non-nil, you can delete the last
frame. (This will automatically call `save-buffers-kill-emacs'.)
-
+
*/
(window, force))
{
(sib,
(WINDOW_WIDTH(XWINDOW(sib)) + WINDOW_WIDTH(w)), 1);
-
+
run_window_configuration_hook( sib );
}
the value of (window-start WINDOW), so if calling this function
in a program gives strange scrolling, make sure the window-start
value is reasonable when this function is called.
-
+
*/
(window))
{
parent = w->parent;
if (NILP(parent)) {
if (widthflag) {
- int new_pixsize;
- sizep = &CURSIZE (w);
- dim = CURCHARSIZE (w);
- new_pixsize = inpixels?(*sizep + delta):(dim+delta);
- set_window_pixsize (window, new_pixsize, 0, 0);
- return;
- }
+ int new_pixsize;
+ sizep = &CURSIZE (w);
+ dim = CURCHARSIZE (w);
+ new_pixsize = inpixels?(*sizep + delta):(dim+delta);
+ set_window_pixsize (window, new_pixsize, 0, 0);
+ return;
+ }
break;
}
if (widthflag ? !NILP(XWINDOW(parent)->hchild)
/* #### When using `push-window-configuration', often the minibuffer
ends up as the selected window because functions run as the result
of user interaction e.g. hyper-apropos. It seems to me the sensible
- thing to do is not record the minibuffer here.
+ thing to do is not record the minibuffer here.
#### Unfortunately this is a change to previous behaviour,
however logical it may be, so revert for the moment. */
Please see (Info-goto-node "(lispref)Window Configuration Hook") where all the
details are documented.
-*/ );
+*/ );
Vwindow_configuration_hook = Qnil;
set_specifier_caching(Vhas_modeline_p,
offsetof(struct window, has_modeline_p),
/* #### It's strange that we need a special
- flag to indicate that the shadow-thickness
- has changed, but not one to indicate that
- the modeline has been turned off or on. */
+ flag to indicate that the shadow-thickness
+ has changed, but not one to indicate that
+ the modeline has been turned off or on. */
some_window_value_changed, 0, 0, 0);
DEFVAR_SPECIFIER("vertical-divider-always-visible-p", &Vvertical_divider_always_visible_p /*
: XINT (win->modeline_shadow_thickness)))
#define MODELINE_SHADOW_THICKNESS(win) \
- (MODELINE_OFF_SHADOW_THICKNESS_ADJUSTED (win) > 10 \
+ (MODELINE_OFF_SHADOW_THICKNESS_ADJUSTED (win) > 10 \
? 10 \
: MODELINE_OFF_SHADOW_THICKNESS_ADJUSTED (win))