home *** CD-ROM | disk | FTP | other *** search
/ Tools / WinSN5.0Ver.iso / NETSCAP.50 / WIN1998.ZIP / ns / cmd / xfe / XfeWidgets / Xfe / Label.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-04-08  |  3.8 KB  |  105 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/Label.h>                                            */
  21. /* Description:    XfeLabel widget public header file.                        */
  22. /* Author:        Ramiro Estrugo <ramiro@netscape.com>                    */
  23. /*                                                                        */
  24. /*----------------------------------------------------------------------*/
  25.  
  26.  
  27. #ifndef _XfeLabel_h_                            /* start Label.h        */
  28. #define _XfeLabel_h_
  29.  
  30. #include <Xfe/Primitive.h>
  31.  
  32. #ifdef __cplusplus                                /* start C++            */
  33. extern "C" {
  34. #endif
  35.  
  36. /*----------------------------------------------------------------------*/
  37. /*                                                                        */
  38. /* XfeLabel class names                                                    */
  39. /*                                                                        */
  40. /*----------------------------------------------------------------------*/
  41. externalref WidgetClass xfeLabelWidgetClass;
  42.     
  43. typedef struct _XfeLabelClassRec *    XfeLabelWidgetClass;
  44. typedef struct _XfeLabelRec *        XfeLabelWidget;
  45.  
  46.  
  47. /*----------------------------------------------------------------------*/
  48. /*                                                                        */
  49. /* Label selection callback structure                                    */
  50. /*                                                                        */
  51. /*----------------------------------------------------------------------*/
  52. typedef struct
  53. {
  54.     int            reason;                    /* Reason why CB was invoked    */
  55.     XEvent *    event;                    /* Event that triggered CB        */
  56.     Boolean        selected;                /* Label selected ?                */
  57. } XfeLabelSelectionChangedCallbackStruct;
  58.  
  59. /*----------------------------------------------------------------------*/
  60. /*                                                                        */
  61. /* Manager apply function type                                            */
  62. /*                                                                        */
  63. /*----------------------------------------------------------------------*/
  64. typedef XmString    (*XfeTruncateXmStringProc)    (char *        message,
  65.                                                  char *        tag,
  66.                                                  XmFontList    font_list,
  67.                                                  int        max_width);
  68.  
  69. /*----------------------------------------------------------------------*/
  70. /*                                                                        */
  71. /* XfeLabel subclass test macro                                            */
  72. /*                                                                        */
  73. /*----------------------------------------------------------------------*/
  74. #define XfeIsLabel(w)    XtIsSubclass(w,xfeLabelWidgetClass)
  75.  
  76. /*----------------------------------------------------------------------*/
  77. /*                                                                        */
  78. /* XfeLabel public functions                                            */
  79. /*                                                                        */
  80. /*----------------------------------------------------------------------*/
  81. extern Widget
  82. XfeCreateLabel                    (Widget            pw,
  83.                                  String            name,
  84.                                  ArgList        av,
  85.                                  Cardinal        ac);
  86. /*----------------------------------------------------------------------*/
  87. extern void
  88. XfeLabelSetString                (Widget            w,
  89.                                  XmString        xm_label);
  90. /*----------------------------------------------------------------------*/
  91. extern void
  92. XfeLabelSetStringPSZ            (Widget            w,
  93.                                  String            psz_label);
  94. /*----------------------------------------------------------------------*/
  95. extern  void
  96. XfeLabelSetSelected                (Widget            w,
  97.                                  Boolean        selected);
  98. /*----------------------------------------------------------------------*/
  99.  
  100. #ifdef __cplusplus                                /* end C++                */
  101. }
  102. #endif
  103.  
  104. #endif                                            /* end Label.h            */
  105.