1/* 2 * Motif 3 * 4 * Copyright (c) 1987-2012, The Open Group. All rights reserved. 5 * 6 * These libraries and programs are free software; you can 7 * redistribute them and/or modify them under the terms of the GNU 8 * Lesser General Public License as published by the Free Software 9 * Foundation; either version 2 of the License, or (at your option) 10 * any later version. 11 * 12 * These libraries and programs are distributed in the hope that 13 * they will be useful, but WITHOUT ANY WARRANTY; without even the 14 * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 15 * PURPOSE. See the GNU Lesser General Public License for more 16 * details. 17 * 18 * You should have received a copy of the GNU Lesser General Public 19 * License along with these librararies and programs; if not, write 20 * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth 21 * Floor, Boston, MA 02110-1301 USA 22*/ 23/* $TOG: Xm.h /main/38 1999/10/18 14:50:22 samborn $ */ 24 25#ifndef _Xm_h 26#define _Xm_h 27 28#ifndef OM22_COMPATIBILITY 29#undef OM22_COMPATIBILITY 30#endif 31 32#ifndef JPEG_SUPPORTED 33#undef JPEG_SUPPORTED 34#endif 35 36#ifndef PNG_SUPPORTED 37#undef PNG_SUPPORTED 38#endif 39 40#ifndef UTF8_SUPPORTED 41#undef UTF8_SUPPORTED 42#endif 43 44#ifndef PRINTING_SUPPORTED 45#undef PRINTING_SUPPORTED 46#endif 47 48#ifndef USE_XFT 49#undef USE_XFT 50#endif 51 52#if !defined(__STDC__) \ 53 && !defined(__cplusplus) && !defined(c_plusplus) \ 54 && !defined(FUNCPROTO) && !defined(XTFUNCPROTO) && !defined(XMFUNCPROTO) 55#define _NO_PROTO 56#endif /* __STDC__ */ 57 58#include <X11/Intrinsic.h> 59#include <X11/Shell.h> 60#include <X11/Xatom.h> 61#ifdef PRINTING_SUPPORTED 62#include <X11/extensions/Print.h> 63#endif 64#include <Xm/XmStrDefs.h> 65#include <Xm/XmStrDefs22.h> 66#include <Xm/XmStrDefs23.h> 67#include <Xm/VirtKeys.h> 68#include <Xm/Transfer.h> 69#include <Xm/Primitive.h> 70#include <Xm/Manager.h> 71#include <Xm/Gadget.h> 72 73#ifdef __cplusplus 74extern "C" { 75#endif 76 77#define XmVERSION 2 78#define XmREVISION 3 79#define XmUPDATE_LEVEL 8 80#define XmVersion (XmVERSION * 1000 + XmREVISION) 81#define XmVERSION_STRING "@(#)Motif Version 2.3.8" 82 83externalref int xmUseVersion; 84 85 86/* define used to denote an unspecified pixmap */ 87 88#define XmUNSPECIFIED_PIXMAP 2 89 90/* define for an unspecified position */ 91 92#define XmUNSPECIFIED_POSITION -1 93 94/******************* 95 * 96 * Defines for resources to be defaulted by vendors. 97 * String are initialized in Xmos.c 98 * 99 ****************/ 100 101#define XmSTRING_OS_CHARSET XmSTRING_ISO8859_1 102#ifndef XmFALLBACK_CHARSET 103#define XmFALLBACK_CHARSET XmSTRING_ISO8859_1 104#endif 105 106#define XmDEFAULT_FONT _XmSDEFAULT_FONT 107#define XmDEFAULT_BACKGROUND _XmSDEFAULT_BACKGROUND 108#define XmDEFAULT_DARK_THRESHOLD 20 109#define XmDEFAULT_LIGHT_THRESHOLD 93 110#define XmDEFAULT_FOREGROUND_THRESHOLD 70 111 112externalref char _XmSDEFAULT_FONT[]; /* In Xmos.c */ 113externalref char _XmSDEFAULT_BACKGROUND[]; /* In Xmos.c */ 114 115typedef unsigned char XmDirection; 116 117#define XmDIRECTION_IGNORED 0x30 118 119#define XmRIGHT_TO_LEFT_MASK 0x01 /* 0x01 for bc */ 120#define XmLEFT_TO_RIGHT_MASK 0x02 121#define XmHORIZONTAL_MASK 0x03 122#define XmTOP_TO_BOTTOM_MASK 0x04 123#define XmBOTTOM_TO_TOP_MASK 0x08 124#define XmVERTICAL_MASK 0x0c 125#define XmPRECEDENCE_HORIZ_MASK 0x40 126#define XmPRECEDENCE_VERT_MASK 0x80 127#define XmPRECEDENCE_MASK 0xc0 128 129enum { 130 XmRIGHT_TO_LEFT_TOP_TO_BOTTOM = 131 XmRIGHT_TO_LEFT_MASK | XmTOP_TO_BOTTOM_MASK | XmPRECEDENCE_HORIZ_MASK, 132 XmLEFT_TO_RIGHT_TOP_TO_BOTTOM = 133 XmLEFT_TO_RIGHT_MASK | XmTOP_TO_BOTTOM_MASK | XmPRECEDENCE_HORIZ_MASK, 134 XmRIGHT_TO_LEFT_BOTTOM_TO_TOP = 135 XmRIGHT_TO_LEFT_MASK | XmBOTTOM_TO_TOP_MASK | XmPRECEDENCE_HORIZ_MASK, 136 XmLEFT_TO_RIGHT_BOTTOM_TO_TOP = 137 XmLEFT_TO_RIGHT_MASK | XmBOTTOM_TO_TOP_MASK | XmPRECEDENCE_HORIZ_MASK, 138 XmTOP_TO_BOTTOM_RIGHT_TO_LEFT = 139 XmRIGHT_TO_LEFT_MASK | XmTOP_TO_BOTTOM_MASK | XmPRECEDENCE_VERT_MASK, 140 XmTOP_TO_BOTTOM_LEFT_TO_RIGHT = 141 XmLEFT_TO_RIGHT_MASK | XmTOP_TO_BOTTOM_MASK | XmPRECEDENCE_VERT_MASK, 142 XmBOTTOM_TO_TOP_RIGHT_TO_LEFT = 143 XmRIGHT_TO_LEFT_MASK | XmBOTTOM_TO_TOP_MASK | XmPRECEDENCE_VERT_MASK, 144 XmBOTTOM_TO_TOP_LEFT_TO_RIGHT = 145 XmLEFT_TO_RIGHT_MASK | XmBOTTOM_TO_TOP_MASK | XmPRECEDENCE_VERT_MASK, 146 XmTOP_TO_BOTTOM = 147 XmTOP_TO_BOTTOM_MASK | XmHORIZONTAL_MASK | XmPRECEDENCE_MASK, 148 XmBOTTOM_TO_TOP = 149 XmBOTTOM_TO_TOP_MASK | XmHORIZONTAL_MASK | XmPRECEDENCE_MASK, 150 XmRIGHT_TO_LEFT = 151 XmRIGHT_TO_LEFT_MASK | XmVERTICAL_MASK | XmPRECEDENCE_MASK, 152 XmLEFT_TO_RIGHT = 153 XmLEFT_TO_RIGHT_MASK | XmVERTICAL_MASK | XmPRECEDENCE_MASK, 154 XmDEFAULT_DIRECTION = 0xff 155 }; 156 157 158extern Boolean XmDirectionMatch(XmDirection d1, 159 XmDirection d2); 160extern Boolean XmDirectionMatchPartial(XmDirection d1, 161 XmDirection d2, 162 XmDirection dmask); 163 164/**************** 165 * 166 * XmString structure defines. These must be here (at the start of the file) 167 * becaused they are used later on. 168 * 169 ****************/ 170typedef enum{ XmFONT_IS_FONT, XmFONT_IS_FONTSET, XmFONT_IS_XFT 171 } XmFontType; 172 173enum { XmSTRING_DIRECTION_L_TO_R, 174 XmSTRING_DIRECTION_R_TO_L, 175 XmSTRING_DIRECTION_UNSET = 3, 176 XmSTRING_DIRECTION_DEFAULT = XmDEFAULT_DIRECTION 177 }; 178 179typedef unsigned char XmStringDirection; 180typedef union __XmStringRec *XmString; /* opaque to outside */ 181typedef XmString * XmStringTable; /* opaque to outside */ 182typedef char * XmStringCharSet; /* Null term string */ 183typedef char * XmStringTag; /* Null term string */ 184typedef unsigned char XmStringComponentType; /* component tags */ 185 186typedef struct __XmRenditionRec **XmFontListEntry; /* opaque to outside */ 187typedef struct __XmRenderTableRec **XmFontList; /* opaque to outside */ 188typedef struct _XmFontListContextRec *XmFontContext; /* opaque to outside */ 189 190typedef struct __XmStringContextRec *_XmStringContext; /* opaque to outside */ 191typedef union __XmStringRec *_XmString; /* opaque to outside */ 192typedef struct __XmStringContextRec *XmStringContext; /* opaque to outside */ 193 194enum{ XmSTRING_COMPONENT_UNKNOWN, XmSTRING_COMPONENT_CHARSET, 195 XmSTRING_COMPONENT_TEXT, XmSTRING_COMPONENT_DIRECTION, 196 XmSTRING_COMPONENT_SEPARATOR, XmSTRING_COMPONENT_LOCALE_TEXT, 197 XmSTRING_COMPONENT_LOCALE, XmSTRING_COMPONENT_WIDECHAR_TEXT, 198 XmSTRING_COMPONENT_LAYOUT_PUSH, XmSTRING_COMPONENT_LAYOUT_POP, 199 XmSTRING_COMPONENT_RENDITION_BEGIN, XmSTRING_COMPONENT_RENDITION_END, 200 XmSTRING_COMPONENT_TAB 201 /* 13-125 reserved */ 202 } ; 203 204#define XmSTRING_COMPONENT_FONTLIST_ELEMENT_TAG XmSTRING_COMPONENT_CHARSET 205 206#define XmSTRING_COMPONENT_TAG XmSTRING_COMPONENT_CHARSET 207 208#define XmSTRING_COMPONENT_END ((XmStringComponentType) 126) 209 210#define XmSTRING_COMPONENT_USER_BEGIN ((XmStringComponentType) 128) 211 /* 128-255 are user tags */ 212#define XmSTRING_COMPONENT_USER_END ((XmStringComponentType) 255) 213 214typedef enum { 215 XmCHARSET_TEXT, XmMULTIBYTE_TEXT, 216 XmWIDECHAR_TEXT, XmNO_TEXT 217 } XmTextType; 218 219typedef enum { 220 XmOUTPUT_ALL, XmOUTPUT_BETWEEN, 221 XmOUTPUT_BEGINNING, XmOUTPUT_END, 222 XmOUTPUT_BOTH 223 } XmParseModel; 224 225typedef unsigned char XmIncludeStatus; 226enum { 227 XmINSERT, XmTERMINATE, XmINVOKE 228 }; 229 230/* We are making an attempt (perhaps unnecessaryily) to keep our style 231 constants the same as the equivalent Xlib style constants. The first 232 Motif specific style constant starts at 32 so that the consortium can 233 add constants to their list without overlapping with ours. */ 234typedef enum { 235 XmSTYLE_STRING = XStringStyle, 236 XmSTYLE_COMPOUND_TEXT = XCompoundTextStyle, 237 XmSTYLE_TEXT = XTextStyle, 238 XmSTYLE_STANDARD_ICC_TEXT = XStdICCTextStyle, 239 XmSTYLE_LOCALE = 32, 240 XmSTYLE_COMPOUND_STRING 241 } XmICCEncodingStyle; 242 243/**************** 244 * 245 * XmParseTable structure defines. These must be here (at the start of 246 * the file) because they are used later on. 247 * 248 ****************/ 249 250typedef struct __XmParseMappingRec *XmParseMapping; /* opaque */ 251typedef XmParseMapping *XmParseTable; 252 253/* A special pattern used to match a change of character direction. */ 254#define XmDIRECTION_CHANGE NULL 255 256 257typedef XmIncludeStatus (*XmParseProc) (XtPointer *in_out, 258 XtPointer text_end, 259 XmTextType type, 260 XmStringTag locale_tag, 261 XmParseMapping entry, 262 int pattern_length, 263 XmString *str_include, 264 XtPointer call_data); 265 266 267/**************** 268 * 269 * XmTabList structure defines. These must be here (at the start of the file) 270 * becaused they are used later on. 271 * 272 ****************/ 273typedef enum { 274 XmABSOLUTE, XmRELATIVE 275 } XmOffsetModel; 276 277typedef struct __XmTabRec *XmTab; /* opaque */ 278typedef struct __XmTabListRec *XmTabList; /* opaque */ 279 280 281/**************** 282 * 283 * XmRenderTable structure defines. These must be here (at the start of the file) 284 * becaused they are used later on. 285 * 286 ****************/ 287/* XmRendition declarations */ 288typedef struct __XmRenditionRec **XmRendition; /* opaque */ 289typedef struct __XmRenderTableRec **XmRenderTable; /* opaque */ 290 291typedef enum { 292 XmSKIP, XmMERGE_REPLACE, 293 XmMERGE_OLD, XmMERGE_NEW, 294 XmDUPLICATE /* For XmFontListAdd and XmFontListAppendEntry. */ 295 } XmMergeMode; 296 297#define XmAS_IS 255 298#define XmFORCE_COLOR 1 299 300#define XmUNSPECIFIED_PIXEL ((Pixel) (~0)) 301#define XmDEFAULT_SELECT_COLOR XmUNSPECIFIED_PIXEL 302#define XmREVERSED_GROUND_COLORS (XmDEFAULT_SELECT_COLOR - 1) 303#define XmHIGHLIGHT_COLOR (XmREVERSED_GROUND_COLORS - 1) 304 305enum { XmUNSPECIFIED_LOAD_MODEL, XmLOAD_DEFERRED, XmLOAD_IMMEDIATE }; 306 307 308 309/************************************************************************ 310 * Primitive Resources and define values 311 ************************************************************************/ 312 313/* size policy values */ 314 315enum{ XmCHANGE_ALL, XmCHANGE_NONE, 316 XmCHANGE_WIDTH, XmCHANGE_HEIGHT 317 } ; 318 319/* unit type values */ 320 321enum{ XmPIXELS, Xm100TH_MILLIMETERS, 322 Xm1000TH_INCHES, Xm100TH_POINTS, 323 Xm100TH_FONT_UNITS, XmINCHES, 324 XmCENTIMETERS, XmMILLIMETERS, 325 XmPOINTS, XmFONT_UNITS 326 } ; 327 328/* DeleteResponse values */ 329 330enum{ XmDESTROY, XmUNMAP, 331 XmDO_NOTHING 332 } ; 333enum{ XmEXPLICIT, XmPOINTER 334 } ; 335/************************************************************************ 336 * Navigation defines 337 ************************************************************************/ 338 339enum{ XmNONE, XmTAB_GROUP, 340 XmSTICKY_TAB_GROUP, XmEXCLUSIVE_TAB_GROUP 341 } ; 342 343#define XmDYNAMIC_DEFAULT_TAB_GROUP (255) 344 345/************************************************************************ 346 * Audible warning 347 ************************************************************************/ 348 349enum{ /* XmNONE */ XmBELL = 1 350 } ; 351 352/************************************************************************ 353 * Input Manager defines 354 ************************************************************************/ 355 356enum { 357 XmPER_SHELL, XmPER_WIDGET, 358 XmINHERIT_POLICY = 255 359 } ; 360 361typedef unsigned char XmInputPolicy; 362 363/************************************************************************ 364 * Menu defines 365 ************************************************************************/ 366 367enum{ XmNO_ORIENTATION, XmVERTICAL, 368 XmHORIZONTAL 369 } ; 370enum{ XmWORK_AREA, XmMENU_BAR, 371 XmMENU_PULLDOWN, XmMENU_POPUP, 372 XmMENU_OPTION 373 } ; 374enum{ XmNO_PACKING, XmPACK_TIGHT, 375 XmPACK_COLUMN, XmPACK_NONE 376 } ; 377enum{/* XmALIGNMENT_BASELINE_TOP, XmALIGNMENT_CENTER, 378 XmALIGNMENT_BASELINE_BOTTOM, */ XmALIGNMENT_CONTENTS_TOP = 3, 379 XmALIGNMENT_CONTENTS_BOTTOM 380 } ; 381enum{ XmTEAR_OFF_ENABLED, XmTEAR_OFF_DISABLED 382 } ; 383enum{ XmUNPOST, XmUNPOST_AND_REPLAY 384 } ; 385enum{ XmLAST_POSITION = -1, XmFIRST_POSITION 386 } ; 387enum{ XmPOPUP_DISABLED = 0, XmPOPUP_KEYBOARD = 1, 388 XmPOPUP_AUTOMATIC, XmPOPUP_AUTOMATIC_RECURSIVE }; 389 390/************************************************************************ 391 * Color Selector defines 392 ************************************************************************/ 393 394typedef enum { XmListMode = 0, XmScaleMode = 1 } XmColorMode; 395 396/************************************************************************ 397 * Column defines 398 ************************************************************************/ 399 400enum { XmFILL_UNSPECIFIED, XmFILL_FLUSH, XmFILL_RAGGED }; 401 402enum { XmDISTRIBUTE_TIGHT, XmDISTRIBUTE_SPREAD }; 403 404/************************************************************************ 405 * ComboBox defines 406 ************************************************************************/ 407 408enum{ XmCOMBO_BOX=0, XmDROP_DOWN_COMBO_BOX, 409 XmDROP_DOWN_LIST 410 } ; 411 412enum{ /* XmNONE */ XmQUICK_NAVIGATE = 1, XmINVALID_MATCH_BEHAVIOR 413 } ; 414 415enum{ XmZERO_BASED, XmONE_BASED 416 } ; 417 418#define XmINVALID_POSITION -1 419 420/************************************************************************ 421 * Icon & Button Box defines 422 ************************************************************************/ 423typedef enum { XmIconTop, 424 XmIconLeft, 425 XmIconRight, 426 XmIconBottom, 427 XmIconOnly, 428 XmIconNone } XmIconPlacement; 429 430typedef enum { XmFillNone, 431 XmFillMajor, 432 XmFillMinor, 433 XmFillAll } XmFillOption; 434 435/************************************************************************ 436 * Hierarchy/Tree/Outline defines 437 ************************************************************************/ 438typedef enum {XmAlwaysOpen, 439 XmOpen, 440 XmClosed, XmHidden, 441 XmNotInHierarchy} XmHierarchyNodeState; 442 443typedef enum { XmTreeLadder, XmTreeDirect } XmTreeConnectStyle; 444 445typedef enum { XmTreeCompressNone=0, XmTreeCompressLeaves=1, 446 XmTreeCompressAll=2 } XmTreeCompressStyle; 447 448/************************************************************************ 449 * Label/Frame defines 450 ************************************************************************/ 451 452enum{ XmALIGNMENT_BEGINNING, XmALIGNMENT_CENTER, 453 XmALIGNMENT_END, XmALIGNMENT_UNSPECIFIED 454 } ; 455enum{ XmALIGNMENT_BASELINE_TOP, /* XmALIGNMENT_CENTER, */ 456 XmALIGNMENT_BASELINE_BOTTOM = 2, XmALIGNMENT_WIDGET_TOP, 457 XmALIGNMENT_WIDGET_BOTTOM 458 } ; 459/* new enum introduced in 2.0 to clear up the confusion in 460 widget top/bottom attachment */ 461#define XmALIGNMENT_CHILD_TOP XmALIGNMENT_WIDGET_BOTTOM 462#define XmALIGNMENT_CHILD_BOTTOM XmALIGNMENT_WIDGET_TOP 463 464/************************************************************************ 465 * Frame defines 466 ************************************************************************/ 467 468enum{ XmFRAME_GENERIC_CHILD, XmFRAME_WORKAREA_CHILD, 469 XmFRAME_TITLE_CHILD 470 } ; 471/************************************************************************ 472 * ToggleButton defines 473 ************************************************************************/ 474 475enum{ XmN_OF_MANY = 1, XmONE_OF_MANY, 476 XmONE_OF_MANY_ROUND, XmONE_OF_MANY_DIAMOND 477 } ; 478/************************************************************************ 479 * Form defines 480 ************************************************************************/ 481 482enum{ XmATTACH_NONE, XmATTACH_FORM, 483 XmATTACH_OPPOSITE_FORM, XmATTACH_WIDGET, 484 XmATTACH_OPPOSITE_WIDGET, XmATTACH_POSITION, 485 XmATTACH_SELF 486 } ; 487enum{ XmRESIZE_NONE, XmRESIZE_GROW, 488 XmRESIZE_ANY 489 } ; 490 491/************************************************************************ 492 * TabBox/TabStack defines 493 ************************************************************************/ 494 495typedef enum {XmTABS_SQUARED, XmTABS_ROUNDED, XmTABS_BEVELED} XmTabStyle; 496typedef enum {XmTABS_BASIC, XmTABS_STACKED, XmTABS_STACKED_STATIC, 497 XmTABS_SCROLLED, XmTABS_OVERLAYED} XmTabMode; 498 499typedef enum {XmTAB_ORIENTATION_DYNAMIC, XmTABS_RIGHT_TO_LEFT, 500 XmTABS_LEFT_TO_RIGHT, XmTABS_TOP_TO_BOTTOM, 501 XmTABS_BOTTOM_TO_TOP} XmTabOrientation; 502 503typedef enum {XmTAB_EDGE_TOP_LEFT, XmTAB_EDGE_BOTTOM_RIGHT} XmTabEdge; 504 505typedef enum {XmTAB_ARROWS_ON_RIGHT, XmTAB_ARROWS_ON_LEFT, 506 XmTAB_ARROWS_SPLIT} XmTabArrowPlacement; 507 508enum {XmCR_TAB_SELECTED, XmCR_TAB_UNSELECTED}; 509 510typedef enum {XmTABS_ON_TOP, XmTABS_ON_BOTTOM, XmTABS_ON_RIGHT, 511 XmTABS_ON_LEFT} XmTabSide; 512 513typedef enum {XmPIXMAP_TOP, XmPIXMAP_BOTTOM, XmPIXMAP_RIGHT, XmPIXMAP_LEFT, 514 XmPIXMAP_NONE, XmPIXMAP_ONLY} XmPixmapPlacement; 515 516typedef enum {XmTAB_VALUE_COPY, XmTAB_VALUE_SHARE} XmTabValueMode; 517 518typedef enum {XmTAB_CMP_VISUAL, XmTAB_CMP_SIZE, XmTAB_CMP_EQUAL} XmTabResult; 519 520typedef struct _XmTabStackCallbackStruct { 521 int reason; 522 XEvent *event; 523 Widget selected_child; 524} XmTabStackCallbackStruct; 525 526typedef struct _XmTabBoxCallbackStruct { 527 int reason; 528 XEvent *event; 529 int tab_index; 530 int old_index; 531} XmTabBoxCallbackStruct; 532 533/**************************************************************************** 534 * Callback reasons 535 ****************************************************************************/ 536 537enum{ XmCR_NONE, XmCR_HELP, 538 XmCR_VALUE_CHANGED, XmCR_INCREMENT, 539 XmCR_DECREMENT, XmCR_PAGE_INCREMENT, 540 XmCR_PAGE_DECREMENT, XmCR_TO_TOP, 541 XmCR_TO_BOTTOM, XmCR_DRAG, 542 XmCR_ACTIVATE, XmCR_ARM, 543 XmCR_DISARM, XmCR_MAP = 16, 544 XmCR_UNMAP, XmCR_FOCUS, 545 XmCR_LOSING_FOCUS, XmCR_MODIFYING_TEXT_VALUE, 546 XmCR_MOVING_INSERT_CURSOR, XmCR_EXECUTE, 547 XmCR_SINGLE_SELECT, XmCR_MULTIPLE_SELECT, 548 XmCR_EXTENDED_SELECT, XmCR_BROWSE_SELECT, 549 XmCR_DEFAULT_ACTION, XmCR_CLIPBOARD_DATA_REQUEST, 550 XmCR_CLIPBOARD_DATA_DELETE, XmCR_CASCADING, 551 XmCR_OK, XmCR_CANCEL, 552 XmCR_APPLY = 34, XmCR_NO_MATCH, 553 XmCR_COMMAND_ENTERED, XmCR_COMMAND_CHANGED, 554 XmCR_EXPOSE, XmCR_RESIZE, 555 XmCR_INPUT, XmCR_GAIN_PRIMARY, 556 XmCR_LOSE_PRIMARY, XmCR_CREATE, 557 XmCR_TEAR_OFF_ACTIVATE, XmCR_TEAR_OFF_DEACTIVATE, 558 XmCR_OBSCURED_TRAVERSAL, XmCR_FOCUS_MOVED, 559 XmCR_REPOST = 54, XmCR_COLLAPSED, 560 XmCR_EXPANDED, XmCR_SELECT, 561 XmCR_DRAG_START, XmCR_NO_FONT, 562 XmCR_NO_RENDITION, XmCR_POST, 563 XmCR_SPIN_NEXT, XmCR_SPIN_PRIOR, 564 XmCR_SPIN_FIRST, XmCR_SPIN_LAST, 565 XmCR_PAGE_SCROLLER_INCREMENT, XmCR_PAGE_SCROLLER_DECREMENT, 566 XmCR_MAJOR_TAB, XmCR_MINOR_TAB, 567 XmCR_START_JOB, XmCR_END_JOB, 568 XmCR_PAGE_SETUP, XmCR_PDM_NONE, 569 XmCR_PDM_UP, XmCR_PDM_START_ERROR, 570 XmCR_PDM_START_VXAUTH, XmCR_PDM_START_PXAUTH, 571 XmCR_PDM_OK, XmCR_PDM_CANCEL, 572 XmCR_PDM_EXIT_ERROR, 573 XmCR_UPDATE_SHELL, XmCR_UPDATE_TEXT, 574 XmCR_VERIFY_TEXT, XmCR_VERIFY_TEXT_FAILED, 575 XmCR_ENTER_CHILD, XmCR_LEAVE_CHILD, 576 XmCR_PROTOCOLS = 6666 /* required for BC. See CR 9158 */ 577 } ; 578 579/************************************************************************ 580 * new ScrollBar showArrows define 581 ************************************************************************/ 582 583enum{ /* XmNONE */ XmEACH_SIDE = 1, 584 XmMAX_SIDE, XmMIN_SIDE 585 } ; 586 587 588/************************************************************************ 589 * Sliding mode 590 ************************************************************************/ 591 592enum{ XmSLIDER, XmTHERMOMETER} ; 593 594 595/************************************************************************ 596 * Slider Visual 597 ************************************************************************/ 598 599enum{ XmBACKGROUND_COLOR, XmFOREGROUND_COLOR, 600 XmTROUGH_COLOR, XmSHADOWED_BACKGROUND} ; 601 602 603/************************************************************************ 604 * Slider Mark 605 ************************************************************************/ 606 607enum{ /* XmNONE, */ XmETCHED_LINE = 1, 608 XmTHUMB_MARK, XmROUND_MARK } ; 609 610 611/************************************************************************ 612 * new Scale showValue 613 ************************************************************************/ 614 615enum{ /* XmNONE */ XmNEAR_SLIDER = 1, 616 XmNEAR_BORDER 617 } ; 618 619 620/************************************************************************ 621 * new ScrolledWindow/MainWindow chidType 622 ************************************************************************/ 623 624/* XmWORK_AREA, XmMENU_BAR and XmSEPARATOR have to match the existing ones */ 625enum{ /* XmWORK_AREA = 0, XmMENU_BAR = 1, */ 626 XmHOR_SCROLLBAR = 2, 627 XmVERT_SCROLLBAR, 628 XmCOMMAND_WINDOW, 629 /* XmSEPARATOR = 5 */ 630 XmMESSAGE_WINDOW = 6, 631 XmSCROLL_HOR, XmSCROLL_VERT, XmNO_SCROLL, 632 XmCLIP_WINDOW, XmGENERIC_CHILD 633 } ; 634 635/************************************************************************ 636 * new ScrolledWindow auto drag enum 637 ************************************************************************/ 638 639enum{ XmAUTO_DRAG_ENABLED, XmAUTO_DRAG_DISABLED 640 } ; 641 642/************************************************************************ 643 * new Display enable warp enum 644 ************************************************************************/ 645 646enum{ XmENABLE_WARP_ON, XmENABLE_WARP_OFF 647 } ; 648 649/************************************************************************ 650 * new Display enable btn1 transfer enum 651 ************************************************************************/ 652 653enum{ XmOFF, XmBUTTON2_ADJUST, 654 XmBUTTON2_TRANSFER }; 655 656/************************************************************************ 657 * auto_selection_type 658 ************************************************************************/ 659 660enum{ XmAUTO_UNSET, XmAUTO_BEGIN, 661 XmAUTO_MOTION, XmAUTO_CANCEL, 662 XmAUTO_NO_CHANGE, XmAUTO_CHANGE 663 }; 664 665/************************************************************************ 666 * Callback structures 667 ************************************************************************/ 668 669typedef struct 670{ 671 int reason; 672 XEvent *event; 673} XmAnyCallbackStruct; 674 675typedef struct 676{ 677 int reason; 678 XEvent *event; 679 int click_count; 680} XmArrowButtonCallbackStruct; 681 682typedef struct _XmDragStartCallbackStruct { 683 int reason; 684 XEvent *event; 685 Widget widget; 686 Boolean doit; 687} XmDragStartCallbackStruct, *XmDragStartCallback; 688 689typedef struct 690{ 691 int reason; 692 XEvent *event; 693 XmString item_or_text; 694 int item_position; 695} XmComboBoxCallbackStruct; 696 697typedef struct 698{ 699 int reason; 700 XEvent *event; 701 Window window; 702} XmDrawingAreaCallbackStruct; 703 704typedef struct 705{ 706 int reason; 707 XEvent *event; 708 Window window; 709 int click_count; 710} XmDrawnButtonCallbackStruct; 711 712typedef struct 713{ 714 int reason; 715 XEvent *event; 716 int click_count; 717} XmPushButtonCallbackStruct; 718 719typedef struct 720{ 721 int reason; 722 XEvent *event; 723 Widget widget; 724 char *data; 725 char *callbackstruct; 726} XmRowColumnCallbackStruct; 727 728typedef struct 729{ 730 int reason; 731 XEvent * event; 732 int value; 733 int pixel; 734} XmScrollBarCallbackStruct; 735 736typedef struct 737{ 738 int reason; 739 XEvent * event; 740 int set; 741} XmToggleButtonCallbackStruct; 742 743typedef struct 744{ 745 int reason; 746 XEvent *event; 747 XmString item; 748 int item_length; 749 int item_position; 750 XmString *selected_items; 751 int selected_item_count; 752 int *selected_item_positions; 753 char selection_type; 754 char auto_selection_type; 755} XmListCallbackStruct; 756 757typedef struct 758{ 759 int reason; 760 XEvent *event; 761 XmString value; 762 int length; 763} XmSelectionBoxCallbackStruct; 764 765typedef struct 766{ 767 int reason; 768 XEvent *event; 769 XmString value; 770 int length; 771} XmCommandCallbackStruct; 772 773typedef struct 774{ 775 int reason; 776 XEvent *event; 777 XmString value; 778 int length; 779 XmString mask; 780 int mask_length; 781 XmString dir ; 782 int dir_length ; 783 XmString pattern ; 784 int pattern_length ; 785} XmFileSelectionBoxCallbackStruct; 786 787 788typedef struct 789{ 790 int reason; 791 XEvent * event; 792 int value; 793} XmScaleCallbackStruct; 794 795typedef struct 796{ 797 int reason; 798 XEvent *event; 799 Widget menuToPost; 800 Boolean postIt; 801 Widget target; 802} XmPopupHandlerCallbackStruct; 803 804typedef struct 805{ 806 int reason; 807 XEvent *event; 808 Widget item; 809 unsigned char new_outline_state; 810} XmContainerOutlineCallbackStruct; 811 812typedef struct 813{ 814 int reason; 815 XEvent *event; 816 WidgetList selected_items; 817 int selected_item_count; 818 unsigned char auto_selection_type; 819} XmContainerSelectCallbackStruct; 820 821typedef struct 822{ 823 int reason; 824 XEvent *event; 825 int page_number; 826 Widget page_widget; 827 int prev_page_number; 828 Widget prev_page_widget; 829} XmNotebookCallbackStruct; 830 831typedef struct 832{ 833 int reason; 834 XEvent *event; 835 XmRendition rendition; 836 char *font_name; 837 XmRenderTable render_table; 838 XmStringTag tag; 839} XmDisplayCallbackStruct; 840 841#ifdef PRINTING_SUPPORTED 842typedef struct 843{ 844 int reason; /* XmCR_START_JOB, XmCR_END_JOB, XmCR_PAGE_SETUP */ 845 XEvent *event; 846 XPContext context; 847 Boolean last_page; /* in_out */ 848 XtPointer detail; 849} XmPrintShellCallbackStruct; 850#endif /* PRINTING_SUPPORTED */ 851 852/************************************************************************ 853 * PushButton defines 854 ************************************************************************/ 855 856enum{ XmMULTICLICK_DISCARD, XmMULTICLICK_KEEP 857 } ; 858/************************************************************************ 859 * DrawnButton defines 860 ************************************************************************/ 861 862enum{ XmSHADOW_IN = 7, XmSHADOW_OUT 863 } ; 864/************************************************************************ 865 * Arrow defines 866 ************************************************************************/ 867 868enum{ XmARROW_UP, XmARROW_DOWN, 869 XmARROW_LEFT, XmARROW_RIGHT 870 } ; 871/************************************************************************ 872 * Separator defines 873 * Note: XmINVALID_SEPARATOR_TYPE marks the last+1 separator type 874 ************************************************************************/ 875 876enum{ XmNO_LINE, XmSINGLE_LINE, 877 XmDOUBLE_LINE, XmSINGLE_DASHED_LINE, 878 XmDOUBLE_DASHED_LINE, XmSHADOW_ETCHED_IN, 879 XmSHADOW_ETCHED_OUT, XmSHADOW_ETCHED_IN_DASH, 880 XmSHADOW_ETCHED_OUT_DASH, XmINVALID_SEPARATOR_TYPE 881 } ; 882 883enum{ XmPIXMAP = 1, XmSTRING, 884 XmPIXMAP_AND_STRING 885 } ; 886 887/************************************************************************ 888 * Drag and Drop defines 889 ************************************************************************/ 890 891enum{ XmWINDOW, /* XmPIXMAP, */ 892 XmCURSOR = 2, XmDRAG_WINDOW = 3 893 } ; 894 895/************************************************************************ 896 * ScrollBar defines 897 ************************************************************************/ 898 899enum{ XmMAX_ON_TOP, XmMAX_ON_BOTTOM, 900 XmMAX_ON_LEFT, XmMAX_ON_RIGHT 901 } ; 902/************************************************************************ 903 * * 904 * List Widget defines * 905 * * 906 ************************************************************************/ 907 908enum{ XmSINGLE_SELECT, XmMULTIPLE_SELECT, 909 XmEXTENDED_SELECT, XmBROWSE_SELECT 910 } ; 911enum{ XmSTATIC, XmDYNAMIC 912 } ; 913enum{ XmNORMAL_MODE, XmADD_MODE 914 } ; 915/************************************************************************ 916 * * 917 * Container Widget defines * 918 * * 919 ************************************************************************/ 920 921 /* XmRAutomaticSelection */ 922enum { XmNO_AUTO_SELECT, 923 XmAUTO_SELECT 924 }; 925 926 /* XmRLineStyle */ 927enum { /* XmNO_LINE */ 928 XmSINGLE = 1 929 }; 930 931 /* XmREntryViewType */ 932enum { /* XmLARGE_ICON */ 933 /* XmSMALL_ICON */ 934 XmANY_ICON = 2 935 }; 936 937 /* XmRSpatialIncludeModel */ 938enum { XmAPPEND, 939 XmCLOSEST, 940 XmFIRST_FIT 941 }; 942 943 /* XmRLayoutType */ 944enum { XmOUTLINE, 945 XmSPATIAL, 946 XmDETAIL 947 }; 948 949 /* XmNoutlineButtonPolicy */ 950enum { XmOUTLINE_BUTTON_PRESENT, 951 XmOUTLINE_BUTTON_ABSENT 952 }; 953 954 /* XmRSpatialPlaceStyle */ 955enum { /* XmNONE */ 956 XmGRID = 1, 957 XmCELLS 958 }; 959 960 /* XmRPrimaryOwnership */ 961enum { XmOWN_NEVER, 962 XmOWN_ALWAYS, 963 XmOWN_MULTIPLE, 964 XmOWN_POSSIBLE_MULTIPLE 965 }; 966 967 /* XmRSpatialResizeModel */ 968enum { XmGROW_MINOR, 969 XmGROW_MAJOR, 970 XmGROW_BALANCED 971 }; 972 973 /* XmRSelectionTechnique */ 974enum { XmMARQUEE, 975 XmMARQUEE_EXTEND_START, 976 XmMARQUEE_EXTEND_BOTH, 977 XmTOUCH_ONLY, 978 XmTOUCH_OVER 979 }; 980 981 /* XmRSpatialSnapModel */ 982enum { /* XmNONE */ 983 XmSNAP_TO_GRID = 1, 984 XmCENTER 985 }; 986 987 /* XmROutlineState */ 988enum { XmCOLLAPSED, 989 XmEXPANDED 990 }; 991 992/************************************************************************ 993 * * 994 * IconGadget defines * 995 * * 996 ************************************************************************/ 997 998 /* XmRViewType */ 999enum { XmLARGE_ICON, 1000 XmSMALL_ICON 1001 }; 1002 1003 /* XmRVisualEmphasis */ 1004enum { XmSELECTED, 1005 XmNOT_SELECTED 1006 }; 1007 1008/************************************************************************ 1009 * * 1010 * Notebook Widget defines * 1011 * * 1012 ************************************************************************/ 1013 1014#define XmUNSPECIFIED_PAGE_NUMBER (-32768) 1015 1016 /* XmRBindingType */ 1017enum { /* XmNONE */ 1018 /* XmPIXMAP */ 1019 XmSOLID = 2, 1020 XmSPIRAL, 1021 XmPIXMAP_OVERLAP_ONLY 1022 }; 1023 1024 /* XmRNBChildType */ 1025enum { /* XmNONE */ 1026 XmPAGE = 1, 1027 XmMAJOR_TAB, 1028 XmMINOR_TAB, 1029 XmSTATUS_AREA, 1030 XmPAGE_SCROLLER 1031 }; 1032 1033/************************************************************************ 1034 * * 1035 * Spin button defines. * 1036 * * 1037 ************************************************************************/ 1038 1039/* XmNarrowOrientation */ 1040enum 1041{ 1042 XmARROWS_VERTICAL, 1043 XmARROWS_HORIZONTAL 1044}; 1045 1046/* XmNarrowLayout */ 1047enum 1048{ 1049 XmARROWS_END, 1050 XmARROWS_BEGINNING, 1051 XmARROWS_SPLIT, 1052 XmARROWS_FLAT_END, 1053 XmARROWS_FLAT_BEGINNING 1054}; 1055 1056/* XmNarrowSensitivity and XmNdefaultArrowSensitivity */ 1057/* Please note that these arrows form the proper values 1058 for a bit mask. */ 1059enum 1060{ 1061 XmARROWS_INSENSITIVE, 1062 XmARROWS_INCREMENT_SENSITIVE, 1063 XmARROWS_DECREMENT_SENSITIVE, 1064 XmARROWS_SENSITIVE, 1065 XmARROWS_DEFAULT_SENSITIVITY 1066}; 1067 1068/* XmNpositionType */ 1069enum 1070{ 1071 XmPOSITION_INDEX, 1072 XmPOSITION_VALUE 1073}; 1074 1075/* XmNspinButtonChildType */ 1076enum 1077{ 1078 /* XmPIXMAP = 1 */ 1079 /* XmSTRING */ 1080 XmNUMERIC = 3 1081}; 1082 1083/* Return values for Xm[Simple]SpinBoxValidatePosition */ 1084enum 1085{ 1086 XmVALID_VALUE, 1087 XmCURRENT_VALUE, 1088 XmMAXIMUM_VALUE, 1089 XmMINIMUM_VALUE, 1090 XmINCREMENT_VALUE 1091}; 1092 1093typedef struct 1094{ 1095 int reason; 1096 XEvent *event; 1097 Widget widget; 1098 Boolean doit; 1099 int position; 1100 XmString value; 1101 Boolean crossed_boundary; 1102} XmSpinBoxCallbackStruct; 1103 1104 1105/************************************************************************ 1106 * * 1107 * Scrolled Window defines. * 1108 * * 1109 ************************************************************************/ 1110 1111enum{ XmVARIABLE, XmCONSTANT, 1112 XmRESIZE_IF_POSSIBLE 1113 } ; 1114enum{ XmAUTOMATIC, XmAPPLICATION_DEFINED 1115 } ; 1116enum{ /* XmSTATIC */ XmAS_NEEDED = 1 1117 } ; 1118 1119#define SW_TOP 1 1120#define SW_BOTTOM 0 1121#define SW_LEFT 2 1122#define SW_RIGHT 0 1123 1124#define XmTOP_LEFT (SW_TOP | SW_LEFT) 1125#define XmBOTTOM_LEFT (SW_BOTTOM | SW_LEFT) 1126#define XmTOP_RIGHT (SW_TOP | SW_RIGHT) 1127#define XmBOTTOM_RIGHT (SW_BOTTOM | SW_RIGHT) 1128 1129/************************************************************************ 1130 * * 1131 * MainWindow Resources * 1132 * * 1133 ************************************************************************/ 1134 1135enum{ XmCOMMAND_ABOVE_WORKSPACE, XmCOMMAND_BELOW_WORKSPACE 1136 } ; 1137/************************************************************************ 1138 * * 1139 * Text Widget defines * 1140 * * 1141 ************************************************************************/ 1142 1143enum{ XmMULTI_LINE_EDIT, XmSINGLE_LINE_EDIT 1144 } ; 1145 1146typedef enum{ 1147 XmTEXT_FORWARD, 1148 XmTEXT_BACKWARD 1149 } XmTextDirection; 1150 1151typedef long XmTextPosition; 1152typedef Atom XmTextFormat; 1153 1154#define XmFMT_8_BIT ((XmTextFormat) XA_STRING) /* 8-bit text. */ 1155#define XmFMT_16_BIT ((XmTextFormat) 2) /* 16-bit text. */ 1156 1157#define FMT8BIT XmFMT_8_BIT /* For backwards compatibility only.*/ 1158#define FMT16BIT XmFMT_16_BIT /* For backwards compatibility only.*/ 1159 1160typedef enum{ 1161 XmSELECT_POSITION, XmSELECT_WHITESPACE, 1162 XmSELECT_WORD, XmSELECT_LINE, 1163 XmSELECT_ALL, XmSELECT_PARAGRAPH, 1164 XmSELECT_OUT_LINE 1165 } XmTextScanType ; 1166 1167typedef enum{ 1168 XmHIGHLIGHT_NORMAL, XmHIGHLIGHT_SELECTED, 1169 XmHIGHLIGHT_SECONDARY_SELECTED, XmSEE_DETAIL 1170 } XmHighlightMode ; 1171 1172/* XmTextBlock's are used to pass text around. */ 1173 1174typedef struct { 1175 char *ptr; /* Pointer to data. */ 1176 int length; /* Number of bytes of data. */ 1177 XmTextFormat format; /* Representations format */ 1178} XmTextBlockRec, *XmTextBlock; 1179 1180typedef struct 1181{ 1182 int reason; 1183 XEvent *event; 1184 Boolean doit; 1185 long currInsert, newInsert; 1186 long startPos, endPos; 1187 XmTextBlock text; 1188} XmTextVerifyCallbackStruct, *XmTextVerifyPtr; 1189 1190/* XmTextBlockWcs's are used in 1.2 modifyVerifyWcs callbacks for Text[Field] 1191 * widgets. */ 1192 1193typedef struct { 1194 wchar_t *wcsptr; /* Pointer to data. */ 1195 int length; /* Number of characters (not bytes) of data. */ 1196} XmTextBlockRecWcs, *XmTextBlockWcs; 1197 1198typedef struct 1199{ 1200 int reason; 1201 XEvent *event; 1202 Boolean doit; 1203 long currInsert, newInsert; 1204 long startPos, endPos; 1205 XmTextBlockWcs text; 1206} XmTextVerifyCallbackStructWcs, *XmTextVerifyPtrWcs; 1207 1208/* functions renamed after 1.0 release due to resource name overlap */ 1209#define XmTextGetTopPosition XmTextGetTopCharacter 1210#define XmTextSetTopPosition XmTextSetTopCharacter 1211 1212#define XmCOPY_FAILED 0 1213#define XmCOPY_SUCCEEDED 1 1214#define XmCOPY_TRUNCATED 2 1215 1216/************************************************************************ 1217 * * 1218 * DIALOG defines.. BulletinBoard and things common to its subclasses * 1219 * CommandBox MessageBox Selection FileSelection * 1220 * * 1221 ************************************************************************/ 1222 1223/* child type defines for Xm...GetChild() */ 1224 1225enum{ XmDIALOG_NONE, XmDIALOG_APPLY_BUTTON, 1226 XmDIALOG_CANCEL_BUTTON, XmDIALOG_DEFAULT_BUTTON, 1227 XmDIALOG_OK_BUTTON, XmDIALOG_FILTER_LABEL, 1228 XmDIALOG_FILTER_TEXT, XmDIALOG_HELP_BUTTON, 1229 XmDIALOG_LIST, XmDIALOG_LIST_LABEL, 1230 XmDIALOG_MESSAGE_LABEL, XmDIALOG_SELECTION_LABEL, 1231 XmDIALOG_SYMBOL_LABEL, XmDIALOG_TEXT, 1232 XmDIALOG_SEPARATOR, XmDIALOG_DIR_LIST, 1233 XmDIALOG_DIR_LIST_LABEL 1234 } ; 1235 1236#define XmDIALOG_HISTORY_LIST XmDIALOG_LIST 1237#define XmDIALOG_PROMPT_LABEL XmDIALOG_SELECTION_LABEL 1238#define XmDIALOG_VALUE_TEXT XmDIALOG_TEXT 1239#define XmDIALOG_COMMAND_TEXT XmDIALOG_TEXT 1240#define XmDIALOG_FILE_LIST XmDIALOG_LIST 1241#define XmDIALOG_FILE_LIST_LABEL XmDIALOG_LIST_LABEL 1242 1243/* dialog style defines */ 1244 1245enum{ XmDIALOG_MODELESS, XmDIALOG_PRIMARY_APPLICATION_MODAL, 1246 XmDIALOG_FULL_APPLICATION_MODAL,XmDIALOG_SYSTEM_MODAL 1247 } ; 1248 1249/* The following is for compatibility only. Its use is deprecated. 1250 */ 1251#define XmDIALOG_APPLICATION_MODAL XmDIALOG_PRIMARY_APPLICATION_MODAL 1252 1253/************************************************************************ 1254 * XmSelectionBox, XmFileSelectionBox and XmCommand - misc. stuff * 1255 ***********************************************************************/ 1256 1257/* Defines for Selection child placement 1258*/ 1259enum{ XmPLACE_TOP, XmPLACE_ABOVE_SELECTION, 1260 XmPLACE_BELOW_SELECTION 1261 } ; 1262 1263/* Defines for file type mask: 1264*/ 1265#define XmFILE_DIRECTORY (1 << 0) 1266#define XmFILE_REGULAR (1 << 1) 1267#define XmFILE_ANY_TYPE (XmFILE_DIRECTORY | XmFILE_REGULAR) 1268 1269/* Defines for selection dialog type: 1270*/ 1271enum{ XmDIALOG_WORK_AREA, XmDIALOG_PROMPT, 1272 XmDIALOG_SELECTION, XmDIALOG_COMMAND, 1273 XmDIALOG_FILE_SELECTION 1274 } ; 1275 1276/************************************************************************ 1277 * XmMessageBox stuff not common to other dialogs * 1278 ***********************************************************************/ 1279 1280/* defines for dialog type */ 1281 1282enum{ XmDIALOG_TEMPLATE, XmDIALOG_ERROR, 1283 XmDIALOG_INFORMATION, XmDIALOG_MESSAGE, 1284 XmDIALOG_QUESTION, XmDIALOG_WARNING, 1285 XmDIALOG_WORKING 1286 } ; 1287 1288/* Traversal types */ 1289 1290typedef enum{ 1291 XmVISIBILITY_UNOBSCURED, XmVISIBILITY_PARTIALLY_OBSCURED, 1292 XmVISIBILITY_FULLY_OBSCURED 1293 } XmVisibility ; 1294 1295 1296typedef enum{ 1297 XmTRAVERSE_CURRENT, XmTRAVERSE_NEXT, 1298 XmTRAVERSE_PREV, XmTRAVERSE_HOME, 1299 XmTRAVERSE_NEXT_TAB_GROUP, XmTRAVERSE_PREV_TAB_GROUP, 1300 XmTRAVERSE_UP, XmTRAVERSE_DOWN, 1301 XmTRAVERSE_LEFT, XmTRAVERSE_RIGHT, 1302 XmTRAVERSE_GLOBALLY_FORWARD, XmTRAVERSE_GLOBALLY_BACKWARD 1303 } XmTraversalDirection ; 1304 1305typedef struct _XmTraverseObscuredCallbackStruct 1306{ int reason ; 1307 XEvent * event ; 1308 Widget traversal_destination ; 1309 XmTraversalDirection direction ; 1310 } XmTraverseObscuredCallbackStruct ; 1311 1312typedef unsigned char XmNavigationType; 1313 1314 1315/*********************************************************************** 1316 * 1317 * SimpleMenu declarations and definitions. 1318 * 1319 ***********************************************************************/ 1320 1321typedef unsigned char XmButtonType; 1322typedef XmButtonType * XmButtonTypeTable; 1323typedef KeySym * XmKeySymTable; 1324typedef XmStringCharSet * XmStringCharSetTable; 1325 1326enum{ XmPUSHBUTTON = 1, XmTOGGLEBUTTON, 1327 XmRADIOBUTTON, XmCASCADEBUTTON, 1328 XmSEPARATOR, XmDOUBLE_SEPARATOR, 1329 XmTITLE 1330 } ; 1331#define XmCHECKBUTTON XmTOGGLEBUTTON 1332 1333 1334/*********************************************************************** 1335 * 1336 * BitmapConversionModel 1337 * 1338 ***********************************************************************/ 1339 1340enum{ XmMATCH_DEPTH, XmDYNAMIC_DEPTH } ; 1341 1342 1343/************************************************************************ 1344 * PrintShell defines 1345 ************************************************************************/ 1346 1347enum { XmPDM_NOTIFY_FAIL, XmPDM_NOTIFY_SUCCESS } ; 1348 1349/************************************************************************ 1350 * MultiList defines 1351 ************************************************************************/ 1352 1353enum { XmMULTILIST_FOUND, XmMULTILIST_NOT_FOUND }; 1354 1355/************************************************************************ 1356 * DropDown defines 1357 ************************************************************************/ 1358 1359enum { 1360 XmDROPDOWN_LABEL, 1361 XmDROPDOWN_TEXT, 1362 XmDROPDOWN_ARROW_BUTTON, 1363 XmDROPDOWN_LIST 1364}; 1365 1366 1367/* This one cannot be put at the beginning because it needs 1368 XmStringTable */ 1369#include <Xm/TxtPropCv.h> 1370 1371 1372/******** BaseClass.c ********/ 1373typedef XtPointer (*XmResourceBaseProc)( Widget, XtPointer) ; 1374 1375typedef struct _XmSecondaryResourceDataRec{ 1376 XmResourceBaseProc base_proc; 1377 XtPointer client_data; 1378 String name; 1379 String res_class; 1380 XtResourceList resources; 1381 Cardinal num_resources; 1382}XmSecondaryResourceDataRec, *XmSecondaryResourceData; 1383 1384/******** Public Function Declarations for BaseClass.c ********/ 1385 1386extern Cardinal XmGetSecondaryResourceData( 1387 WidgetClass w_class, 1388 XmSecondaryResourceData **secondaryDataRtn) ; 1389 1390/******** End Public Function Declarations ********/ 1391 1392/******** Public Function Declarations for ImageCache.c ********/ 1393 1394extern Boolean XmInstallImage( 1395 XImage *image, 1396 char *image_name) ; 1397extern Boolean XmUninstallImage( 1398 XImage *image) ; 1399extern Pixmap XmGetPixmap( 1400 Screen *screen, 1401 char *image_name, 1402 Pixel foreground, 1403 Pixel background) ; 1404extern Pixmap XmGetPixmapByDepth( 1405 Screen *screen, 1406 char *image_name, 1407 Pixel foreground, 1408 Pixel background, 1409 int depth) ; 1410extern Boolean XmDestroyPixmap( 1411 Screen *screen, 1412 Pixmap pixmap) ; 1413 1414/******** End Public Function Declarations ********/ 1415 1416/******** Public Function Declarations for Resolve.c ********/ 1417/*-- XmeResolvePartOffsets is defined in XmP.h. 1418 These also belong there but for source compatibility, we let 1419 them here --- */ 1420 1421typedef long XmOffset; 1422typedef XmOffset *XmOffsetPtr; 1423 1424 1425 1426extern void XmResolveAllPartOffsets( 1427 WidgetClass w_class, 1428 XmOffsetPtr *offset, 1429 XmOffsetPtr *constraint_offset) ; 1430extern void XmResolvePartOffsets( 1431 WidgetClass w_class, 1432 XmOffsetPtr *offset) ; 1433 1434/******** End Public Function Declarations ********/ 1435 1436 1437 1438/******** Public Function Declarations for Xm.c ********/ 1439 1440 1441extern void XmUpdateDisplay( 1442 Widget w) ; 1443extern Widget XmObjectAtPoint( 1444 Widget wid, 1445 Position x, 1446 Position y ) ; 1447 1448extern Boolean XmWidgetGetBaselines( 1449 Widget wid, 1450 Dimension **baselines, 1451 int *line_count); 1452extern Boolean XmWidgetGetDisplayRect( 1453 Widget wid, 1454 XRectangle *displayrect); 1455 1456/******** End Public Function Declarations ********/ 1457 1458 1459 1460/******** Primitive.c ********/ 1461 1462/******** Public Function Declarations for Primitive.c ********/ 1463 1464/******** End Public Function Declarations ********/ 1465 1466/******** Public Function Declarations for ResConvert.c ********/ 1467 1468extern void XmCvtStringToUnitType( 1469 XrmValuePtr args, 1470 Cardinal *num_args, 1471 XrmValue *from_val, 1472 XrmValue *to_val) ; 1473extern char * XmRegisterSegmentEncoding( 1474 char *fontlist_tag, 1475 char *ct_encoding) ; 1476extern char * XmMapSegmentEncoding( 1477 char *fontlist_tag) ; 1478extern XmString XmCvtCTToXmString( 1479 char *text) ; 1480extern Boolean XmCvtTextToXmString( 1481 Display *display, 1482 XrmValuePtr args, 1483 Cardinal *num_args, 1484 XrmValue *from_val, 1485 XrmValue *to_val, 1486 XtPointer *converter_data) ; 1487extern char * XmCvtXmStringToCT( 1488 XmString string) ; 1489extern Boolean XmCvtXmStringToText( 1490 Display *display, 1491 XrmValuePtr args, 1492 Cardinal *num_args, 1493 XrmValue *from_val, 1494 XrmValue *to_val, 1495 XtPointer *converter_data) ; 1496#ifdef UTF8_SUPPORTED 1497extern char * XmCvtXmStringToUTF8String( 1498 XmString string) ; 1499#endif 1500/******** End Public Function Declarations ********/ 1501 1502/******** Public Function Declarations for ResInd.c ********/ 1503 1504extern int XmConvertStringToUnits( 1505 Screen *screen, 1506 String spec, 1507 int orientation, 1508 int to_type, 1509 XtEnum *parse_error); 1510extern int XmConvertUnits( 1511 Widget widget, 1512 int dimension, 1513 register int from_type, 1514 register int from_val, 1515 register int to_type) ; 1516extern int XmCvtToHorizontalPixels( 1517 Screen *screen, 1518 register int from_val, 1519 register int from_type) ; 1520extern int XmCvtToVerticalPixels( 1521 Screen *screen, 1522 register int from_val, 1523 register int from_type) ; 1524extern int XmCvtFromHorizontalPixels( 1525 Screen *screen, 1526 register int from_val, 1527 register int to_type) ; 1528extern int XmCvtFromVerticalPixels( 1529 Screen *screen, 1530 register int from_val, 1531 register int to_type) ; 1532extern void XmSetFontUnits( 1533 Display *display, 1534 int h_value, 1535 int v_value) ; 1536extern void XmSetFontUnit( 1537 Display *display, 1538 int value) ; 1539 1540/******** End Public Function Declarations ********/ 1541 1542/******** Public Function Declarations for MenuUtil.c ********/ 1543 1544extern void XmSetMenuCursor( 1545 Display *display, 1546 Cursor cursorId) ; 1547extern Cursor XmGetMenuCursor( 1548 Display *display) ; 1549 1550/******** End Public Function Declarations ********/ 1551 1552/******** Public Function Declarations for Simple.c ********/ 1553 1554extern Widget XmCreateSimpleMenuBar( 1555 Widget parent, 1556 String name, 1557 ArgList args, 1558 Cardinal arg_count) ; 1559extern Widget XmCreateSimplePopupMenu( 1560 Widget parent, 1561 String name, 1562 ArgList args, 1563 Cardinal arg_count) ; 1564extern Widget XmCreateSimplePulldownMenu( 1565 Widget parent, 1566 String name, 1567 ArgList args, 1568 Cardinal arg_count) ; 1569extern Widget XmCreateSimpleOptionMenu( 1570 Widget parent, 1571 String name, 1572 ArgList args, 1573 Cardinal arg_count) ; 1574extern Widget XmCreateSimpleRadioBox( 1575 Widget parent, 1576 String name, 1577 ArgList args, 1578 Cardinal arg_count) ; 1579extern Widget XmCreateSimpleCheckBox( 1580 Widget parent, 1581 String name, 1582 ArgList args, 1583 Cardinal arg_count) ; 1584 1585/******** End Public Function Declarations ********/ 1586 1587/******** Public Function Declarations for VaSimple.c ********/ 1588extern Widget XmVaCreateSimpleMenuBar( 1589 Widget parent, 1590 String name, 1591 ...) ; 1592extern Widget XmVaCreateSimplePopupMenu( 1593 Widget parent, 1594 String name, 1595 XtCallbackProc callback, 1596 ...) ; 1597extern Widget XmVaCreateSimplePulldownMenu( 1598 Widget parent, 1599 String name, 1600 int post_from_button, 1601 XtCallbackProc callback, 1602 ...) ; 1603extern Widget XmVaCreateSimpleOptionMenu( 1604 Widget parent, 1605 String name, 1606 XmString option_label, 1607 KeySym option_mnemonic, 1608 int button_set, 1609 XtCallbackProc callback, 1610 ...) ; 1611extern Widget XmVaCreateSimpleRadioBox( 1612 Widget parent, 1613 String name, 1614 int button_set, 1615 XtCallbackProc callback, 1616 ...) ; 1617extern Widget XmVaCreateSimpleCheckBox( 1618 Widget parent, 1619 String name, 1620 XtCallbackProc callback, 1621 ...) ; 1622/******** End Public Function Declarations ********/ 1623 1624/******** Public Function Declarations for TrackLoc.c ********/ 1625 1626extern Widget XmTrackingEvent( 1627 Widget widget, 1628 Cursor cursor, 1629#if NeedWidePrototypes 1630 int confineTo, 1631#else 1632 Boolean confineTo, 1633#endif /* NeedWidePrototypes */ 1634 XEvent *pev) ; 1635extern Widget XmTrackingLocate( 1636 Widget widget, 1637 Cursor cursor, 1638#if NeedWidePrototypes 1639 int confineTo) ; 1640#else 1641 Boolean confineTo) ; 1642#endif /* NeedWidePrototypes */ 1643 1644/******** End Public Function Declarations ********/ 1645 1646/******** Visual.c ********/ 1647typedef void (*XmColorProc) (XColor *bg_color, XColor *fg_color, 1648 XColor *sel_color, XColor *ts_color, XColor *bs_color); 1649 1650/******** Public Function Declarations for Visual.c ********/ 1651 1652extern XmColorProc XmSetColorCalculation( 1653 XmColorProc proc) ; 1654extern XmColorProc XmGetColorCalculation( void ) ; 1655extern void XmGetColors( 1656 Screen *screen, 1657 Colormap color_map, 1658 Pixel background, 1659 Pixel *foreground_ret, 1660 Pixel *top_shadow_ret, 1661 Pixel *bottom_shadow_ret, 1662 Pixel *select_ret) ; 1663extern void XmChangeColor( 1664 Widget widget, 1665 Pixel background) ; 1666 1667/******** End Public Function Declarations ********/ 1668 1669/******** Public Function Declarations for XmString.c ********/ 1670 1671extern XmString XmStringCreate( 1672 char *text, 1673 XmStringCharSet charset) ; 1674extern XmString XmStringCreateSimple( 1675 char *text) ; 1676extern XmString XmStringCreateLocalized( 1677 String text) ; 1678extern XmString XmStringDirectionCreate( 1679#if NeedWidePrototypes 1680 int direction) ; 1681#else 1682 XmStringDirection direction) ; 1683#endif /* NeedWidePrototypes */ 1684extern XmString XmStringSeparatorCreate( void ) ; 1685extern XmString XmStringSegmentCreate( 1686 char *text, 1687 XmStringCharSet charset, 1688#if NeedWidePrototypes 1689 int direction, 1690 int separator) ; 1691#else 1692 XmStringDirection direction, 1693 Boolean separator) ; 1694#endif /* NeedWidePrototypes */ 1695extern XmString XmStringLtoRCreate( 1696 char *text, 1697 XmStringCharSet charset) ; 1698extern XmString XmStringCreateLtoR( 1699 char *text, 1700 XmStringCharSet charset) ; 1701extern Boolean XmStringInitContext( 1702 XmStringContext *context, 1703 XmString string) ; 1704extern void XmStringFreeContext( 1705 XmStringContext context) ; 1706extern XmStringComponentType XmStringGetNextComponent( 1707 XmStringContext context, 1708 char **text, 1709 XmStringCharSet *charset, 1710 XmStringDirection *direction, 1711 XmStringComponentType *unknown_tag, 1712 unsigned short *unknown_length, 1713 unsigned char **unknown_value) ; 1714extern XmStringComponentType XmStringPeekNextComponent( 1715 XmStringContext context) ; 1716extern Boolean XmStringGetNextSegment( 1717 XmStringContext context, 1718 char **text, 1719 XmStringCharSet *charset, 1720 XmStringDirection *direction, 1721 Boolean *separator) ; 1722extern Boolean XmStringGetLtoR( 1723 XmString string, 1724 XmStringCharSet charset, 1725 char **text) ; 1726extern XmFontListEntry XmFontListEntryCreate( 1727 char *tag, 1728 XmFontType type, 1729 XtPointer font) ; 1730extern XmFontListEntry XmFontListEntryCreate_r( 1731 char *tag, 1732 XmFontType type, 1733 XtPointer font, 1734 Widget wid) ; 1735extern void XmFontListEntryFree( 1736 XmFontListEntry *entry) ; 1737extern XtPointer XmFontListEntryGetFont( 1738 XmFontListEntry entry, 1739 XmFontType *typeReturn) ; 1740extern char * XmFontListEntryGetTag( 1741 XmFontListEntry entry) ; 1742extern XmFontList XmFontListAppendEntry( 1743 XmFontList old, 1744 XmFontListEntry entry) ; 1745extern XmFontListEntry XmFontListNextEntry( 1746 XmFontContext context) ; 1747extern XmFontList XmFontListRemoveEntry( 1748 XmFontList old, 1749 XmFontListEntry entry) ; 1750extern XmFontListEntry XmFontListEntryLoad( 1751 Display *display, 1752 char *fontName, 1753 XmFontType type, 1754 char *tag) ; 1755extern XmFontList XmFontListCreate( 1756 XFontStruct *font, 1757 XmStringCharSet charset) ; 1758extern XmFontList XmFontListCreate_r( 1759 XFontStruct *font, 1760 XmStringCharSet charset, 1761 Widget wid) ; 1762extern XmFontList XmStringCreateFontList( 1763 XFontStruct *font, 1764 XmStringCharSet charset) ; 1765extern XmFontList XmStringCreateFontList_r( 1766 XFontStruct *font, 1767 XmStringCharSet charset, 1768 Widget wid) ; 1769extern void XmFontListFree( 1770 XmFontList fontlist) ; 1771extern XmFontList XmFontListAdd( 1772 XmFontList old, 1773 XFontStruct *font, 1774 XmStringCharSet charset) ; 1775extern XmFontList XmFontListCopy( 1776 XmFontList fontlist) ; 1777extern Boolean XmFontListInitFontContext( 1778 XmFontContext *context, 1779 XmFontList fontlist) ; 1780extern Boolean XmFontListGetNextFont( 1781 XmFontContext context, 1782 XmStringCharSet *charset, 1783 XFontStruct **font) ; 1784extern void XmFontListFreeFontContext( 1785 XmFontContext context) ; 1786extern XmString XmStringConcat( 1787 XmString a, 1788 XmString b) ; 1789extern XmString XmStringConcatAndFree( 1790 XmString a, 1791 XmString b) ; 1792extern XmString XmStringNConcat( 1793 XmString first, 1794 XmString second, 1795 int n) ; 1796extern XmString XmStringCopy( 1797 XmString string) ; 1798extern XmString XmStringNCopy( 1799 XmString str, 1800 int n) ; 1801extern Boolean XmStringByteCompare( 1802 XmString a1, 1803 XmString b1) ; 1804extern Boolean XmStringCompare( 1805 XmString a, 1806 XmString b) ; 1807extern int XmStringLength( 1808 XmString string) ; 1809extern Boolean XmStringEmpty( 1810 XmString string) ; 1811extern Boolean XmStringIsVoid(XmString string); 1812extern Boolean XmStringHasSubstring( 1813 XmString string, 1814 XmString substring) ; 1815extern void XmStringFree( 1816 XmString string) ; 1817extern Dimension XmStringBaseline( 1818 XmFontList fontlist, 1819 XmString string) ; 1820extern Dimension XmStringWidth( 1821 XmFontList fontlist, 1822 XmString string) ; 1823extern Dimension XmStringHeight( 1824 XmFontList fontlist, 1825 XmString string) ; 1826extern void XmStringExtent( 1827 XmFontList fontlist, 1828 XmString string, 1829 Dimension *width, 1830 Dimension *height) ; 1831extern int XmStringLineCount( 1832 XmString string) ; 1833extern void XmStringDraw( 1834 Display *d, 1835 Window w, 1836 XmFontList fontlist, 1837 XmString string, 1838 GC gc, 1839#if NeedWidePrototypes 1840 int x, 1841 int y, 1842 int width, 1843 unsigned int align, 1844 unsigned int lay_dir, 1845#else 1846 Position x, 1847 Position y, 1848 Dimension width, 1849 unsigned char align, 1850 unsigned char lay_dir, 1851#endif /* NeedWidePrototypes */ 1852 XRectangle *clip) ; 1853extern void XmStringDrawImage( 1854 Display *d, 1855 Window w, 1856 XmFontList fontlist, 1857 XmString string, 1858 GC gc, 1859#if NeedWidePrototypes 1860 int x, 1861 int y, 1862 int width, 1863 unsigned int align, 1864 unsigned int lay_dir, 1865#else 1866 Position x, 1867 Position y, 1868 Dimension width, 1869 unsigned char align, 1870 unsigned char lay_dir, 1871#endif /* NeedWidePrototypes */ 1872 XRectangle *clip) ; 1873extern void XmStringDrawUnderline( 1874 Display *d, 1875 Window w, 1876 XmFontList fntlst, 1877 XmString str, 1878 GC gc, 1879#if NeedWidePrototypes 1880 int x, 1881 int y, 1882 int width, 1883 unsigned int align, 1884 unsigned int lay_dir, 1885#else 1886 Position x, 1887 Position y, 1888 Dimension width, 1889 unsigned char align, 1890 unsigned char lay_dir, 1891#endif /* NeedWidePrototypes */ 1892 XRectangle *clip, 1893 XmString under) ; 1894extern unsigned int XmCvtXmStringToByteStream( 1895 XmString string, 1896 unsigned char **prop_return); 1897extern XmString XmCvtByteStreamToXmString( 1898 unsigned char *property); 1899extern unsigned int XmStringByteStreamLength(unsigned char *string); 1900extern XmStringComponentType XmStringPeekNextTriple(XmStringContext context); 1901extern XmStringComponentType XmStringGetNextTriple(XmStringContext context, 1902 unsigned int *length, 1903 XtPointer *value); 1904extern XmString XmStringComponentCreate(XmStringComponentType tag, 1905 unsigned int length, 1906 XtPointer value); 1907extern XtPointer XmStringUnparse(XmString string, 1908 XmStringTag tag, 1909 XmTextType tag_type, 1910 XmTextType output_type, 1911 XmParseTable parse_table, 1912 Cardinal parse_count, 1913 XmParseModel parse_model); 1914extern XmString XmStringParseText(XtPointer text, 1915 XtPointer *text_end, 1916 XmStringTag tag, 1917 XmTextType type, 1918 XmParseTable parse_table, 1919 Cardinal parse_count, 1920 XtPointer call_data); 1921extern Cardinal XmStringToXmStringTable(XmString string, 1922 XmString break_comp, 1923 XmStringTable *table); 1924extern XmString XmStringTableToXmString(XmStringTable table, 1925 Cardinal count, 1926 XmString break_component); 1927extern XtPointer *XmStringTableUnparse(XmStringTable table, 1928 Cardinal count, 1929 XmStringTag tag, 1930 XmTextType tag_type, 1931 XmTextType output_type, 1932 XmParseTable parse, 1933 Cardinal parse_count, 1934 XmParseModel parse_model); 1935extern XmStringTable XmStringTableParseStringArray(XtPointer *strings, 1936 Cardinal count, 1937 XmStringTag tag, 1938 XmTextType type, 1939 XmParseTable parse, 1940 Cardinal parse_count, 1941 XtPointer call_data); 1942 1943extern XmStringDirection XmDirectionToStringDirection(XmDirection dir); 1944extern XmDirection XmStringDirectionToDirection(XmStringDirection dir); 1945 1946extern XmString XmStringGenerate(XtPointer text, 1947 XmStringTag tag, 1948 XmTextType type, 1949 XmStringTag rendition); 1950extern XmString XmStringPutRendition(XmString string, 1951 XmStringTag rendition); 1952 1953extern XmParseMapping XmParseMappingCreate(ArgList arg_list, 1954 Cardinal arg_count); 1955extern void XmParseMappingSetValues(XmParseMapping parse_mapping, 1956 ArgList arg_list, 1957 Cardinal arg_count); 1958extern void XmParseMappingGetValues(XmParseMapping parse_mapping, 1959 ArgList arg_list, 1960 Cardinal arg_count); 1961extern void XmParseMappingFree(XmParseMapping parse_mapping); 1962extern void XmParseTableFree(XmParseTable parse_table, 1963 Cardinal parse_count); 1964 1965/******** End Public Function Declarations ********/ 1966 1967/******** Public Function Declarations for XmTabList.c ********/ 1968 1969extern XmTabList 1970 XmStringTableProposeTablist(XmStringTable strings, 1971 Cardinal num_strings, 1972 Widget widget, 1973 float pad_value, 1974 XmOffsetModel offset_model); 1975extern void XmTabSetValue(XmTab xmtab, float value); 1976extern float 1977 XmTabGetValues(XmTab xmtab, 1978 unsigned char *units, 1979 XmOffsetModel *offset, 1980 unsigned char *alignment, 1981 char **decimal); 1982extern void XmTabFree(XmTab xmtab); 1983extern XmTab XmTabCreate(float value, 1984 unsigned char units, 1985 XmOffsetModel offset_model, 1986 unsigned char alignment, 1987 char *decimal); 1988extern XmTabList 1989 XmTabListRemoveTabs(XmTabList oldlist, 1990 Cardinal *position_list, 1991 Cardinal position_count); 1992extern XmTabList 1993 XmTabListReplacePositions(XmTabList oldlist, 1994 Cardinal *position_list, 1995 XmTab *tabs, 1996 Cardinal tab_count); 1997extern XmTab XmTabListGetTab(XmTabList tablist, Cardinal position); 1998extern Cardinal XmTabListTabCount(XmTabList tablist); 1999extern XmTabList XmTabListCopy(XmTabList tablist, int offset, Cardinal count); 2000extern void XmTabListFree(XmTabList tablist); 2001extern XmTabList XmTabListInsertTabs(XmTabList oldlist, 2002 XmTab *tabs, 2003 Cardinal tab_count, 2004 int position); 2005/******** End Public Function Declarations ********/ 2006 2007/******** Public Function Declarations for XmRenderTable.c ********/ 2008 2009extern XmRenderTable XmRenderTableCvtFromProp(Widget, char *prop, unsigned int len); 2010extern unsigned int XmRenderTableCvtToProp(Widget, XmRenderTable table, char **prop_return); 2011extern void XmRenditionUpdate(XmRendition rendition, ArgList arglist, Cardinal argcount); 2012extern void XmRenditionRetrieve(XmRendition rendition, 2013 ArgList arglist, 2014 Cardinal argcount); 2015extern void XmRenditionFree(XmRendition rendition); 2016extern XmRendition XmRenditionCreate(Widget widget, 2017 XmStringTag tag, 2018 ArgList arglist, 2019 Cardinal argcount); 2020extern XmRendition 2021 *XmRenderTableGetRenditions(XmRenderTable table, 2022 XmStringTag *tags, 2023 Cardinal tag_count); 2024extern XmRendition XmRenderTableGetRendition(XmRenderTable table, 2025 XmStringTag tag); 2026extern int XmRenderTableGetTags(XmRenderTable table, 2027 XmStringTag **tag_list); 2028extern void XmRenderTableFree(XmRenderTable table); 2029extern XmRenderTable XmRenderTableCopy(XmRenderTable table, 2030 XmStringTag *tags, 2031 int tag_count); 2032extern XmRenderTable 2033 XmRenderTableRemoveRenditions(XmRenderTable oldtable, 2034 XmStringTag *tags, 2035 int tag_count); 2036extern XmRenderTable 2037 XmRenderTableAddRenditions(XmRenderTable oldtable, 2038 XmRendition *renditions, 2039 Cardinal rendition_count, 2040 XmMergeMode merge_mode); 2041 2042/******** End Public Function Declarations ********/ 2043 2044/******** Public Function Declarations for Dest.c ********/ 2045 2046extern Widget XmGetDestination( 2047 Display *display) ; 2048 2049/******** End Public Function Declarations ********/ 2050 2051/******** Public Function Declarations for Traversal.c ********/ 2052 2053extern Boolean XmIsTraversable( 2054 Widget wid) ; 2055extern XmVisibility XmGetVisibility( 2056 Widget wid) ; 2057extern Widget XmGetTabGroup( 2058 Widget wid) ; 2059extern Widget XmGetFocusWidget( 2060 Widget wid) ; 2061extern Boolean XmProcessTraversal( 2062 Widget w, 2063 XmTraversalDirection dir) ; 2064extern void XmAddTabGroup( 2065 Widget tabGroup) ; 2066extern void XmRemoveTabGroup( 2067 Widget w) ; 2068 2069/******** End Public Function Declarations ********/ 2070 2071/******** ********/ 2072 2073#ifdef __cplusplus 2074} /* Close scope of 'extern "C"' declaration which encloses file. */ 2075#endif 2076 2077/* 2078 * The following includes are for source compatibility. They might be 2079 * removed at some future time. 2080 */ 2081#include <Xm/VendorS.h> 2082#include <Xm/XmIm.h> 2083 2084#define XmINDICATOR_3D_BOX 0x01 2085#define XmINDICATOR_FLAT_BOX 0x02 2086#define XmINDICATOR_CHECK_GLYPH 0x10 2087#define XmINDICATOR_CROSS_GLYPH 0x20 2088 2089enum { 2090 XmINDICATOR_NONE = 0, 2091 XmINDICATOR_FILL = 1, /* Treated as _BOX or _CHECK_BOX */ 2092 XmINDICATOR_BOX = 255, /* Treated as XmINDICATOR_3D_BOX */ 2093 XmINDICATOR_CHECK = XmINDICATOR_CHECK_GLYPH, 2094 XmINDICATOR_CHECK_BOX = XmINDICATOR_CHECK_GLYPH + XmINDICATOR_3D_BOX, 2095 XmINDICATOR_CROSS = XmINDICATOR_CROSS_GLYPH, 2096 XmINDICATOR_CROSS_BOX = XmINDICATOR_CROSS_GLYPH + XmINDICATOR_3D_BOX 2097}; 2098 2099enum { XmUNSET, XmSET, XmINDETERMINATE }; 2100enum { XmTOGGLE_BOOLEAN, XmTOGGLE_INDETERMINATE }; 2101typedef unsigned char XmToggleButtonState; 2102 2103/* Shared text enum. */ 2104typedef enum { EditDone, EditError, EditReject } XmTextStatus; 2105 2106/* XmDisplay.XmNdefaultButtonEmphasis enum */ 2107enum { XmEXTERNAL_HIGHLIGHT, XmINTERNAL_HIGHLIGHT }; 2108 2109/* new for XmString */ 2110#define _MOTIF_DEFAULT_LOCALE "_MOTIF_DEFAULT_LOCALE" 2111 2112enum { XmPATH_MODE_FULL, XmPATH_MODE_RELATIVE }; 2113enum { XmFILTER_NONE, XmFILTER_HIDDEN_FILES} ; 2114 2115#endif /* _Xm_h */ 2116 /* DON'T ADD STUFF AFTER THIS #endif */ 2117