home *** CD-ROM | disk | FTP | other *** search
/ Tools / WinSN5.0Ver.iso / NETSCAP.50 / WIN1998.ZIP / ns / cmd / xfe / XfeWidgets / Xfe / XfeP.h < prev   
Encoding:
C/C++ Source or Header  |  1998-04-08  |  22.8 KB  |  574 lines

  1. /* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
  2.  *
  3.  * The contents of this file are subject to the Netscape Public License
  4.  * Version 1.0 (the "NPL"); you may not use this file except in
  5.  * compliance with the NPL.  You may obtain a copy of the NPL at
  6.  * http://www.mozilla.org/NPL/
  7.  *
  8.  * Software distributed under the NPL is distributed on an "AS IS" basis,
  9.  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
  10.  * for the specific language governing rights and limitations under the
  11.  * NPL.
  12.  *
  13.  * The Initial Developer of this code under the NPL is Netscape
  14.  * Communications Corporation.  Portions created by Netscape are
  15.  * Copyright (C) 1998 Netscape Communications Corporation.  All Rights
  16.  * Reserved.
  17.  */
  18. /*-----------------------------------------*/
  19. /*                                                                        */
  20. /* Name:        <Xfe/Xfe.h>                                                */
  21. /* Description:    Xfe widgets private header file.                        */
  22. /* Author:        Ramiro Estrugo <ramiro@netscape.com>                    */
  23. /*                                                                        */
  24. /*----------------------------------------------------------------------*/
  25.  
  26.  
  27. #ifndef _XfeXfeP_h_                                /* start XfeP.h            */
  28. #define _XfeXfeP_h_
  29.  
  30. #ifdef __cplusplus                                /* start C++            */
  31. extern "C" {
  32. #endif
  33.  
  34. #include <Xm/XmP.h>
  35. #include <Xm/DrawP.h>
  36. #include <Xfe/Xfe.h>
  37. #include <Xfe/GeometryP.h>
  38.  
  39. /*----------------------------------------------------------------------*/
  40. /*                                                                        */
  41. /* WidgetClassRec declaration macro.                                    */
  42. /*                                                                        */
  43. /*----------------------------------------------------------------------*/
  44. #define _XFE_WIDGET_CLASS_RECORD(name,Name)        \
  45. externaldef ( xfe##name##classrec )                \
  46. Xfe##Name##ClassRec                                \
  47. xfe##Name##ClassRec
  48.  
  49. /*----------------------------------------------------------------------*/
  50. /*                                                                        */
  51. /* WidgetClass declaration macro.                                        */
  52. /*                                                                        */
  53. /*----------------------------------------------------------------------*/
  54. #define _XFE_WIDGET_CLASS(name,Name)            \
  55. externaldef ( xfe##name##widgetclass )            \
  56. WidgetClass                                        \
  57. xfe##Name##WidgetClass =                        \
  58. ( WidgetClass ) & xfe##Name##ClassRec
  59.  
  60. /*----------------------------------------------------------------------*/
  61. /*                                                                        */
  62. /* XfePrimitive & XfeManager class method types                            */
  63. /*                                                                        */
  64. /*----------------------------------------------------------------------*/
  65. typedef void    (*XfeGeometryProc)        (Widget            w,
  66.                                          Dimension *    width,
  67.                                          Dimension *    height);
  68. /*----------------------------------------------------------------------*/
  69. typedef void    (*XfePrepareProc)        (Widget            w,
  70.                                          int            flags);
  71. /*----------------------------------------------------------------------*/
  72. typedef void    (*XfeExposeProc)        (Widget            w,
  73.                                          XEvent *        event,
  74.                                          Region            region,
  75.                                          XRectangle *    clip_rect);
  76. /*----------------------------------------------------------------------*/
  77. typedef void    (*XfeOrientedProc)        (Widget            w,
  78.                                          Widget            descendant,
  79.                                          int            x,
  80.                                          int            y);
  81. /*----------------------------------------------------------------------*/
  82.  
  83. /*----------------------------------------------------------------------*/
  84. /*                                                                        */
  85. /* Manager child accept / insert / delete function type                    */
  86. /*                                                                        */
  87. /*----------------------------------------------------------------------*/
  88. typedef Boolean    (*XfeChildFunc)            (Widget            child);
  89.  
  90. /*----------------------------------------------------------------------*/
  91. /*                                                                        */
  92. /* GC Access method                                                        */
  93. /*                                                                        */
  94. /*----------------------------------------------------------------------*/
  95. typedef GC        (*XfeGetGCFunc)            (Widget            child);
  96.  
  97. /*----------------------------------------------------------------------*/
  98. /*                                                                        */
  99. /* XfePrimitive & XfeManager class bit gravity                            */
  100. /*                                                                        */
  101. /*----------------------------------------------------------------------*/
  102. #ifdef _ALPHA_
  103. typedef void (*XfeBitGravityType)(void);
  104. #else
  105. typedef int    XfeBitGravityType;
  106. #endif
  107.  
  108. /*----------------------------------------------------------------------*/
  109. /*                                                                        */
  110. /* Widget method inheritance macros                                        */
  111. /*                                                                        */
  112. /*----------------------------------------------------------------------*/
  113. #define XfeInheritAcceptChild                ((XfeChildFunc)            _XtInherit)
  114. #define XfeInheritArmTimeout                ((XtTimerCallbackProc)    _XtInherit)
  115. #define XfeInheritBitGravity                ((XfeBitGravityType)    _XtInherit)
  116. #define XfeInheritChangeManaged                ((XtWidgetProc)            _XtInherit)
  117. #define XfeInheritClickTimeout                ((XtTimerCallbackProc)    _XtInherit)
  118. #define XfeInheritDeleteChild                ((XfeChildFunc)            _XtInherit)
  119. #define XfeInheritDescendantDragEnd            ((XfeOrientedProc)        _XtInherit)
  120. #define XfeInheritDescendantDragMotion        ((XfeOrientedProc)        _XtInherit)
  121. #define XfeInheritDescendantDragStart        ((XfeOrientedProc)        _XtInherit)
  122. #define XfeInheritDescendantEnter            ((XfeOrientedProc)        _XtInherit)
  123. #define XfeInheritDescendantLeave            ((XfeOrientedProc)        _XtInherit)
  124. #define XfeInheritDescendantMotion            ((XfeOrientedProc)        _XtInherit)
  125. #define XfeInheritDragEnd                    ((XfeOrientedProc)        _XtInherit)
  126. #define XfeInheritDragMotion                ((XfeOrientedProc)        _XtInherit)
  127. #define XfeInheritDragStart                    ((XfeOrientedProc)        _XtInherit)
  128. #define XfeInheritDrawBackground            ((XfeExposeProc)        _XtInherit)
  129. #define XfeInheritDrawComponents            ((XfeExposeProc)        _XtInherit)
  130. #define XfeInheritDrawHighlight                ((XfeExposeProc)        _XtInherit)
  131. #define XfeInheritDrawPixmap                ((XfeExposeProc)        _XtInherit)
  132. #define XfeInheritDrawRaiseBorder            ((XfeExposeProc)        _XtInherit)
  133. #define XfeInheritDrawSelection                ((XfeExposeProc)        _XtInherit)
  134. #define XfeInheritDrawShadow                ((XfeExposeProc)        _XtInherit)
  135. #define XfeInheritDrawString                ((XfeExposeProc)        _XtInherit)
  136. #define XfeInheritDrawTitleShadow            ((XfeExposeProc)        _XtInherit)
  137. #define XfeInheritEnter                        ((XfeOrientedProc)        _XtInherit)
  138. #define XfeInheritGetBackgroundGC            ((XfeGetGCFunc)            _XtInherit)
  139. #define XfeInheritGetLabelGC                ((XfeGetGCFunc)            _XtInherit)
  140. #define XfeInheritGetPixmapGC                ((XfeGetGCFunc)            _XtInherit)
  141. #define XfeInheritGetSelectionGC            ((XfeGetGCFunc)            _XtInherit)
  142. #define XfeInheritInsertChild                ((XfeChildFunc)            _XtInherit)
  143. #define XfeInheritLayoutArrow                ((XtWidgetProc)            _XtInherit)
  144. #define XfeInheritLayoutChildren            ((XtWidgetProc)            _XtInherit)
  145. #define XfeInheritLayoutComponents            ((XtWidgetProc)            _XtInherit)
  146. #define XfeInheritLayoutPixmap                ((XtWidgetProc)            _XtInherit)
  147. #define XfeInheritLayoutString                ((XtWidgetProc)            _XtInherit)
  148. #define XfeInheritLayoutTitle                ((XtWidgetProc)            _XtInherit)
  149. #define XfeInheritLeave                        ((XfeOrientedProc)        _XtInherit)
  150. #define XfeInheritMinimumGeometry            ((XfeGeometryProc)        _XtInherit)
  151. #define XfeInheritMotion                    ((XfeOrientedProc)        _XtInherit)
  152. #define XfeInheritPreferredGeometry            ((XfeGeometryProc)        _XtInherit)
  153. #define XfeInheritToggleSelection            ((XtWidgetProc)            _XtInherit)
  154. #define XfeInheritUpdateRect                ((XtWidgetProc)            _XtInherit)
  155.  
  156. /*----------------------------------------------------------------------*/
  157. /*                                                                        */
  158. /* Method inheritance resolution macro                                    */
  159. /*                                                                        */
  160. /*----------------------------------------------------------------------*/
  161. #define _XfeResolve(wc,sc,class_name,method,flag)        \
  162. if ((wc)->class_name.method == flag)                    \
  163.   (wc)->class_name.method = (sc)->class_name.method
  164. /*----------------------------------------------------------------------*/
  165.  
  166. /*----------------------------------------------------------------------*/
  167. /*                                                                        */
  168. /* Converter done macro                                                    */
  169. /*                                                                        */
  170. /*----------------------------------------------------------------------*/
  171. #define    _XfeConverertDone(value,type)            \
  172.     {                                            \
  173.         if (to->addr != NULL) {                    \
  174.         if (to->size < sizeof(type)) {            \
  175.             to->size = sizeof(type);            \
  176.             return False;                        \
  177.         }                                        \
  178.         *(type*)(to->addr) = (value);            \
  179.         }                                        \
  180.         else {                                    \
  181.         static type static_val;                    \
  182.         static_val = (value);                    \
  183.         to->addr = (XPointer)&static_val;        \
  184.         }                                        \
  185.         to->size = sizeof(type);                \
  186.         return True;                            \
  187.     }
  188. /*----------------------------------------------------------------------*/
  189.  
  190. /*----------------------------------------------------------------------*/
  191. /*                                                                        */
  192. /* _XfeIsAlive() macro.                                                    */
  193. /*                                                                        */
  194. /*----------------------------------------------------------------------*/
  195. #define _XfeIsAlive(_w) \
  196. ((_w) && !_XfeBeingDestroyed(_w))
  197.  
  198. /*----------------------------------------------------------------------*/
  199. /*                                                                        */
  200. /* _XfeIsRealized() macro.                                                */
  201. /*                                                                        */
  202. /*----------------------------------------------------------------------*/
  203. #define _XfeIsRealized(_w) \
  204. (_XfeIsAlive(_w) && _XfeWindowGood(_XfeWindow(_w)))
  205.  
  206. /*----------------------------------------------------------------------*/
  207. /*                                                                        */
  208. /* _XfeSetMappedWhenManaged() macro.                                    */
  209. /*                                                                        */
  210. /*----------------------------------------------------------------------*/
  211. #define _XfeSetMappedWhenManaged(_w,_v) \
  212. if (_XfeIsAlive(_w) && XtIsRealized(_w)) \
  213.   XtVaSetValues((_w),XmNmappedWhenManaged,(_v),NULL)
  214.  
  215. /*----------------------------------------------------------------------*/
  216. /*                                                                        */
  217. /* Xt Core member access                                                */
  218. /*                                                                        */
  219. /*----------------------------------------------------------------------*/
  220. #define _XfeAccelerators(_w)        ((_w)->core . accelerators)
  221. #define _XfeAncestorSensitive(_w)    ((_w)->core . ancestor_sensitive)
  222. #define _XfeBackgroundPixel(_w)        ((_w)->core . background_pixel)
  223. #define _XfeBackgroundPixmap(_w)    ((_w)->core . background_pixmap)
  224. #define _XfeBeingDestroyed(_w)        ((_w)->core . being_destroyed)
  225. #define _XfeBorderPixel(_w)            ((_w)->core . border_pixel)
  226. #define _XfeBorderPixmap(_w)        ((_w)->core . border_pixmap)
  227. #define _XfeBorderWidth(_w)            ((_w)->core . border_width)
  228. #define _XfeClass(_w)                ((_w)->core . widget_class)
  229. #define _XfeColormap(_w)            ((_w)->core . colormap)
  230. #define _XfeConstraints(_w)            ((_w)->core . constraints)
  231. #define _XfeDepth(_w)                ((_w)->core . depth)
  232. #define _XfeHeight(_w)                ((_w)->core . height)
  233. #define _XfeIsManaged(_w)            ((_w)->core . managed)
  234. #define _XfeMappedWhenManaged(_w)    ((_w)->core . mapped_when_managed)
  235. #define _XfeNumPopups(_w)            ((_w)->core . num_popups)
  236. #define _XfeParent(_w)                ((_w)->core . parent)
  237. #define _XfePopupList(_w)            ((_w)->core . popup_list)
  238. #define _XfeScreen(_w)                ((_w)->core . screen)
  239. #define _XfeSensitive(_w)            ((_w)->core . sensitive)
  240. #define _XfeVisible(_w)                ((_w)->core . visible)
  241. #define _XfeWidth(_w)                ((_w)->core . width)
  242. #define _XfeWindow(_w)                ((_w)->core . window)
  243. #define _XfeX(_w)                    ((_w)->core . x)
  244. #define _XfeXrmName(_w)                ((_w)->core . xrm_name)
  245. #define _XfeY(_w)                    ((_w)->core . y)
  246.  
  247. /*----------------------------------------------------------------------*/
  248. /*                                                                        */
  249. /* Popup list indexing macro                                            */
  250. /*                                                                        */
  251. /*----------------------------------------------------------------------*/
  252. #define _XfePopupListIndex(_w,_i)                        \
  253. (((_i < _XfeNumPopups(_w)) && _XfePopupList(_w))        \
  254. ? _XfePopupList(_w)[_i] : NULL)
  255.  
  256. /*----------------------------------------------------------------------*/
  257. /*                                                                        */
  258. /* Xt WidgetClass member access                                            */
  259. /*                                                                        */
  260. /*----------------------------------------------------------------------*/
  261. #define _XfeClassName(wc)            ((wc)->core_class . class_name)
  262. #define _XfeSuperClass(wc)            ((wc)->core_class . superclass)
  263.  
  264. /*----------------------------------------------------------------------*/
  265. /*                                                                        */
  266. /* Xm widget part access macros                                            */
  267. /*                                                                        */
  268. /*----------------------------------------------------------------------*/
  269. #define _XfeXmLabelPart(w) \
  270. &(((XmLabelWidget) w) -> label)
  271.  
  272. #define _XfeXmPushButtonPart(w) \
  273. &(((XmPushButtonWidget) w) -> pushbutton)
  274.  
  275. #define _XfeXmCascadeButtonPart(w) \
  276. &(((XmCascadeButtonWidget) w) -> cascade_button)
  277.  
  278. /*----------------------------------------------------------------------*/
  279. /*                                                                        */
  280. /* Xfe configuration propragation flags                                    */
  281. /*                                                                        */
  282. /*----------------------------------------------------------------------*/
  283. #define XfeConfigNone            (0)
  284. #define XfeConfigGeometry        (1 << 0)
  285. #define XfeConfigLayout            (1 << 1)
  286. #define XfeConfigExpose            (1 << 2)
  287. #define XfeConfigDirty            (1 << 3)
  288.  
  289. #define XfeConfigGLE            (XfeConfigGeometry        | \
  290.                                  XfeConfigLayout        | \
  291.                                  XfeConfigExpose)
  292.  
  293. #define XfeConfigGLED            (XfeConfigGeometry        | \
  294.                                  XfeConfigLayout        | \
  295.                                  XfeConfigExpose        | \
  296.                                  XfeConfigDirty)
  297.  
  298. #define XfeConfigLED            (XfeConfigLayout        | \
  299.                                  XfeConfigExpose        | \
  300.                                  XfeConfigDirty)
  301.  
  302. #define XfeConfigED                (XfeConfigExpose        | \
  303.                                  XfeConfigDirty)
  304.  
  305. #define XfeConfigLE                (XfeConfigLayout        | \
  306.                                  XfeConfigExpose)
  307.  
  308. /*----------------------------------------------------------------------*/
  309. /*                                                                        */
  310. /* Xfe preparation propragation flags                                    */
  311. /*                                                                        */
  312. /*----------------------------------------------------------------------*/
  313. #define XfePrepareNone            (0)
  314. #define XfePrepare1                (1 << 0)
  315. #define XfePrepare2                (1 << 1)
  316. #define XfePrepare3                (1 << 2)
  317. #define XfePrepare4                (1 << 3)
  318. #define XfePrepare5                (1 << 4)
  319. #define XfePrepare6                (1 << 5)
  320. #define XfePrepare7                (1 << 6)
  321. #define XfePrepare8                (1 << 7)
  322. #define XfePrepare9                (1 << 8)
  323. #define XfePrepare10            (1 << 9)
  324. #define XfePrepare11            (1 << 10)
  325. #define XfePrepare12            (1 << 11)
  326. #define XfePrepare13            (1 << 12)
  327. #define XfePrepare14            (1 << 13)
  328. #define XfePrepare15            (1 << 14)
  329. #define XfePrepare16            (1 << 15)
  330. #define XfePrepare17            (1 << 16)
  331. #define XfePrepare18            (1 << 17)
  332. #define XfePrepare19            (1 << 18)
  333. #define XfePrepare20            (1 << 19)
  334. #define XfePrepareAll            (~(0))
  335.  
  336. /*----------------------------------------------------------------------*/
  337. /*                                                                        */
  338. /* Widget translations                                                    */
  339. /*                                                                        */
  340. /*----------------------------------------------------------------------*/
  341. extern char _XfeArrowDefaultTranslations[];
  342. extern char _XfeBmButtonExtraTranslations[];
  343. extern char _XfeButtonDefaultTranslations[];
  344. extern char _XfeButtonMotionAddTranslations[];
  345. extern char _XfeButtonMotionRemoveTranslations[];
  346. extern char _XfeBypassShellDefaultTranslations[];
  347. extern char _XfeComboBoxArrowTranslations[];
  348. extern char _XfeComboBoxExtraTranslations[];
  349. extern char _XfeComboBoxTextEditableTranslations[];
  350. extern char _XfeComboBoxTextReadOnlyTranslations[];
  351. extern char _XfeLabelDefaultTranslations[];
  352. extern char _XfePrimitiveDefaultTranslations[];
  353. extern char _XfeToolBarExtraTranslations[];
  354. /*----------------------------------------------------------------------*/
  355.  
  356. /*----------------------------------------------------------------------*/
  357. /*                                                                        */
  358. /* Callbacks                                                            */
  359. /*                                                                        */
  360. /*----------------------------------------------------------------------*/
  361. extern void
  362. _XfeInvokeCallbacks            (Widget                w,
  363.                              XtCallbackList        list,
  364.                              int                reason,
  365.                              XEvent *            event,
  366.                              Boolean            flush_display);
  367. /*----------------------------------------------------------------------*/
  368.  
  369. /*----------------------------------------------------------------------*/
  370. /*                                                                        */
  371. /* Double Buffer utils                                                    */
  372. /*                                                                        */
  373. /*----------------------------------------------------------------------*/
  374. extern Pixmap
  375. _XfePixmapBufferAllocate        (Widget            w);
  376. /*----------------------------------------------------------------------*/
  377. extern void
  378. _XfePixmapBufferRelease            (Widget            w,
  379.                                  Pixmap            buffer);
  380. /*----------------------------------------------------------------------*/
  381. extern Pixmap
  382. _XfePixmapBufferAccess            (void);
  383. /*----------------------------------------------------------------------*/
  384.  
  385. /*----------------------------------------------------------------------*/
  386. /*                                                                        */
  387. /* Warnings                                                                */
  388. /*                                                                        */
  389. /*----------------------------------------------------------------------*/
  390. extern void
  391. _XfeSimpleWarning                (Widget            w,
  392.                                  String            warning);
  393. /*----------------------------------------------------------------------*/
  394. extern void
  395. _XfeExtraWarning                (Widget            w,
  396.                                  String            warning,
  397.                                  String            filename,
  398.                                  Cardinal        lineno);
  399. /*----------------------------------------------------------------------*/
  400. extern void
  401. _XfeArgumentWarning                (Widget            w,
  402.                                  String            format,
  403.                                  XtPointer        argument,
  404.                                  String            filename,
  405.                                  Cardinal        lineno);
  406. /*----------------------------------------------------------------------*/
  407. #define _XfeWarning(w,warning) \
  408. _XfeExtraWarning((w),(warning),__FILE__,__LINE__)
  409. /*----------------------------------------------------------------------*/
  410. #define _XfeArgWarning(w,format,arg) \
  411. _XfeArgumentWarning((w),(format),(XtPointer) (arg),__FILE__,__LINE__)
  412. /*----------------------------------------------------------------------*/
  413.  
  414. /*----------------------------------------------------------------------*/
  415. /*                                                                        */
  416. /* Check read only resources in Initialize()                            */
  417. /*                                                                        */
  418. /*----------------------------------------------------------------------*/
  419. #define _XfeInitializeCheckReadOnly(_w,_np,_v,_d,_m)    \
  420. {                                                        \
  421.     if (_np -> _v)                                        \
  422.     {                                                    \
  423.         _np -> _v = _d;                                    \
  424.                                                         \
  425.         _XfeWarning(_w,_m);                                \
  426.     }                                                    \
  427. }
  428.  
  429. /*----------------------------------------------------------------------*/
  430. /*                                                                        */
  431. /* Check read only resources in SetValues()                                */
  432. /*                                                                        */
  433. /*----------------------------------------------------------------------*/
  434. #define _XfeSetValuesCheckReadOnly(_w,_np,_op,_v,_m)    \
  435. {                                                        \
  436.     if (_np -> _v != _op -> _v)                            \
  437.     {                                                    \
  438.         _np -> _v = _op -> _v;                            \
  439.                                                         \
  440.         _XfeWarning(_w,_m);                                \
  441.     }                                                    \
  442. }
  443.  
  444. /*----------------------------------------------------------------------*/
  445. /*                                                                        */
  446. /* Check for good pixmaps                                                */
  447. /*                                                                        */
  448. /*----------------------------------------------------------------------*/
  449. #define _XfePixmapGood(_p) \
  450. (((_p) != XmUNSPECIFIED_PIXMAP) && ((_p) != None))
  451.  
  452. /*----------------------------------------------------------------------*/
  453. /*                                                                        */
  454. /* Check for good cursors                                                */
  455. /*                                                                        */
  456. /*----------------------------------------------------------------------*/
  457. #define _XfeCursorGood(_c) \
  458. ((_c) != None)
  459.  
  460. /*----------------------------------------------------------------------*/
  461. /*                                                                        */
  462. /* Check for good window                                                */
  463. /*                                                                        */
  464. /*----------------------------------------------------------------------*/
  465. #define _XfeWindowGood(_window) \
  466. ((_window) != None)
  467.  
  468. /*----------------------------------------------------------------------*/
  469. /*                                                                        */
  470. /* Resource call procedures                                                */
  471. /*                                                                        */
  472. /*----------------------------------------------------------------------*/
  473. extern void
  474. _XfeCallProcCopyBackground        (Widget            w,
  475.                                  int            offset,
  476.                                  XrmValue *        value);
  477. /*----------------------------------------------------------------------*/
  478. extern void
  479. _XfeCallProcCopyForeground        (Widget            w,
  480.                                  int            offset,
  481.                                  XrmValue *        value);
  482. /*----------------------------------------------------------------------*/
  483. extern void
  484. _XfeCallProcCopyShadowThickness    (Widget            w,
  485.                                  int            offset,
  486.                                  XrmValue *        value);
  487. /*----------------------------------------------------------------------*/
  488. extern void
  489. _XfeCallProcSelectPixel            (Widget            w,
  490.                                  int            offset,
  491.                                  XrmValue *        value);
  492.  
  493. /*----------------------------------------------------------------------*/
  494. extern void
  495. _XfeCallProcOrientationCursor    (Widget            w,
  496.                                  int            offset,
  497.                                  XrmValue *        value);
  498. /*----------------------------------------------------------------------*/
  499. extern void
  500. _XfeCallProcDefaultLabelFontList(Widget            w,
  501.                                  int            offset,
  502.                                  XrmValue *        value);
  503. /*----------------------------------------------------------------------*/
  504. extern void
  505. _XfeCallProcDefaultTextFontList    (Widget            w,
  506.                                  int            offset,
  507.                                  XrmValue *        value);
  508. /*----------------------------------------------------------------------*/
  509.  
  510. /*----------------------------------------------------------------------*/
  511. /*                                                                        */
  512. /* Synthetic resource import procedures                                    */
  513. /*                                                                        */
  514. /*----------------------------------------------------------------------*/
  515. extern XmImportOperator
  516. _XfeSyntheticSetResourceForChild    (Widget        w,
  517.                                      int        offset,
  518.                                      XtArgVal *    value);
  519. /*----------------------------------------------------------------------*/
  520.  
  521. /*----------------------------------------------------------------------*/
  522. /*                                                                        */
  523. /* Actions                                                                */
  524. /*                                                                        */
  525. /*----------------------------------------------------------------------*/
  526. extern XtActionProc
  527. _XfeGetActionProc                (WidgetClass    wc,
  528.                                  String            name);
  529. /*----------------------------------------------------------------------*/
  530.  
  531. /*----------------------------------------------------------------------*/
  532. /*                                                                        */
  533. /* Preparation utlities                                                    */
  534. /*                                                                        */
  535. /*----------------------------------------------------------------------*/
  536. extern void
  537. _XfePixmapPrepare                (Widget            w,
  538.                                  Pixmap *        pixmap_in_out,
  539.                                  Dimension *    width_out,
  540.                                  Dimension *    height_out,
  541.                                  String            name);
  542. /*----------------------------------------------------------------------*/
  543.  
  544. /*----------------------------------------------------------------------*/
  545. /*                                                                        */
  546. /* Privat functions not exposed in motif 2.0                            */
  547. /*                                                                        */
  548. /*----------------------------------------------------------------------*/
  549. #if XmVersion >= 2000
  550. extern void    _XmMenuPopDown                (Widget,XEvent *,Boolean *);
  551. extern void    _XmMoveObject                (Widget,Position,Position);
  552.  
  553. extern void    _XmPostPopupMenu            (Widget,XEvent *);
  554.  
  555. extern void    _XmPrimitiveEnter            (Widget,XEvent *,String *,Cardinal *);
  556. extern void    _XmPrimitiveLeave            (Widget,XEvent *,String *,Cardinal *);
  557.  
  558. extern void    _XmPopdown                    (Widget);
  559. extern void    _XmPopupSpringLoaded        (Widget);
  560. extern void    _XmPopup                    (Widget,XtGrabKind);
  561.  
  562. extern void    _XmBottomShadowColorDefault    (Widget,int,XrmValue *);
  563. extern void    _XmTopShadowColorDefault    (Widget,int,XrmValue *);
  564.  
  565. extern XtGeometryResult    _XmMakeGeometryRequest    (Widget,XtWidgetGeometry *);
  566.  
  567. #endif /* XmVersion >= 2000 */
  568.  
  569. #ifdef __cplusplus                                /* end C++                */
  570. }
  571. #endif
  572.  
  573. #endif                                            /* end XfeP.h            */
  574.