1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-20 10:23:57 +00:00
emacs/lwlib/lwlib-int.h

80 lines
2.2 KiB
C
Raw Normal View History

/*
Copyright (C) 1992 Lucid, Inc.
Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006,
2009-01-08 03:38:51 +00:00
2007, 2008, 2009 Free Software Foundation, 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. */
1994-01-18 23:47:41 +00:00
#ifndef LWLIB_INTERNAL_H
#define LWLIB_INTERNAL_H
#include "lwlib.h"
2000-06-06 14:12:10 +00:00
extern char *safe_strdup __P ((const char *));
1994-01-18 23:47:41 +00:00
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;
1994-01-18 23:47:41 +00:00
struct _widget_instance* instances;
struct _widget_info* next;
} widget_info;
typedef Widget
1994-01-30 03:17:32 +00:00
(*widget_creation_function) ();
1994-01-18 23:47:41 +00:00
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
1996-01-05 00:45:43 +00:00
a widget has been used by the user */
1994-01-18 23:47:41 +00:00
void
2000-06-06 14:12:10 +00:00
lw_internal_update_other_instances __P ((Widget, XtPointer, XtPointer));
1994-01-18 23:47:41 +00:00
/* get the widget_value for a widget in a given instance */
widget_value*
2000-06-06 14:12:10 +00:00
lw_get_widget_value_for_widget __P ((widget_instance *, Widget));
1994-01-18 23:47:41 +00:00
2000-06-06 14:12:10 +00:00
widget_info *lw_get_widget_info __P ((LWLIB_ID));
widget_instance * lw_get_widget_instance __P ((Widget));
1994-01-18 23:47:41 +00:00
1994-09-10 15:23:10 +00:00
#endif /* LWLIB_INTERNAL_H */
2003-09-01 15:45:59 +00:00
/* arch-tag: ae02f67d-ef25-421c-b956-b01a4b0aac76
(do not change this comment) */