|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* Motif
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* Copyright (c) 1987-2012, The Open Group. All rights reserved.
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* These libraries and programs are free software; you can
|
|
Packit |
b099d7 |
* redistribute them and/or modify them under the terms of the GNU
|
|
Packit |
b099d7 |
* Lesser General Public License as published by the Free Software
|
|
Packit |
b099d7 |
* Foundation; either version 2 of the License, or (at your option)
|
|
Packit |
b099d7 |
* any later version.
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* These libraries and programs are distributed in the hope that
|
|
Packit |
b099d7 |
* they will be useful, but WITHOUT ANY WARRANTY; without even the
|
|
Packit |
b099d7 |
* implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
Packit |
b099d7 |
* PURPOSE. See the GNU Lesser General Public License for more
|
|
Packit |
b099d7 |
* details.
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* You should have received a copy of the GNU Lesser General Public
|
|
Packit |
b099d7 |
* License along with these librararies and programs; if not, write
|
|
Packit |
b099d7 |
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
|
|
Packit |
b099d7 |
* Floor, Boston, MA 02110-1301 USA
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* HISTORY
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
/* $TOG: TextFP.h /main/17 1997/03/04 17:00:01 dbl $ */
|
|
Packit |
b099d7 |
/* (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
|
|
Packit |
b099d7 |
#ifndef _XmTextFP_h
|
|
Packit |
b099d7 |
#define _XmTextFP_h
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#include <Xm/PrimitiveP.h>
|
|
Packit |
b099d7 |
#include <Xm/TextF.h>
|
|
Packit |
b099d7 |
#ifdef USE_XFT
|
|
Packit |
b099d7 |
#include <X11/Xft/Xft.h>
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#ifdef __cplusplus
|
|
Packit |
b099d7 |
extern "C" {
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* Defines for different cursors
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#define IBEAM_WIDTH 3
|
|
Packit |
b099d7 |
#define CARET_WIDTH 9
|
|
Packit |
b099d7 |
#define CARET_HEIGHT 5
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* Here is the Text Field Widget class structure.
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
typedef struct _XmTextFieldClassPart {
|
|
Packit |
b099d7 |
XtPointer extension; /* Pointer to extension record. */
|
|
Packit |
b099d7 |
} XmTextFieldClassPart;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
typedef struct _XmTextFieldClassRec {
|
|
Packit |
b099d7 |
CoreClassPart core_class; /* Not RectObjClassPart so I can reference
|
|
Packit |
b099d7 |
core_class s */
|
|
Packit |
b099d7 |
XmPrimitiveClassPart primitive_class;
|
|
Packit |
b099d7 |
XmTextFieldClassPart text_class;
|
|
Packit |
b099d7 |
} XmTextFieldClassRec;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
externalref XmTextFieldClassRec xmTextFieldClassRec;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* On the spot support.
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
typedef struct _OnTheSpotData {
|
|
Packit |
b099d7 |
XmTextPosition start;
|
|
Packit |
b099d7 |
XmTextPosition end;
|
|
Packit |
b099d7 |
XmTextPosition cursor;
|
|
Packit |
b099d7 |
int over_len;
|
|
Packit |
b099d7 |
int over_maxlen;
|
|
Packit |
b099d7 |
char *over_str;
|
|
Packit |
b099d7 |
int under_preedit;
|
|
Packit |
b099d7 |
Boolean under_verify_preedit;
|
|
Packit |
b099d7 |
Boolean verify_commit;
|
|
Packit |
b099d7 |
int pad;
|
|
Packit |
b099d7 |
} OnTheSpotDataRec, *OnTheSpotData;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* Here is the Text Field Widget instance structures.
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
typedef struct _XmTextFieldPart {
|
|
Packit |
b099d7 |
XtCallbackList activate_callback; /* Command activate callback */
|
|
Packit |
b099d7 |
XtCallbackList focus_callback; /* Verify gain focus callback */
|
|
Packit |
b099d7 |
XtCallbackList losing_focus_callback; /* Verify losing focus
|
|
Packit |
b099d7 |
callback */
|
|
Packit |
b099d7 |
XtCallbackList modify_verify_callback; /* Verify value to change
|
|
Packit |
b099d7 |
callback */
|
|
Packit |
b099d7 |
XtCallbackList wcs_modify_verify_callback; /* Verify value to change
|
|
Packit |
b099d7 |
callback */
|
|
Packit |
b099d7 |
XtCallbackList motion_verify_callback; /* Verify insert cursor position
|
|
Packit |
b099d7 |
to change callback */
|
|
Packit |
b099d7 |
XtCallbackList gain_primary_callback; /* Gained ownership of Primary
|
|
Packit |
b099d7 |
Selection */
|
|
Packit |
b099d7 |
XtCallbackList lose_primary_callback; /* Lost ownership of Primary
|
|
Packit |
b099d7 |
Selection */
|
|
Packit |
b099d7 |
XtCallbackList value_changed_callback; /* Notify that value has changed
|
|
Packit |
b099d7 |
callback */
|
|
Packit |
b099d7 |
char * value; /* pointer to widget value stored as char * */
|
|
Packit |
b099d7 |
wchar_t * wc_value; /* pointer to widget value stored as
|
|
Packit |
b099d7 |
wchar_t * */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmFontList font_list; /* Uses only the font portion of fontlist */
|
|
Packit |
b099d7 |
#if USE_XFT
|
|
Packit |
b099d7 |
XtPointer font; /* font retrieved from the fontlist */
|
|
Packit |
b099d7 |
#else
|
|
Packit |
b099d7 |
XFontStruct *font; /* font retrieved from the fontlist */
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
XmTextScanType *selection_array; /* Description of what to cycle
|
|
Packit |
b099d7 |
through on selections */
|
|
Packit |
b099d7 |
_XmHighlightData highlight; /* Info on the highlighting regions. */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
GC gc; /* Normal GC for drawing text and cursor */
|
|
Packit |
b099d7 |
GC image_gc; /* Image GC for drawing text cursor*/
|
|
Packit |
b099d7 |
GC save_gc; /* GC for saving/restoring under IBeam */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
Pixmap ibeam_off; /* pixmap for area under the IBeam */
|
|
Packit |
b099d7 |
Pixmap add_mode_cursor; /* The add mode cursor pixmap */
|
|
Packit |
b099d7 |
Pixmap cursor; /* The ibeam cursor stencil */
|
|
Packit |
b099d7 |
Pixmap putback; /* AVAILABLE: was in 1.1 but not really used */
|
|
Packit |
b099d7 |
Pixmap stipple_tile; /* The tile pattern for the stippled I-beam */
|
|
Packit |
b099d7 |
Pixmap image_clip; /* AVAILABLE: was in 1.2 but not used now */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmTextPosition cursor_position; /* Character location of the insert
|
|
Packit |
b099d7 |
cursor */
|
|
Packit |
b099d7 |
XmTextPosition new_h_offset; /* AVAILABLE: was in 1.1 but not used */
|
|
Packit |
b099d7 |
XmTextPosition h_offset; /* The x position of the first character
|
|
Packit |
b099d7 |
(relative to left edge of widget) */
|
|
Packit |
b099d7 |
XmTextPosition orig_left; /* Left primary selection prior to
|
|
Packit |
b099d7 |
extend */
|
|
Packit |
b099d7 |
XmTextPosition orig_right; /* Right primary selection prior to
|
|
Packit |
b099d7 |
extend */
|
|
Packit |
b099d7 |
XmTextPosition prim_pos_left; /* Left primary selection position */
|
|
Packit |
b099d7 |
XmTextPosition prim_pos_right; /* Right primary selection position */
|
|
Packit |
b099d7 |
XmTextPosition prim_anchor; /* Primary selection pivot point */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmTextPosition sec_pos_left; /* Left secondary selection position */
|
|
Packit |
b099d7 |
XmTextPosition sec_pos_right; /* Right secondary selection position */
|
|
Packit |
b099d7 |
XmTextPosition sec_anchor; /* Secondary selection pivot point */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmTextPosition stuff_pos; /* Position to stuff the primary selection */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
Position select_pos_x; /* x position for timer-based scrolling */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
Time prim_time; /* Timestamp of primary selection */
|
|
Packit |
b099d7 |
Time dest_time; /* Timestamp of destination selection */
|
|
Packit |
b099d7 |
Time sec_time; /* Timestamp of secondary selection */
|
|
Packit |
b099d7 |
Time last_time; /* Time of last selection event */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XtIntervalId timer_id; /* Blinking cursor timer */
|
|
Packit |
b099d7 |
XtIntervalId select_id; /* Timer based scrolling identifier */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
int blink_rate; /* Rate of blinking text cursor in msec */
|
|
Packit |
b099d7 |
int selection_array_count; /* Selection array count */
|
|
Packit |
b099d7 |
int threshold; /* Selection threshold */
|
|
Packit |
b099d7 |
int size_allocd; /* Size allocated for value string */
|
|
Packit |
b099d7 |
int string_length; /* The number of characters in the string
|
|
Packit |
b099d7 |
(including the trailing NULL) */
|
|
Packit |
b099d7 |
int cursor_height; /* Save cursor dimensions */
|
|
Packit |
b099d7 |
int cursor_width; /* Save cursor dimensions */
|
|
Packit |
b099d7 |
int sarray_index; /* Index into selection array */
|
|
Packit |
b099d7 |
int max_length; /* Maximum number of character that can be
|
|
Packit |
b099d7 |
inserted into the text field widget */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
int max_char_size; /* Max bytes per character in cur locale */
|
|
Packit |
b099d7 |
short columns; /* The number of characters in the width */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
Dimension margin_width; /* Height between text borders and text */
|
|
Packit |
b099d7 |
Dimension margin_height; /* Width between text borders and text */
|
|
Packit |
b099d7 |
Dimension average_char_width; /* Average character width based on font */
|
|
Packit |
b099d7 |
Dimension margin_top; /* Height between text borders and top of
|
|
Packit |
b099d7 |
text */
|
|
Packit |
b099d7 |
Dimension margin_bottom; /* Height between text borders and bottom of
|
|
Packit |
b099d7 |
text */
|
|
Packit |
b099d7 |
Dimension font_ascent; /* Ascent of font or fontset used by widget */
|
|
Packit |
b099d7 |
Dimension font_descent; /* Descent of font or fontset used by widget */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
Boolean resize_width; /* Allows the widget to grow horizontally
|
|
Packit |
b099d7 |
when borders are reached */
|
|
Packit |
b099d7 |
Boolean pending_delete; /* Delete primary selection on insert when
|
|
Packit |
b099d7 |
set to True */
|
|
Packit |
b099d7 |
Boolean editable; /* Sets editablility of text */
|
|
Packit |
b099d7 |
Boolean verify_bell; /* Determines if bell is sounded when verify
|
|
Packit |
b099d7 |
callback returns doit - False */
|
|
Packit |
b099d7 |
Boolean cursor_position_visible; /* Sets visibility of insert cursor */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
Boolean traversed; /* Flag used with losing focus verification to
|
|
Packit |
b099d7 |
indicate a traversal key pressed event */
|
|
Packit |
b099d7 |
Boolean add_mode; /* Add mode for cursor movement */
|
|
Packit |
b099d7 |
Boolean has_focus; /* Flag that indicates whether the widget
|
|
Packit |
b099d7 |
has input focus */
|
|
Packit |
b099d7 |
Boolean blink_on; /* State of Blinking insert cursor */
|
|
Packit |
b099d7 |
short int cursor_on; /* Indicates whether the cursor is visible */
|
|
Packit |
b099d7 |
Boolean refresh_ibeam_off; /* Indicates whether the area under IBeam needs
|
|
Packit |
b099d7 |
to be re-captured */
|
|
Packit |
b099d7 |
Boolean have_inverted_image_gc; /* fg/bg of image gc have been swapped */
|
|
Packit |
b099d7 |
Boolean has_primary; /* Indicates that is has the
|
|
Packit |
b099d7 |
primary selection */
|
|
Packit |
b099d7 |
Boolean has_secondary; /* Indicates that is has the
|
|
Packit |
b099d7 |
secondary selection */
|
|
Packit |
b099d7 |
Boolean has_destination; /* Indicates that is has the
|
|
Packit |
b099d7 |
destination selection */
|
|
Packit |
b099d7 |
Boolean sec_drag; /* Indicates a secondary drag was made */
|
|
Packit |
b099d7 |
Boolean selection_move; /* Indicates that the action requires a
|
|
Packit |
b099d7 |
secondary move (i.e. copy & cut) */
|
|
Packit |
b099d7 |
Boolean pending_off; /* indicates pending delete state */
|
|
Packit |
b099d7 |
Boolean fontlist_created; /* Indicates that the text field widget created
|
|
Packit |
b099d7 |
it's own fontlist */
|
|
Packit |
b099d7 |
Boolean has_rect; /* currently has clipping rectangle */
|
|
Packit |
b099d7 |
Boolean do_drop; /* Indicates that the widget the recieved the
|
|
Packit |
b099d7 |
button release, did not have a previous
|
|
Packit |
b099d7 |
button press, so it is o.k. to request
|
|
Packit |
b099d7 |
the MOTIF_DROP selection. */
|
|
Packit |
b099d7 |
Boolean cancel; /* Cancels selection actions when true */
|
|
Packit |
b099d7 |
Boolean extending; /* Indicates extending primary selection */
|
|
Packit |
b099d7 |
Boolean sec_extending; /* Indicates extending secondary selection */
|
|
Packit |
b099d7 |
Boolean changed_visible; /* Indicates whether the dest_visible flag
|
|
Packit |
b099d7 |
is in a temporary changed state */
|
|
Packit |
b099d7 |
Boolean have_fontset; /* The widgets font is a fontset, not a
|
|
Packit |
b099d7 |
fontstruct... use R5 draw routines */
|
|
Packit |
b099d7 |
Boolean in_setvalues; /* used to disable unnecessary redisplays */
|
|
Packit |
b099d7 |
Boolean do_resize; /* used to prevent inappropriate resizes */
|
|
Packit |
b099d7 |
Boolean redisplay; /* used to set redisplay flag in setvalues */
|
|
Packit |
b099d7 |
Boolean overstrike; /* overstrike mode for character input */
|
|
Packit |
b099d7 |
Boolean sel_start; /* overstrike mode for character input */
|
|
Packit |
b099d7 |
XtPointer extension; /* Pointer to extension record. */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XtCallbackList destination_callback; /* Selection destination cb */
|
|
Packit |
b099d7 |
Boolean selection_link; /* Indicates that the action requires a
|
|
Packit |
b099d7 |
link */
|
|
Packit |
b099d7 |
/* New for 2.0 */
|
|
Packit |
b099d7 |
Boolean take_primary; /* Indicates that is has to take the
|
|
Packit |
b099d7 |
primary selection */
|
|
Packit |
b099d7 |
GC cursor_gc; /* 1-bit depth GC for creating the I-beam
|
|
Packit |
b099d7 |
stipples (normal & add mode) */
|
|
Packit |
b099d7 |
XtIntervalId drag_id; /* timer to start btn1 drag */
|
|
Packit |
b099d7 |
_XmTextActionRec *transfer_action; /* to keep track of delayed action */
|
|
Packit |
b099d7 |
/* Boolean rt_save; */ /* used for MT work */
|
|
Packit |
b099d7 |
OnTheSpotData onthespot; /* data for on-the-spot im support */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
Boolean check_set_render_table; /* used for MT safe work */
|
|
Packit |
b099d7 |
Boolean programmatic_highlights; /* XmTextFieldSetHighlight called */
|
|
Packit |
b099d7 |
#ifdef USE_XFT
|
|
Packit |
b099d7 |
Boolean use_xft;
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
} XmTextFieldPart;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
typedef struct _XmTextFieldRec {
|
|
Packit |
b099d7 |
CorePart core;
|
|
Packit |
b099d7 |
XmPrimitivePart primitive;
|
|
Packit |
b099d7 |
XmTextFieldPart text;
|
|
Packit |
b099d7 |
} XmTextFieldRec;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/****************
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* Macros for the uncached data
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
****************/
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#define TextF_ActivateCallback(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.activate_callback)
|
|
Packit |
b099d7 |
#define TextF_LosingFocusCallback(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.losing_focus_callback)
|
|
Packit |
b099d7 |
#define TextF_FocusCallback(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.focus_callback)
|
|
Packit |
b099d7 |
#define TextF_ModifyVerifyCallback(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.modify_verify_callback)
|
|
Packit |
b099d7 |
#define TextF_ModifyVerifyCallbackWcs(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.wcs_modify_verify_callback)
|
|
Packit |
b099d7 |
#define TextF_MotionVerifyCallback(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.motion_verify_callback)
|
|
Packit |
b099d7 |
#define TextF_ValueChangedCallback(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.value_changed_callback)
|
|
Packit |
b099d7 |
#define TextF_Value(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.value)
|
|
Packit |
b099d7 |
#define TextF_WcValue(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.wc_value)
|
|
Packit |
b099d7 |
#define TextF_MarginHeight(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.margin_height)
|
|
Packit |
b099d7 |
#define TextF_MarginWidth(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.margin_width)
|
|
Packit |
b099d7 |
#define TextF_CursorPosition(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.cursor_position)
|
|
Packit |
b099d7 |
#define TextF_Columns(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.columns)
|
|
Packit |
b099d7 |
#define TextF_MaxLength(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.max_length)
|
|
Packit |
b099d7 |
#define TextF_BlinkRate(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.blink_rate)
|
|
Packit |
b099d7 |
#define TextF_FontList(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.font_list)
|
|
Packit |
b099d7 |
#define TextF_Font(tfg) \
|
|
Packit |
b099d7 |
((XFontStruct*)(((XmTextFieldWidget)(tfg)) -> text.font))
|
|
Packit |
b099d7 |
#define TextF_FontAscent(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.font_ascent)
|
|
Packit |
b099d7 |
#define TextF_FontDescent(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.font_descent)
|
|
Packit |
b099d7 |
#define TextF_SelectionArray(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.selection_array)
|
|
Packit |
b099d7 |
#define TextF_SelectionArrayCount(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.selection_array_count)
|
|
Packit |
b099d7 |
#define TextF_ResizeWidth(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.resize_width)
|
|
Packit |
b099d7 |
#define TextF_PendingDelete(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.pending_delete)
|
|
Packit |
b099d7 |
#define TextF_Editable(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.editable)
|
|
Packit |
b099d7 |
#define TextF_CursorPositionVisible(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.cursor_position_visible)
|
|
Packit |
b099d7 |
#define TextF_Threshold(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.threshold)
|
|
Packit |
b099d7 |
#define TextF_UseFontSet(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.have_fontset)
|
|
Packit |
b099d7 |
#ifdef USE_XFT
|
|
Packit |
b099d7 |
#define TextF_UseXft(tfg) \
|
|
Packit |
b099d7 |
(((XmTextFieldWidget)(tfg)) -> text.use_xft)
|
|
Packit |
b099d7 |
#define TextF_XftFont(tfg) \
|
|
Packit |
b099d7 |
((XftFont*)(((XmTextFieldWidget)(tfg)) -> text.font))
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* On the spot support.
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
#define PreStart(tfg) (((XmTextFieldWidget)(tfg)) -> \
|
|
Packit |
b099d7 |
text.onthespot->start)
|
|
Packit |
b099d7 |
#define PreEnd(tfg) (((XmTextFieldWidget)(tfg)) -> \
|
|
Packit |
b099d7 |
text.onthespot->end)
|
|
Packit |
b099d7 |
#define PreCursor(tfg) (((XmTextFieldWidget)(tfg)) -> \
|
|
Packit |
b099d7 |
text.onthespot->cursor)
|
|
Packit |
b099d7 |
#define FUnderVerifyPreedit(tfg) (((XmTextFieldWidget)(tfg)) -> \
|
|
Packit |
b099d7 |
text.onthespot->under_verify_preedit)
|
|
Packit |
b099d7 |
#define FVerifyCommitNeeded(tfg) (((XmTextFieldWidget)(tfg)) -> \
|
|
Packit |
b099d7 |
text.onthespot->verify_commit)
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#ifdef __cplusplus
|
|
Packit |
b099d7 |
} /* Close scope of 'extern "C"' declaration which encloses file. */
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#endif /* _XmTextFieldWidgetP_h */
|