Mercurial > hg > xemacs-beta
view lwlib/lwlib-Xm.h @ 5261:69f687b3ba9d
Move #'replace to C, add bounds-checking to it and to #'fill.
2010-09-06 Aidan Kehoe <kehoea@parhasard.net>
Move #'replace to C; add bounds checking to it and to #'fill.
* fns.c (Fsubseq, Ffill, mapcarX):
Don't #'nreverse in #'subseq, use fill_string_range and check
bounds in #'fill, use replace_string_range() in #'map-into
avoiding quadratic time when modfiying the string.
* fns.c (check_sequence_range, fill_string_range)
(replace_string_range, replace_string_range_1, Freplace):
New functions; check that arguments fit sequence dimensions, fill
a string range with a given character, replace a string range from
an Ibyte pointer.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Mon, 06 Sep 2010 17:29:51 +0100 |
parents | 98528da0b7fc |
children | ade4c7e2c6cb |
line wrap: on
line source
#ifndef INCLUDED_lwlib_Xm_h_ #define INCLUDED_lwlib_Xm_h_ #include "lwlib-internal.h" extern const widget_creation_entry xm_creation_table []; Widget xm_create_dialog (widget_instance* instance); Widget xm_create_label (Widget parent, widget_value* val); Boolean lw_motif_widget_p (Widget widget); void xm_update_one_widget (widget_instance* instance, Widget widget, widget_value* val, Boolean deep_p); void xm_update_one_value (widget_instance* instance, Widget widget, widget_value* val); void xm_destroy_instance (widget_instance* instance); void xm_set_keyboard_focus (Widget parent, Widget w); void xm_popup_menu (Widget widget, XEvent *event); void xm_pop_instance (widget_instance* instance, Boolean up); extern Widget first_child (Widget); /* garbage */ #endif /* INCLUDED_lwlib_Xm_h_ */