1 /* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- 2 * 3 * ***** BEGIN LICENSE BLOCK ***** 4 * Version: MPL 1.1/GPL 2.0/LGPL 2.1 5 * 6 * The contents of this file are subject to the Mozilla Public License Version 7 * 1.1 (the "License"); you may not use this file except in compliance with 8 * the License. You may obtain a copy of the License at 9 * http://www.mozilla.org/MPL/ 10 * 11 * Software distributed under the License is distributed on an "AS IS" basis, 12 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 13 * for the specific language governing rights and limitations under the 14 * License. 15 * 16 * The Original Code is the Microline Widget Library, originally made available under the NPL by Neuron Data <http://www.neurondata.com>. 17 * 18 * The Initial Developer of the Original Code is 19 * Netscape Communications Corporation. 20 * Portions created by the Initial Developer are Copyright (C) 1998 21 * the Initial Developer. All Rights Reserved. 22 * 23 * Contributor(s): 24 * 25 * Alternatively, the contents of this file may be used under the terms of 26 * either the GNU General Public License Version 2 or later (the "GPL"), or 27 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), 28 * in which case the provisions of the GPL or the LGPL are applicable instead 29 * of those above. If you wish to allow use of your version of this file only 30 * under the terms of either the GPL or the LGPL, and not to allow others to 31 * use your version of this file under the terms of the MPL, indicate your 32 * decision by deleting the provisions above and replace them with the notice 33 * and other provisions required by the GPL or the LGPL. If you do not delete 34 * the provisions above, a recipient may use your version of this file under 35 * the terms of any one of the MPL, the GPL or the LGPL. 36 * 37 * In addition, as a special exception to the GNU GPL, the copyright holders 38 * give permission to link the code of this program with the Motif and Open 39 * Motif libraries (or with modified versions of these that use the same 40 * license), and distribute linked combinations including the two. You 41 * must obey the GNU General Public License in all respects for all of 42 * the code used other than linking with Motif/Open Motif. If you modify 43 * this file, you may extend this exception to your version of the file, 44 * but you are not obligated to do so. If you do not wish to do so, 45 * delete this exception statement from your version. 46 * 47 * ***** END LICENSE BLOCK ***** */ 48 49 50 #ifndef XmLH 51 #define XmLH 52 53 #include <Xm/Xm.h> 54 55 #if defined(__cplusplus) || defined(c_plusplus) 56 #define XmL_CPP 1 57 #endif 58 59 #if defined(_STDC_) || defined(__STDC__) || defined(XmL_CPP) 60 #ifndef _NO_PROTO 61 #define XmL_ANSIC 1 62 #endif 63 #endif 64 65 #define XmLVERSION_301 66 67 #ifdef XmL_CPP 68 extern "C" { 69 #endif 70 71 /* shared resources */ 72 73 #define XmNautoSelect "autoSelect" 74 #define XmCAutoSelect "AutoSelect" 75 #define XmNblankBackground "blankBackground" 76 #define XmCBlankBackground "BlankBackground" 77 #define XmNdebugLevel "debugLevel" 78 #define XmCDebugLevel "DebugLevel" 79 80 /* Folder resources */ 81 82 #define XmNacceptResize "acceptResize" 83 #define XmCAcceptResize "AcceptResize" 84 #define XmNactiveTab "activeTab" 85 #define XmCActiveTab "ActiveTab" 86 #define XmNblankBackgroundPixmap "blankBackgroundPixmap" 87 #define XmCBlankBackgroundPixmap "BlankBackgroundPixmap" 88 #define XmNcornerDimension "cornerDimension" 89 #define XmCCornerDimension "CornerDimension" 90 #define XmNcornerStyle "cornerStyle" 91 #define XmCCornerStyle "CornerStyle" 92 #define XmRCornerStyle "CornerStyle" 93 #define XmNinactiveBackground "inactiveBackground" 94 #define XmCInactiveBackground "InactiveBackground" 95 #define XmNinactiveForeground "inactiveForeground" 96 #define XmCInactiveForeground "InactiveForeground" 97 #define XmNpixmapMargin "pixmapMargin" 98 #define XmCPixmapMargin "PixmapMargin" 99 #define XmCFolderResizePolicy "FolderResizePolicy" 100 #define XmRFolderResizePolicy "FolderResizePolicy" 101 #define XmNrotateWhenLeftRight "rotateWhenLeftRight" 102 #define XmCRotateWhenLeftRight "RotateWhenLeftRight" 103 #define XmNtabBarHeight "tabBarHeight" 104 #define XmCTabBarHeight "TabBarHeight" 105 #define XmNminTabWidth "minTabWidth" 106 #define XmCminTabWidth "MinTabWidth" 107 #define XmNmaxTabWidth "maxTabWidth" 108 #define XmCmaxTabWidth "MaxTabWidth" 109 #define XmNtabCount "tabCount" 110 #define XmCTabCount "TabCount" 111 #define XmNtabPlacement "tabPlacement" 112 #define XmCTabPlacement "TabPlacement" 113 #define XmRTabPlacement "TabPlacement" 114 #define XmNtabsPerRow "tabsPerRow" 115 #define XmCTabsPerRow "TabsPerRow" 116 #define XmNtabTranslations "tabTranslations" 117 #define XmNtabWidgetList "tabWidgetList" 118 #define XmNtabWidgetClass "tabWidgetClass" 119 #define XmCTabWidgetClass "TabWidgetClass" 120 121 /* Folder Constraint resources */ 122 123 #define XmNtabFreePixmaps "tabFreePixmaps" 124 #define XmCTabFreePixmaps "TabFreePixmaps" 125 #define XmNtabInactivePixmap "tabInactivePixmap" 126 #define XmCTabInactivePixmap "TabInactivePixmap" 127 #define XmNtabManagedName "tabManagedName" 128 #define XmCTabManagedName "TabManagedName" 129 #define XmNtabManagedWidget "tabManagedWidget" 130 #define XmCTabManagedWidget "TabManagedWidget" 131 #define XmNtabPixmap "tabPixmap" 132 #define XmCTabPixmap "TabPixmap" 133 134 /* Folder callbacks */ 135 136 typedef struct 137 { 138 int reason; 139 XEvent *event; 140 int pos; 141 int allowActivate; 142 int layoutNeeded; 143 } XmLFolderCallbackStruct; 144 145 /* Folder defines */ 146 147 #define XmCORNER_NONE 0 148 #define XmCORNER_LINE 1 149 #define XmCORNER_ARC 2 150 151 #define XmFOLDER_TOP 0 152 #define XmFOLDER_LEFT 1 153 #define XmFOLDER_BOTTOM 2 154 #define XmFOLDER_RIGHT 3 155 156 #define XmRESIZE_STATIC 10 157 #define XmRESIZE_DYNAMIC 11 158 #define XmRESIZE_PACK 12 159 160 /* Grid resources */ 161 162 #define XmNaddCallback "addCallback" 163 #define XmNallowColumnHide "allowColumnHide" 164 #define XmCAllowColumnHide "AllowColumnHide" 165 #define XmNallowColumnResize "allowColumnResize" 166 #define XmCAllowColumnResize "AllowColumnResize" 167 #define XmNallowDragSelected "allowDragSelected" 168 #define XmCAllowDragSelected "AllowDragSelected" 169 #define XmNallowDrop "allowDrop" 170 #define XmCAllowDrop "AllowDrop" 171 #define XmNallowRowHide "allowRowHide" 172 #define XmCAllowRowHide "AllowRowHide" 173 #define XmNallowRowResize "allowRowResize" 174 #define XmCAllowRowResize "AllowRowResize" 175 #define XmNbottomFixedCount "bottomFixedCount" 176 #define XmCBottomFixedCount "BottomFixedCount" 177 #define XmNbottomFixedMargin "bottomFixedMargin" 178 #define XmCBottomFixedMargin "BottomFixedMargin" 179 #define XmNcellDefaults "cellDefaults" 180 #define XmCCellDefaults "CellDefaults" 181 #define XmNcellDrawCallback "cellDrawCallback" 182 #define XmNcellDropCallback "cellDropCallback" 183 #define XmNcellFocusCallback "cellFocusCallback" 184 #define XmNcellPasteCallback "cellPasteCallback" 185 #define XmNdeleteCallback "deleteCallback" 186 #define XmNdeselectCallback "deselectCallback" 187 #define XmNeditCallback "editCallback" 188 #define XmNeditTranslations "editTranslations" 189 #define XmNfooterColumns "footerColumns" 190 #define XmCFooterColumns "FooterColumns" 191 #define XmNfooterRows "footerRows" 192 #define XmCFooterRows "FooterRows" 193 #define XmNglobalPixmapHeight "globalPixmapHeight" 194 #define XmCGlobalPixmapHeight "GlobalPixmapHeight" 195 #define XmNglobalPixmapWidth "globalPixmapWidth" 196 #define XmCGlobalPixmapWidth "GlobalPixmapWidth" 197 #define XmCGridSelectionPolicy "GridSelectionPolicy" 198 #define XmRGridSelectionPolicy "GridSelectionPolicy" 199 #define XmRGridSizePolicy "GridSizePolicy" 200 #define XmNheadingColumns "headingColumns" 201 #define XmCHeadingColumns "HeadingColumns" 202 #define XmNheadingRows "headingRows" 203 #define XmCHeadingRows "HeadingRows" 204 #define XmNhiddenColumns "hiddenColumns" 205 #define XmCHiddenColumns "HiddenColumns" 206 #define XmNhiddenRows "hiddenRows" 207 #define XmCHiddenRows "HiddenRows" 208 #define XmNhighlightRowMode "highlightRowMode" 209 #define XmCHighlightRowMode "HighlightRowMode" 210 #define XmNhorizontalSizePolicy "horizontalSizePolicy" 211 #define XmCHorizontalSizePolicy "HorizontalSizePolicy" 212 #define XmNhsbDisplayPolicy "hsbDisplayPolicy" 213 #define XmCHsbDisplayPolicy "HsbDisplayPolicy" 214 #define XmNimmediateDraw "immediateDraw" 215 #define XmCImmediateDraw "ImmediateDraw" 216 #define XmNlayoutFrozen "layoutFrozen" 217 #define XmCLayoutFrozen "LayoutFrozen" 218 #define XmNleftFixedCount "leftFixedCount" 219 #define XmCLeftFixedCount "LeftFixedCount" 220 #define XmNleftFixedMargin "leftFixedMargin" 221 #define XmCLeftFixedMargin "LeftFixedMargin" 222 #define XmNrightFixedCount "rightFixedCount" 223 #define XmCRightFixedCount "RightFixedCount" 224 #define XmNrightFixedMargin "rightFixedMargin" 225 #define XmCRightFixedMargin "RightFixedMargin" 226 #define XmNscrollBarMargin "scrollBarMargin" 227 #define XmCScrollBarMargin "ScrollBarMargin" 228 #define XmNscrollCallback "scrollCallback" 229 #define XmNscrollColumn "scrollColumn" 230 #define XmCScrollColumn "ScrollColumn" 231 #define XmNscrollRow "scrollRow" 232 #define XmCScrollRow "ScrollRow" 233 #define XmNsimpleHeadings "simpleHeadings" 234 #define XmCSimpleHeadings "SimpleHeadings" 235 #define XmNsimpleWidths "simpleWidths" 236 #define XmCSimpleWidths "SimpleWidths" 237 #ifndef XmNselectCallback /* OM 2.2.3 defines this too. */ 238 #define XmNselectCallback "selectCallback" 239 #endif 240 #define XmNselectForeground "selectForeground" 241 #define XmCSelectForeground "SelectForeground" 242 #define XmNselectBackground "selectBackground" 243 #define XmCSelectBackground "SelectBackground" 244 #define XmNshadowRegions "shadowRegions" 245 #define XmCShadowRegions "ShadowRegions" 246 #define XmNtextWidget "textWidget" 247 #define XmCTextWidget "TextWidget" 248 #define XmNtoggleTopColor "toggleTopColor" 249 #define XmCToggleTopColor "ToggleTopColor" 250 #define XmNtoggleBottomColor "toggleBottomColor" 251 #define XmCToggleBottomColor "ToggleBottomColor" 252 #define XmNtoggleSize "toggleSize" 253 #define XmCToggleSize "ToggleSize" 254 #define XmNtopFixedCount "topFixedCount" 255 #define XmCTopFixedCount "TopFixedCount" 256 #define XmNtopFixedMargin "topFixedMargin" 257 #define XmCTopFixedMargin "TopFixedMargin" 258 #define XmNtraverseTranslations "traverseTranslations" 259 #define XmNuseAverageFontWidth "useAverageFontWidth" 260 #define XmCUseAverageFontWidth "UseAverageFontWidth" 261 #define XmNverticalSizePolicy "verticalSizePolicy" 262 #define XmCVerticalSizePolicy "VerticalSizePolicy" 263 #define XmNvisibleColumns "visibleColumns" 264 #define XmCVisibleColumns "VisibleColumns" 265 #define XmNvisibleRows "visibleRows" 266 #define XmCVisibleRows "VisibleRows" 267 #define XmNvsbDisplayPolicy "vsbDisplayPolicy" 268 #define XmCVsbDisplayPolicy "VsbDisplayPolicy" 269 #define XmNiconSpacing "iconSpacing" 270 #define XmCIconSpacing "IconSpacing" 271 272 273 /* XFE Additions */ 274 #define XmNhideUnhideButtons "hideUnhideButtons" 275 #define XmCHideUnhideButtons "HideUnhideButtons" 276 #define XmNsingleClickActivation "singleClickActivation" 277 #define XmCSingleClickActivation "SingleClickActivation" 278 #define XmNuseTextWidget "useTextWidget" 279 #define XmCUseTextWidget "UseTextWidget" 280 #define XmNcolumnSortType "columnSortType" 281 #define XmCColumnSortType "ColumnSortType" 282 #define XmRColumnSortType "ColumnSortType" 283 #if 0 284 #define XmNhideButtonTranslations "hideButtonTranslations" 285 #define XmNunhideButtonTranslations "unhideButtonTranslations" 286 #endif /*0*/ 287 #define XmNminColumnWidth "minColumnWidth" 288 #define XmCMinColumnWidth "MinColumnWidth" 289 290 #define XmNenterCellCallback "enterCellCallback" 291 #define XmNleaveCellCallback "leaveCellCallback" 292 293 #define XmNenterGridCallback "enterGridCallback" 294 #define XmNleaveGridCallback "leaveGridCallback" 295 296 /* Grid Row/Column/Cell resources */ 297 298 #define XmNrow "row" 299 #define XmCGridRow "row" 300 #define XmNrowHeight "rowHeight" 301 #define XmCRowHeight "RowHeight" 302 #define XmNrowPtr "rowPtr" 303 #define XmNrowRangeEnd "rowRangeEnd" 304 #define XmCRowRangeEnd "RowRangeEnd" 305 #define XmNrowRangeStart "rowRangeStart" 306 #define XmCRowRangeStart "RowRangeStart" 307 #define XmNrowSizePolicy "rowSizePolicy" 308 #define XmCRowSizePolicy "RowSizePolicy" 309 #define XmNrowStep "rowStep" 310 #define XmCRowStep "RowStep" 311 #define XmNrowType "rowType" 312 #define XmCRowType "RowType" 313 #define XmRRowType "RowType" 314 #define XmNrowUserData "rowUserData" 315 316 #define XmNcolumn "column" 317 #define XmCGridColumn "Column" 318 #define XmNcolumnPtr "columnPtr" 319 #define XmNcolumnRangeEnd "columnRangeEnd" 320 #define XmCColumnRangeEnd "ColumnRangeEnd" 321 #define XmNcolumnRangeStart "columnRangeStart" 322 #define XmCColumnRangeStart "ColumnRangeStart" 323 #define XmNcolumnResizable "columnResizable" 324 #define XmCColumnResizable "ColumnResizable" 325 #define XmNcolumnSizePolicy "columnSizePolicy" 326 #define XmCColumnSizePolicy "ColumnSizePolicy" 327 #define XmNcolumnHidden "columnHidden" 328 #define XmCColumnHidden "ColumnHidden" 329 #define XmNcolumnStep "columnStep" 330 #define XmCColumnStep "ColumnStep" 331 #define XmNcolumnType "columnType" 332 #define XmCColumnType "ColumnType" 333 #define XmRColumnType "ColumnType" 334 #define XmNcolumnWidth "columnWidth" 335 #define XmCColumnWidth "ColumnWidth" 336 #define XmNcolumnUserData "columnUserData" 337 338 #define XmNcellAlignment "cellAlignment" 339 #define XmCCellAlignment "CellAlignment" 340 #define XmRCellAlignment "CellAlignment" 341 #define XmNcellBackground "cellBackground" 342 #define XmCCellBackground "CellBackground" 343 #define XmRCellBorderType "CellBorderType" 344 #define XmNcellBottomBorderType "cellBottomBorderType" 345 #define XmCCellBottomBorderType "CellBottomBorderType" 346 #define XmNcellBottomBorderColor "cellBottomBorderColor" 347 #define XmCCellBottomBorderColor "CellBottomBorderColor" 348 #define XmNcellColumnSpan "cellColumnSpan" 349 #define XmCCellColumnSpan "CellColumnSpan" 350 #define XmNcellEditable "cellEditable" 351 #define XmCCellEditable "CellEditable" 352 #define XmNcellForeground "cellForeground" 353 #define XmCCellForeground "CellForeground" 354 #define XmNcellFontList "cellFontList" 355 #define XmCCellFontList "CellFontList" 356 #define XmNcellLeftBorderType "cellLeftBorderType" 357 #define XmCCellLeftBorderType "CellLeftBorderType" 358 #define XmNcellLeftBorderColor "cellLeftBorderColor" 359 #define XmCCellLeftBorderColor "CellLeftBorderColor" 360 #define XmNcellMarginBottom "cellMarginBottom" 361 #define XmCCellMarginBottom "CellMarginBottom" 362 #define XmNcellMarginLeft "cellMarginLeft" 363 #define XmCCellMarginLeft "CellMarginLeft" 364 #define XmNcellMarginRight "cellMarginRight" 365 #define XmCCellMarginRight "CellMarginRight" 366 #define XmNcellMarginTop "cellMarginTop" 367 #define XmCCellMarginTop "CellMarginTop" 368 #define XmNcellPixmap "cellPixmap" 369 #define XmCCellPixmap "CellPixmap" 370 #define XmNcellPixmapMask "cellPixmapMask" 371 #define XmCCellPixmapMask "CellPixmapMask" 372 #define XmNcellRightBorderType "cellRightBorderType" 373 #define XmCCellRightBorderType "CellRightBorderType" 374 #define XmNcellRightBorderColor "cellRightBorderColor" 375 #define XmCCellRightBorderColor "CellRightBorderColor" 376 #define XmNcellRowSpan "cellRowSpan" 377 #define XmCCellRowSpan "CellRowSpan" 378 #define XmNcellString "cellString" 379 #define XmNcellToggleSet "cellToggleSet" 380 #define XmCCellToggleSet "CellToggleSet" 381 #define XmNcellTopBorderType "cellTopBorderType" 382 #define XmCCellTopBorderType "CellTopBorderType" 383 #define XmNcellTopBorderColor "cellTopBorderColor" 384 #define XmCCellTopBorderColor "CellTopBorderColor" 385 #define XmNcellType "cellType" 386 #define XmCCellType "CellType" 387 #define XmRCellType "CellType" 388 #define XmNcellUserData "cellUserData" 389 390 /* Grid callbacks */ 391 392 typedef struct _XmLGridDrawStruct 393 { 394 GC gc; 395 XRectangle *cellRect; 396 Dimension topMargin; 397 Dimension bottomMargin; 398 Dimension leftMargin; 399 Dimension rightMargin; 400 Pixel foreground; 401 Pixel background; 402 Pixel selectForeground; 403 Pixel selectBackground; 404 XmFontList fontList; 405 unsigned char alignment; 406 Boolean drawSelected; 407 int drawFocusType; 408 XmStringDirection stringDirection; 409 } XmLGridDrawStruct; 410 411 typedef struct _XmLGridCallbackStruct 412 { 413 int reason; 414 XEvent *event; 415 unsigned char rowType, columnType; 416 int row, column; 417 XRectangle *clipRect; 418 XmLGridDrawStruct *drawInfo; 419 void *object; 420 } XmLGridCallbackStruct; 421 422 #define XmCR_ADD_ROW 900 423 #define XmCR_ADD_COLUMN 901 424 #define XmCR_ADD_CELL 902 425 #define XmCR_CELL_DRAW 903 426 #define XmCR_CELL_DROP 904 427 #define XmCR_CELL_FOCUS_IN 905 428 #define XmCR_CELL_FOCUS_OUT 906 429 #define XmCR_CELL_PASTE 907 430 #define XmCR_CONF_TEXT 908 431 #define XmCR_PREF_WIDTH 909 432 #define XmCR_DELETE_ROW 910 433 #define XmCR_DELETE_COLUMN 911 434 #define XmCR_DELETE_CELL 912 435 #define XmCR_EDIT_BEGIN 913 436 #define XmCR_EDIT_INSERT 914 437 #define XmCR_EDIT_CANCEL 915 438 #define XmCR_EDIT_COMPLETE 916 439 #define XmCR_FREE_VALUE 917 440 #define XmCR_RESIZE_ROW 918 441 #define XmCR_RESIZE_COLUMN 919 442 #define XmCR_PREF_HEIGHT 920 443 #define XmCR_SCROLL_ROW 921 444 #define XmCR_SCROLL_COLUMN 922 445 #define XmCR_SELECT_CELL 923 446 #define XmCR_SELECT_COLUMN 924 447 #define XmCR_SELECT_ROW 925 448 #define XmCR_DESELECT_CELL 926 449 #define XmCR_DESELECT_COLUMN 927 450 #define XmCR_DESELECT_ROW 928 451 452 /* xfe added callback reason */ 453 #define XmCR_RESIZE_GRID 929 454 #define XmCR_SHOW_POPUP 930 455 #define XmCR_SINGLECLICK 931 456 457 #define XmCR_ENTER_CELL 931 458 #define XmCR_ENTER_GRID 932 459 #define XmCR_LEAVE_CELL 933 460 #define XmCR_LEAVE_GRID 934 461 462 /* Grid defines */ 463 464 #define XmCONTENT 0 465 #define XmHEADING 1 466 #define XmFOOTER 2 467 #define XmALL_TYPES 3 468 #define XmINVALID_TYPE 4 469 470 #define XmICON_CELL 0 471 #define XmPIXMAP_CELL 1 472 #define XmSTRING_CELL 2 473 474 #define XmBORDER_NONE 0 475 #define XmBORDER_LINE 1 476 #define XmBORDER_DASH 2 477 478 #define XmFORMAT_DELIMITED 1 479 #define XmFORMAT_XL 2 480 #define XmFORMAT_PAD 3 481 #define XmFORMAT_PASTE 4 482 #define XmFORMAT_DROP 5 483 484 #define XmSELECT_NONE 1 485 #define XmSELECT_SINGLE_ROW 2 486 #define XmSELECT_BROWSE_ROW 3 487 #define XmSELECT_MULTIPLE_ROW 4 488 #define XmSELECT_CELL 5 489 490 #define XmDRAW_FOCUS_NONE 1 491 #define XmDRAW_FOCUS_CELL 2 492 #define XmDRAW_FOCUS_LEFT 3 493 #define XmDRAW_FOCUS_MID 4 494 #define XmDRAW_FOCUS_RIGHT 5 495 496 #define XmTRAVERSE_EXTEND_DOWN 20 497 #define XmTRAVERSE_EXTEND_LEFT 21 498 #define XmTRAVERSE_EXTEND_RIGHT 22 499 #define XmTRAVERSE_EXTEND_UP 23 500 #define XmTRAVERSE_PAGE_DOWN 24 501 #define XmTRAVERSE_PAGE_LEFT 25 502 #define XmTRAVERSE_PAGE_RIGHT 26 503 #define XmTRAVERSE_PAGE_UP 27 504 #define XmTRAVERSE_TO_BOTTOM 28 505 #define XmTRAVERSE_TO_TOP 29 506 507 #define XmALIGNMENT_LEFT 0 508 #ifndef XmALIGNMENT_CENTER 509 #define XmALIGNMENT_CENTER 1 510 #endif 511 #define XmALIGNMENT_RIGHT 2 512 #define XmALIGNMENT_TOP_LEFT 3 513 #define XmALIGNMENT_TOP 4 514 #define XmALIGNMENT_TOP_RIGHT 5 515 #define XmALIGNMENT_BOTTOM_LEFT 6 516 #define XmALIGNMENT_BOTTOM 7 517 #define XmALIGNMENT_BOTTOM_RIGHT 8 518 519 /* xfe additions */ 520 #define XmSORT_NONE 0 521 #define XmSORT_ASCENDING 1 522 #define XmSORT_DESCENDING 2 523 524 /* Progress resources */ 525 526 #define XmNcompleteValue "completeValue" 527 #define XmCCompleteValue "CompleteValue" 528 #define XmNnumBoxes "numBoxes" 529 #define XmCNumBoxes "NumBoxes" 530 #define XmNmeterStyle "meterStyle" 531 #define XmCMeterStyle "MeterStyle" 532 #define XmRMeterStyle "MeterStyle" 533 #define XmNshowPercentage "showPercentage" 534 #define XmCShowPercentage "ShowPercentage" 535 #define XmNshowTime "showTime" 536 #define XmCShowTime "ShowTime" 537 538 /* Progress defines */ 539 540 #define XmMETER_BAR 0 541 #define XmMETER_BOXES 1 542 543 /* Tree resources */ 544 545 #define XmNcollapseCallback "collapseCallback" 546 #define XmNconnectingLineColor "connectingLineColor" 547 #define XmCConnectingLineColor "ConnectingLineColor" 548 #define XmNexpandCallback "expandCallback" 549 #define XmNlevelSpacing "levelSpacing" 550 #define XmCLevelSpacing "LevelSpacing" 551 #define XmNplusMinusColor "plusMinusColor" 552 #define XmCPlusMinusColor "PlusMinusColor" 553 #define XmNrowExpands "rowExpands" 554 #define XmCRowExpands "RowExpands" 555 #define XmNrowIsExpanded "rowIsExpanded" 556 #define XmCRowIsExpanded "RowIsExpanded" 557 #define XmNrowLevel "rowLevel" 558 #define XmCRowLevel "RowLevel" 559 #define XmNignorePixmaps "ignorePixmaps" 560 #define XmCIgnorePixmaps "IgnorePixmaps" 561 562 /* Tree callbacks */ 563 564 typedef struct 565 { 566 int level; 567 Boolean expands; 568 Boolean isExpanded; 569 Pixmap pixmap, pixmask; 570 XmString string; 571 } XmLTreeRowDefinition; 572 573 #define XmCR_COLLAPSE_ROW 950 574 #define XmCR_EXPAND_ROW 951 575 576 /* Backwards compatibility */ 577 578 #ifdef XmLBACKWARDS_COMPATIBILITY 579 580 #define XmNfooterColumnCount "footerColumns" 581 #define XmNfooterRowCount "footerRows" 582 #define XmNheadingColumnCount "headingColumns" 583 #define XmNheadingRowCount "headingRows" 584 #define XmNcellBottomBorderPixel "cellBottomBorderColor" 585 #define XmCCellBottomBorderPixel "CellBottomBorderColor" 586 #define XmNcellLeftBorderPixel "cellLeftBorderColor" 587 #define XmCCellLeftBorderPixel "CellLeftBorderColor" 588 #define XmNcellRightBorderPixel "cellRightBorderColor" 589 #define XmCCellRightBorderPixel "CellRightBorderColor" 590 #define XmNcellTopBorderPixel "cellTopBorderColor" 591 #define XmCCellTopBorderPixel "CellTopBorderColor" 592 593 #define XmTEXT_CELL 250 594 #define XmLABEL_CELL 251 595 596 typedef void XmLCGridRow; 597 typedef void XmLCGridColumn; 598 typedef void XmLCGridCell; 599 600 #endif 601 602 /* Utility defines */ 603 604 #define XmDRAWNB_ARROW 0 605 #define XmDRAWNB_ARROWLINE 1 606 #define XmDRAWNB_DOUBLEARROW 2 607 #define XmDRAWNB_SQUARE 3 608 #define XmDRAWNB_DOUBLEBAR 4 609 #define XmDRAWNB_STRING 5 610 #define XmDRAWNB_SMALLARROW 6 611 612 #define XmDRAWNB_RIGHT 0 613 #define XmDRAWNB_LEFT 1 614 #define XmDRAWNB_UP 2 615 #define XmDRAWNB_DOWN 3 616 617 #define XmSTRING_RIGHT 0 618 #define XmSTRING_LEFT 1 619 #define XmSTRING_UP 2 620 #define XmSTRING_DOWN 3 621 622 enum { XmLRectInside, XmLRectOutside, XmLRectPartial }; 623 624 typedef struct 625 { 626 int pos; 627 } XmLArrayItem; 628 629 typedef struct _XmLArrayRec *XmLArray; 630 631 typedef struct 632 { 633 char *name; 634 unsigned char value; 635 } XmLStringToUCharMap; 636 637 /* Utility functions */ 638 639 typedef int (*XmLSortCompareFunc)(void *userData, void *l, void *r); 640 typedef int (*XmLArrayCompareFunc)(void *, void **, void **); 641 642 XmLArray XmLArrayNew(char autonumber, char growFast); 643 void XmLArrayFree(XmLArray array); 644 void XmLArrayAdd(XmLArray array, int pos, int count); 645 int XmLArrayDel(XmLArray array, int pos, int count); 646 int XmLArraySet(XmLArray array, int pos, void *item); 647 void *XmLArrayGet(XmLArray array, int pos); 648 int XmLArrayGetCount(XmLArray array); 649 int XmLArrayMove(XmLArray array, int newPos, int pos, int count); 650 int XmLArrayReorder(XmLArray array, int *newPositions, 651 int pos, int count); 652 int XmLArraySort(XmLArray array, XmLArrayCompareFunc compare, 653 void *userData, int pos, int count); 654 Boolean XmLCvtStringToUChar(Display *dpy, char *resname, 655 XmLStringToUCharMap *map, XrmValuePtr fromVal, XrmValuePtr toVal); 656 int XmLDateDaysInMonth(int m, int y); 657 int XmLDateWeekDay(int m, int d, int y); 658 void XmLDrawnButtonSetType(Widget w, int drawnType, int drawnDir); 659 void XmLDrawToggle(Widget w, Boolean state, Dimension size, 660 unsigned char alignment, GC gc, Pixel backgroundColor, 661 Pixel topColor, Pixel bottomColor, Pixel checkColor, 662 XRectangle *rect, XRectangle *clipRect); 663 XmFontList XmLFontListCopyDefault(Widget widget); 664 void XmLFontListGetDimensions(XmFontList fontList, short *width, 665 short *height, Boolean useAverageWidth); 666 void XmLInitialize(void); 667 int XmLMessageBox(Widget w, char *string, Boolean okOnly); 668 void XmLPixmapDraw(Widget w, Pixmap pixmap, Pixmap pixmask, 669 int pixmapWidth, int pixmapHeight, unsigned char alignment, 670 GC gc, XRectangle *rect, XRectangle *clipRect); 671 int XmLRectIntersect(XRectangle *r1, XRectangle *r2); 672 Widget XmLShellOfWidget(Widget w); 673 void XmLSort(void *base, int numItems, unsigned int itemSize, 674 XmLSortCompareFunc, void *userData); 675 void XmLStringDraw(Widget w, XmString string, XmStringDirection stringDir, 676 XmFontList fontList, unsigned char alignment, GC gc, 677 XRectangle *rect, XRectangle *clipRect); 678 void XmLStringDrawDirection(Display *dpy, Window win, XmFontList fontlist, 679 XmString string, GC gc, int x, int y, Dimension width, 680 unsigned char alignment, unsigned char layout_direction, 681 unsigned char drawing_direction); 682 void XmLWarning(Widget w, char *msg); 683 684 #ifdef XmL_CPP 685 } 686 #endif 687 #endif 688