/usr/include/Xm/TextInP.h is in libmotif-dev 2.3.4-13.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 | /*
* Motif
*
* Copyright (c) 1987-2012, The Open Group. All rights reserved.
*
* These libraries and programs are free software; you can
* redistribute them and/or modify them under the terms of the GNU
* Lesser General Public License as published by the Free Software
* Foundation; either version 2 of the License, or (at your option)
* any later version.
*
* These libraries and programs are distributed in the hope that
* they will be useful, but WITHOUT ANY WARRANTY; without even the
* implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with these librararies and programs; if not, write
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
* Floor, Boston, MA 02110-1301 USA
*/
/*
* HISTORY
*/
/* $XConsortium: TextInP.h /main/13 1995/07/13 18:07:54 drk $ */
/* (c) Copyright 1989, DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS. */
/* (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
#ifndef _XmTextInP_h
#define _XmTextInP_h
#include <Xm/Text.h>
#include <Xm/TextStrSoP.h>
#ifdef __cplusplus
extern "C" {
#endif
/****************************************************************
*
* Definitions for modules implementing text input modules.
*
****************************************************************/
typedef struct {
int x;
int y;
} SelectionHint;
typedef struct _InputDataRec {
XmTextWidget widget; /* Back-pointer to widget record. */
XmTextScanType *sarray; /* Description of what to cycle through on */
/* selections. */
int sarraycount; /* Number of elements in above. */
int new_sel_length; /* New selection length for selection moves. */
int threshold; /* number of pixels crossed -> drag */
SelectionHint selectionHint; /* saved coords of button down */
SelectionHint Sel2Hint; /* saved the coords of button down */
XtIntervalId select_id;
XmTextScanType stype; /* Current selection type. */
XmTextScanDirection extendDir;
XmTextScanDirection Sel2ExtendDir;
XmTextPosition origLeft, origRight;
XmTextPosition Sel2OrigLeft, Sel2OrigRight;
XmTextPosition stuffpos;
XmTextPosition sel2Left, sel2Right; /* secondary selection */
XmTextPosition anchor; /* anchor point of the primary selection */
Position select_pos_x; /* x position for timer-based scrolling */
Position select_pos_y; /* y position for timer-based scrolling */
Boolean pendingdelete; /* TRUE if we're implementing pending delete */
Boolean syncing; /* If TRUE, then we've multiple keystrokes */
Boolean extending; /* true if we are extending */
Boolean Sel2Extending; /* true if we are extending */
Boolean hasSel2; /* has secondary selection */
Boolean has_destination; /* has destination selection */
Boolean selectionMove; /* delete selection after stuff */
Boolean cancel; /* indicates that cancel was pressed */
Boolean overstrike; /* overstrike */
Boolean sel_start; /* indicates that a btn2 was pressed */
Time dest_time; /* time of destination selection ownership */
Time sec_time; /* time of secondary selection ownership */
Time lasttime; /* Time of last event. */
Boolean selectionLink; /* This is a link vs. a copy operation */
XtIntervalId drag_id; /* timer to start btn1 drag */
_XmTextActionRec *transfer_action; /* to keep track of delayed action */
} InputDataRec, *InputData;
/*
* Create a new instance of an input object. By the time this is called,
* the widget context has been saved.
*/
typedef void (*InputCreateProc)(
Widget,
ArgList,
Cardinal) ;
/*
* Get values out of the input object.
*/
typedef void (*InputGetValuesProc)(
Widget,
ArgList,
Cardinal) ;
/*
* Set values in the input object.
*/
typedef void (*InputSetValuesProc)(
Widget,
Widget,
Widget,
ArgList,
Cardinal *) ;
/*
* Inform input of invalidated positions.
*/
typedef void (*InputInvalidateProc)(
XmTextWidget,
XmTextPosition,
XmTextPosition,
long) ;
/*
* Get secondary resources.
*/
typedef void (*InputGetSecResProc)(
XmSecondaryResourceData *) ;
typedef struct _InputRec {
struct _InputDataRec *data; /* Input-specific data; opaque type. */
InputInvalidateProc Invalidate;
InputGetValuesProc GetValues;
InputSetValuesProc SetValues;
XtWidgetProc destroy;
InputGetSecResProc GetSecResData;
} InputRec;
externalref XtPointer _XmdefaultTextActionsTable;
externalref Cardinal _XmdefaultTextActionsTableSize;
#ifdef __cplusplus
} /* Close scope of 'extern "C"' declaration which encloses file. */
#endif
#endif /* _XmTextInP_h */
/*DON'T ADD ANYTHING AFTER THIS #endif */
|