ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/crossedit/Attr.h
Revision: 1.2
Committed: Sun Aug 13 17:16:01 2006 UTC (17 years, 9 months ago) by elmex
Content type: text/plain
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +0 -0 lines
State: FILE REMOVED
Log Message:
Made server compile with C++.
Removed cfanim plugin and crossedit.
C++ here we come.

File Contents

# User Rev Content
1 root 1.1 #ifndef _Attr_h
2     #define _Attr_h
3    
4     #include <Defines.h>
5     #include <Cnv.h>
6    
7    
8     /**********************************************************************/
9    
10     /*** variables, index ***/
11     typedef enum {
12     I_Path, I_X, I_Y, I_Weight, I_Connect, I_Hp,
13     I_Trigger, I_Sacrifice, I_Count, I_Lockcode,
14     I_Direction, I_Rotation, I_NoPick, I_Unique,
15     I_WeightL, I_Brand, I_Maker
16     } AttrIndex;
17    
18     typedef enum _AttrType {
19     TypeString,
20     TypeToggle
21     } AttrType;
22    
23     typedef void (*AttrFunc)(object *, char *, XtPointer);
24    
25     typedef struct {
26     String label;
27     AttrType type;
28     AttrFunc getValue;
29     AttrFunc putValue;
30     } AttrDef;
31    
32     typedef struct {
33     Widget cont;
34     Widget value;
35     } AttrTags;
36    
37     struct _Attr {
38     struct _Attr *attr;
39     App app;
40     Widget w; /* not used */
41     unsigned long flags; /* editor-type T_<> */
42     int attrnumber;
43     object *op; /* object to edit */
44     Edit client;
45     Widget shell; /* popup-shell */
46     struct {
47     Widget name; /* text */
48     Widget msg; /* command */
49     Widget inv; /* command */
50     Widget exact; /* for dumbing object data */
51     Widget face; /* face of object */
52     Widget vars; /* to get list of variables; command */
53     Widget var; /* variable name of object; text */
54     Widget value; /* value of variable; text */
55     } iw;
56     struct {
57     Widget shell;
58     Widget list;
59     } vars;
60     AttrTags *tags;
61     #if 1
62     AttrDef *desc;
63     #endif
64     Boolean isup; /* is window popped up */
65     Boolean modified; /* should not used */
66     CnvBrowse dump; /* showing window for dump_object */
67     };
68    
69     /*
70     * macro inteface
71     */
72     #define AttrGetObject(self) (self->op)
73     #define AttrIsup(self) (self->isup)
74     #define AttrSetIsup(self,b) {self->isup = b;}
75    
76     /*
77     * function inteface
78     */
79     extern Attr AttrCreate ( char *name, App app, object *ob,
80     AttrDef *desc, unsigned long flags, Edit);
81     extern void AttrChange ( Attr self, object *ob, unsigned long flags, Edit);
82     extern void AttrDestroy ( Attr self );
83     extern void AttrApply ( Attr self );
84    
85     extern int GetType (object *tmp);
86    
87     extern AttrDef AttrDescription[];
88    
89     #endif /* _Attr_h */