view lwlib/lwlib-Xaw.h @ 5559:f3ab0c29c246

Use a better, more portable approach to the shift-F11 problem. src/ChangeLog addition: 2011-08-28 Aidan Kehoe <kehoea@parhasard.net> * event-Xt.c (x_to_emacs_keysym): Take a new pointer argument, X_KEYSYM_OUT, where we store the X11 keysym that we actually used. * event-Xt.c (x_event_to_emacs_event): Call x_to_emacs_keysym with its new pointer argument, so we have access to the X11 keysym used. When checking whether a keysym obeys caps lock, use the X11 keysym rather than the XEmacs keysym. When checking whether a key has two distinct keysyms depending on whether shift is pressed or not, use the X11 keysym passed back by x_to_emacs_keysym rather than working it out again using XLookupKeysym(). * event-Xt.c (keysym_obeys_caps_lock_p): Use XConvertCase() in this function, now we're receiving the actual X keysym used.
author Aidan Kehoe <kehoea@parhasard.net>
date Sun, 28 Aug 2011 10:34:54 +0100
parents ade4c7e2c6cb
children
line wrap: on
line source

/* The lwlib interface to Athena widgets.
   Copyright (C) 1993, 1994 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 3 of the
License, 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 the Lucid Widget Library.  If not, see
<http://www.gnu.org/licenses/>. */

#ifndef INCLUDED_lwlib_Xaw_h_
#define INCLUDED_lwlib_Xaw_h_

#include "lwlib-internal.h"

extern const widget_creation_entry xaw_creation_table [];

Widget 
xaw_create_dialog (widget_instance* instance);

Widget
xaw_create_label (Widget parent, widget_value* val);

Boolean
lw_xaw_widget_p (Widget widget);

void
xaw_update_one_widget (widget_instance *instance, Widget widget,
		       widget_value *val, Boolean deep_p);

void
xaw_update_one_value (widget_instance* instance, Widget widget,
		      widget_value* val);

void
xaw_destroy_instance (widget_instance* instance);

void
xaw_popup_menu (Widget widget, XEvent *event);

void
xaw_pop_instance (widget_instance* instance, Boolean up);

#endif /* INCLUDED_lwlib_Xaw_h_ */