summaryrefslogtreecommitdiff
path: root/iup/src/iup_register.h
blob: b5e6907a1b7db4c31b0db100c7f5e080887ba071 (plain)
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
/** \file
 * \brief Register the Controls
 *
 * See Copyright Notice in "iup.h"
 */
 
#ifndef __IUP_REGISTER_H 
#define __IUP_REGISTER_H

#ifdef __cplusplus
extern "C" {
#endif


/** \defgroup register Class Registration
 * \par
 * All controls are registered so the creation using IupCreate can work.
 * \par
 * See \ref iup_register.h
 * \ingroup cpi */


/** Returns a class instance from a class name. The class name must be previously registered using \ref iupRegisterClass.
 * \ingroup register */
Iclass* iupRegisterFindClass(const char* name);

/** Register a class.
 * \ingroup register */
void iupRegisterClass(Iclass* ic);
                                     
                                     
/* Register the internal classes. Called only from IupOpen. */
void iupRegisterInternalClasses(void);

/* Initializes the class registry. Called only from IupOpen. */
void iupRegisterInit(void);
void iupRegisterFinish(void);

/* Get the registered classes. Used in documentation tests. */
int iupRegisterGetClasses(char *list[], int n);


#ifdef __cplusplus
}
#endif

#endif