File: bonobo-property.h

package info (click to toggle)
bonobo 1.0.22-2.2
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 13,412 kB
  • ctags: 5,445
  • sloc: ansic: 51,714; sh: 7,733; makefile: 1,425; yacc: 318; xml: 266; sed: 16
file content (44 lines) | stat: -rw-r--r-- 1,219 bytes parent folder | download | duplicates (2)
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
/**
 * Bonobo property object implementation.
 *
 * Author:
 *    Nat Friedman (nat@nat.org)
 *
 * Copyright 1999, 2000 Helix Code, Inc.
 */

#ifndef __BONOBO_PROPERTY_H__
#define __BONOBO_PROPERTY_H__

/*
 * Every function and data structure in this file is private and
 * should never be accessed directly by a PropertyBag user, unless
 * he is implementing his own persistence mechanism.  Otherwise,
 * no peeking.
 */

#include <bonobo/bonobo-property-bag.h>
#include <bonobo/bonobo-transient.h>

PortableServer_Servant bonobo_property_servant_new     (PortableServer_POA     poa,
							BonoboTransient        *bt,
							char                   *name,
							void                   *callback_data);
void		       bonobo_property_servant_destroy (PortableServer_Servant  servant,
							void                   *callback_data);

typedef struct {
	char			*name;
	int                      idx;
	BonoboArgType            type;
	BonoboArg               *default_value;
	char			*docstring;
	BonoboPropertyFlags	 flags;

	BonoboPropertyGetFn      get_prop;
	BonoboPropertySetFn      set_prop;
	gpointer                 user_data;
	GSList                  *listeners;
} BonoboProperty;

#endif /* ! __BONOBO_PROPERTY_H__ */