SUMO - Simulation of Urban MObility
Main Page
Related Pages
Modules
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
FXBaseObject.h
Go to the documentation of this file.
1
/********************************************************************************
2
* *
3
* Base of lots of non-widgets *
4
* *
5
*********************************************************************************
6
* Copyright (C) 2003 by Mathew Robertson. All Rights Reserved. *
7
*********************************************************************************
8
* This library is free software; you can redistribute it and/or *
9
* modify it under the terms of the GNU Lesser General Public *
10
* License as published by the Free Software Foundation; either *
11
* version 2.1 of the License, or (at your option) any later version. *
12
* *
13
* This library is distributed in the hope that it will be useful, *
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
16
* Lesser General Public License for more details. *
17
* *
18
* You should have received a copy of the GNU Lesser General Public *
19
* License along with this library; if not, write to the Free Software *
20
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. *
21
*********************************************************************************/
22
#ifndef FXBASEOBJECT_H
23
#define FXBASEOBJECT_H
24
25
26
// ===========================================================================
27
// included modules
28
// ===========================================================================
29
#ifdef _MSC_VER
30
#include <
windows_config.h
>
31
#else
32
#include <
config.h
>
33
#endif
34
35
#include <FXHash.h>
36
using namespace
FX;
37
#ifndef FXOBJECT_H
38
#include <FXObject.h>
39
using namespace
FX;
40
#endif
41
namespace
FXEX {
42
50
#define FXMAPALL(func) {MKUINT(MINKEY,MINTYPE),MKUINT(MAXKEY,MAXTYPE),&func}
51
55
#define FXMAPKEY(key,func) {MKUINT(key,MINTYPE),MKUINT(key,MAXTYPE),&func}
56
57
61
class
/* FXAPI // patch by Daniel Krajzewicz 24.02.2004 */
62
FXBaseObject
:
public
FXObject
{
63
FXDECLARE(
FXBaseObject
)
64
65
protected
:
67
enum
{
68
FLAG_ENABLED = 0x00000002,
// enabled
69
FLAG_UPDATE = 0x00000004,
// needs update
70
FLAG_FOCUSED = 0x00000010,
// has focus
71
FLAG_DIRTY = 0x00000020,
// dirty
72
FLAG_RECALC = 0x00000040,
// needs recalculation
73
FLAG_DEFAULT = 0x00000200,
// set to default
74
FLAG_INITIAL = 0x00000400,
// set to initial value
75
FLAG_ACTIVE = 0x00001000,
// active
76
FLAG_CHANGED = 0x00010000,
// changed
77
FLAG_READONLY = 0x10000000
// read only
78
};
79
80
private
:
81
FXApp*
app
;
// application pointer
82
83
protected
:
84
FXObject
*
target
;
// application target
85
FXSelector
message
;
// application message
86
void
*
data
;
// user data
87
FXuint
datalen
;
// length of user data
88
FXuint
flags
;
// state flags
89
FXuint
options
;
// option flags
90
91
public
:
92
enum
{
93
ID_NONE = 0,
94
ID_DELETE = 6,
95
ID_DISABLE
,
96
ID_ENABLE
,
97
ID_SETVALUE = 17,
98
ID_SETINTVALUE
,
99
ID_SETREALVALUE
,
100
ID_SETSTRINGVALUE
,
101
ID_SETINTRANGE
,
102
ID_SETREALRANGE
,
103
ID_GETINTVALUE
,
104
ID_GETREALVALUE
,
105
ID_GETSTRINGVALUE
,
106
ID_XML
,
107
ID_META
,
108
ID_COMMENT
,
109
ID_DOCUMENT
,
110
ID_TAG
,
111
ID_CONTENT
,
112
ID_LAST
113
};
114
115
public
:
116
long
onCmdEnable(
FXObject
*, FXSelector,
void
*);
117
long
onCmdDisable(
FXObject
*, FXSelector,
void
*);
118
long
onUpdate(
FXObject
*, FXSelector,
void
*);
119
120
public
:
122
FXBaseObject
(
FXObject
* tgt = NULL, FXSelector sel = 0);
123
125
FXBaseObject
(FXApp* a,
FXObject
* tgt = NULL, FXSelector sel = 0);
126
128
FXApp* getApp();
129
131
FXObject
*
getTarget
() {
132
return
target;
133
}
134
136
void
setTarget
(
FXObject
* tgt) {
137
target = tgt;
138
}
139
141
FXSelector
getSelector
() {
142
return
message;
143
}
144
146
void
setSelector
(FXSelector sel) {
147
message = sel;
148
}
149
151
void
*
getUserData
() {
152
return
data;
153
}
154
156
void
setUserData
(
void
* d) {
157
data = d;
158
}
159
161
FXuint
getUserDataLen
() {
162
return
datalen;
163
}
164
166
void
setUserDataLen
(FXuint len) {
167
datalen = len;
168
}
169
171
FXbool
isEnabled
() {
172
return
(flags & FLAG_ENABLED) != 0;
173
}
174
176
virtual
void
enable
() {
177
flags |= FLAG_ENABLED;
178
}
179
181
virtual
void
disable
() {
182
flags &= ~FLAG_ENABLED;
183
}
184
186
virtual
FXbool
isReadonly
() {
187
return
(flags & FLAG_READONLY) != 0;
188
}
189
191
virtual
void
setReadonly(FXbool mode = TRUE);
192
194
virtual
void
create
() {}
195
197
virtual
void
detach
() {}
198
200
virtual
void
destroy
() {}
201
203
virtual
void
save(FXStream& store)
const
;
204
206
virtual
void
load
(FXStream& store);
207
209
virtual
~
FXBaseObject
();
210
};
211
212
}
// namespace FXEX
213
#endif // FXBASEOBJECT_H
214
FXEX::FXBaseObject::data
void * data
Definition:
FXBaseObject.h:86
FXEX::FXBaseObject::datalen
FXuint datalen
Definition:
FXBaseObject.h:87
FXEX::FXBaseObject::getUserData
void * getUserData()
get user data
Definition:
FXBaseObject.h:151
FXEX::FXBaseObject::create
virtual void create()
create resource
Definition:
FXBaseObject.h:194
windows_config.h
FXEX::FXBaseObject::disable
virtual void disable()
disable us
Definition:
FXBaseObject.h:181
FXEX::FXBaseObject::ID_DISABLE
Definition:
FXBaseObject.h:95
FXEX::FXBaseObject::ID_ENABLE
Definition:
FXBaseObject.h:96
FXEX::FXBaseObject::ID_COMMENT
Definition:
FXBaseObject.h:108
FXEX::FXBaseObject::ID_SETINTRANGE
Definition:
FXBaseObject.h:101
config.h
FXEX::FXBaseObject::enable
virtual void enable()
enable us
Definition:
FXBaseObject.h:176
FXEX::FXBaseObject
Definition:
FXBaseObject.h:61
FXEX::FXBaseObject::ID_META
Definition:
FXBaseObject.h:107
FXEX::FXBaseObject::isEnabled
FXbool isEnabled()
are we enabled?
Definition:
FXBaseObject.h:171
FXEX::FXBaseObject::app
FXApp * app
Definition:
FXBaseObject.h:81
FXObject
FXEX::FXBaseObject::getTarget
FXObject * getTarget()
get the target
Definition:
FXBaseObject.h:131
FXEX::FXBaseObject::setUserDataLen
void setUserDataLen(FXuint len)
set the user data length
Definition:
FXBaseObject.h:166
FXEX::FXBaseObject::setUserData
void setUserData(void *d)
set user data
Definition:
FXBaseObject.h:156
FXEX::FXBaseObject::options
FXuint options
Definition:
FXBaseObject.h:89
FXEX::FXBaseObject::getSelector
FXSelector getSelector()
get the message
Definition:
FXBaseObject.h:141
FXEX::FXBaseObject::ID_GETREALVALUE
Definition:
FXBaseObject.h:104
FXEX::FXBaseObject::ID_SETREALRANGE
Definition:
FXBaseObject.h:102
FXEX::FXBaseObject::ID_TAG
Definition:
FXBaseObject.h:110
FXEX::FXBaseObject::setTarget
void setTarget(FXObject *tgt)
set the target
Definition:
FXBaseObject.h:136
FXEX::FXBaseObject::message
FXSelector message
Definition:
FXBaseObject.h:85
FXEX::FXBaseObject::ID_SETSTRINGVALUE
Definition:
FXBaseObject.h:100
FXEX::FXBaseObject::ID_SETINTVALUE
Definition:
FXBaseObject.h:98
FXEX::FXBaseObject::destroy
virtual void destroy()
destroy resource
Definition:
FXBaseObject.h:200
FXEX::FXBaseObject::ID_GETINTVALUE
Definition:
FXBaseObject.h:103
FXEX::FXBaseObject::ID_SETREALVALUE
Definition:
FXBaseObject.h:99
FXEX::FXBaseObject::setSelector
void setSelector(FXSelector sel)
set the selector
Definition:
FXBaseObject.h:146
FXEX::FXBaseObject::ID_DOCUMENT
Definition:
FXBaseObject.h:109
FXEX::FXBaseObject::flags
FXuint flags
Definition:
FXBaseObject.h:88
FXEX::FXBaseObject::ID_GETSTRINGVALUE
Definition:
FXBaseObject.h:105
FXEX::FXBaseObject::ID_CONTENT
Definition:
FXBaseObject.h:111
FXEX::FXBaseObject::target
FXObject * target
Definition:
FXBaseObject.h:84
FXEX::FXBaseObject::ID_XML
Definition:
FXBaseObject.h:106
FXEX::FXBaseObject::isReadonly
virtual FXbool isReadonly()
are we modifiable
Definition:
FXBaseObject.h:186
load
MSNet * load(OptionsCont &oc)
Definition:
sumo_main.cpp:82
FXEX::FXBaseObject::getUserDataLen
FXuint getUserDataLen()
get user daat length
Definition:
FXBaseObject.h:161
FXEX::FXBaseObject::detach
virtual void detach()
detach resource
Definition:
FXBaseObject.h:197
tmp
buildd
sumo-0.19.0+dfsg
src
utils
foxtools
FXBaseObject.h
Generated on Sun Dec 15 2013 19:38:54 for SUMO - Simulation of Urban MObility by
1.8.5