/usr/include/xview/pkg.h is in xviewg-dev 3.2p1.4-28.1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 | /* @(#)pkg.h 20.22 91/03/19 SMI */
/*
* (c) Copyright 1989 Sun Microsystems, Inc. Sun design patents
* pending in the U.S. and foreign countries. See LEGAL NOTICE
* file for terms of the license.
*/
/*
* Of interest to package implementors only.
*/
#ifndef xview_pkg_DEFINED
#define xview_pkg_DEFINED
/*
***********************************************************************
* Include Files
***********************************************************************
*/
/* Don't include notify.h - it is not actually used by very many modules, and
* generates too many symbols in the libraries.
*/
#include <xview/attr.h>
#include <xview/notify.h>
#if defined(__STDC__) || defined(__cplusplus) || defined(c_plusplus)
#include <stdarg.h>
#else
#include <varargs.h>
#endif
/*
***********************************************************************
* Definitions and Macros
***********************************************************************
*/
/*
* PRIVATE #defines (for package implementors only)
*/
#ifndef MAX_NESTED_PKGS
#define MAX_NESTED_PKGS 20
#endif
/*
* Conversion macros for package implementors (public <=> private)
*/
#define XV_PRIVATE(private_type, public_type, obj) \
((private_type *)((public_type *) (obj))->private_data)
#define XV_PUBLIC(obj) \
((obj)->public_self)
/* set procs can return XV_SET_DONE if xv_super_set_avlist()
* has been called. This will end the set. Note that
* other possible set proc return values are XV_OK or an attribute.
*/
#define XV_SET_DONE ((Xv_opaque) 2)
#define Sv1_public extern /* SunView1 compatibility only; part of the
* client interface
*/
#define Xv_public extern /* Part of the client interface */
#define Xv_public_data /* Part of the client interface */
#define Xv_private extern /* Should only be used by the XView toolkit */
#define Xv_private_data /* Should only be used by the XView toolkit */
#define Pkg_private extern /* Should only be used by same pkg */
typedef struct _xview_pkg {
char *name;
Attr_attribute attr_id;
unsigned size_of_object;
struct _xview_pkg *parent_pkg;
int (*init)();
Xv_opaque (*set)();
Xv_opaque (*get)();
int (*destroy)();
Xv_object (*find)();
} Xv_pkg;
/*
***********************************************************************
* Globals
***********************************************************************
*/
/*
* PRIVATE functions for package implementors only
*/
EXTERN_FUNCTION (Xv_object xv_create_avlist, (Xv_opaque parent, Xv_pkg *pkg, Attr_attribute *avlist));
EXTERN_FUNCTION (Xv_opaque xv_set_avlist, (Xv_opaque passed_object, Attr_avlist avlist));
EXTERN_FUNCTION (Xv_opaque xv_super_set_avlist, (Xv_opaque object, Xv_pkg *pkg, Attr_avlist avlist));
EXTERN_FUNCTION (int xv_destroy_status, (Xv_object passed_object, Destroy_status status));
EXTERN_FUNCTION (int xv_check_bad_attr, (Xv_pkg *pkg, Attr_attribute attr));
EXTERN_FUNCTION (Xv_opaque xv_get_varargs, (Xv_opaque passed_object, Attr_attribute attr, va_list valist));
#endif /* ~xview_pkg_DEFINED */
|