Mercurial > emacs
view lwlib/lwlib-int.h @ 10314:b5260fe3dfdd
(Fmake_indirect_buffer): New function.
(Fbuffer_base_buffer): New function.
(syms_of_buffer): defsubr them.
(reset_buffer): Don't alter intervals here.
(Fget_buffer_create): Use BUF_MARKERS. Init BUF_INTERVALS here.
(Fkill_buffer): Use BUF_MARKERS; but don't touch it in indir buf.
Likewise BUF_INTERVALS.
(init_buffer_once): Set up .text and BUF_INTERVALS
in buffer_local_symbols and buffer_defaults.
(Fkill_buffer): Don't free the text in indirect buffer.
When killing a base buffer, kill its indirect buffers first.
(set_buffer_temp): New function.
(reset_buffer_local_variables): Initialize buffer_file_type field.
(Fget_buffer_create): Initialize pt_marker, begv/zv_marker.
(set_buffer_internal): Use and update these markers.
Copy undo_list in and out of the base buffer.
(Fget_buffer_create): Init save_modiff field here.
(reset_buffer): Not here.
(Fbuffer_modified_p): Use BUF_SAVE_MODIFF.
(Fset_buffer_modified_p): Use SAVE_MODIFF.
(Fkill_buffer, list_buffers_1): Use BUF_SAVE_MODIFF.
(Fget_buffer_create): Initialize the size and text fields.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Mon, 02 Jan 1995 21:50:28 +0000 |
parents | 4cc583151918 |
children | 0a94cd2c51c4 |
line wrap: on
line source
#ifndef LWLIB_INTERNAL_H #define LWLIB_INTERNAL_H #include "lwlib.h" /* extern char *strdup (const char *); extern int strcasecmp (const char *, const char *); */ extern char *safe_strdup (); typedef struct _widget_instance { Widget widget; Widget parent; Boolean pop_up_p; struct _widget_info* info; struct _widget_instance* next; } widget_instance; typedef struct _widget_info { char* type; char* name; LWLIB_ID id; widget_value* val; Boolean busy; lw_callback pre_activate_cb; lw_callback selection_cb; lw_callback post_activate_cb; struct _widget_instance* instances; struct _widget_info* next; } widget_info; typedef Widget (*widget_creation_function) (); typedef struct _widget_creation_entry { char* type; widget_creation_function function; } widget_creation_entry; /* update all other instances of a widget. Can be used in a callback when a wiget has been used by the user */ void lw_internal_update_other_instances (); /* get the widget_value for a widget in a given instance */ widget_value* lw_get_widget_value_for_widget (); widget_info *lw_get_widget_info (); #endif /* LWLIB_INTERNAL_H */