view lwlib/lwlib-int.h @ 54971:bd75f7a6b7d5

(Info-find-file, Info-find-node-2): Add history and toc. (Info-find-node-2): Simplify error message. (Info-insert-dir): Use Info-following-node-name. (Info-goto-node): Remove *info-history* and *info-toc*. (Info-history): Create a node of the virtual history file. (Info-toc): Create a node of the virtual toc file. (Info-insert-toc): New arg `curr-file' for reference file names. (info-apropos): Remove redundant var binding for temp-file. (Info-index, Info-index-next, Info-mode): Doc fix. (Info-goto-emacs-command-node): Don't jump to *info* from non-*info* Info buffers. (Info-fontify-node): Don't show the file name of external references if `Info-hide-note-references' is `hide'. Don't hide newlines at the end of paragraphs.
author Juri Linkov <juri@jurta.org>
date Sun, 18 Apr 2004 15:28:19 +0000
parents 695cf19ef79e
children 9f78501bf1f3 375f2633d815
line wrap: on
line source

#ifndef LWLIB_INTERNAL_H
#define LWLIB_INTERNAL_H

#include "lwlib.h"

extern char *safe_strdup __P ((const char *));

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;
  lw_callback		highlight_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 widget has been used by the user */
void
lw_internal_update_other_instances __P ((Widget, XtPointer, XtPointer));

/* get the widget_value for a widget in a given instance */
widget_value*
lw_get_widget_value_for_widget __P ((widget_instance *, Widget));

widget_info *lw_get_widget_info __P ((LWLIB_ID));
widget_instance * lw_get_widget_instance __P ((Widget));

#endif /* LWLIB_INTERNAL_H */

/* arch-tag: ae02f67d-ef25-421c-b956-b01a4b0aac76
   (do not change this comment) */