#define SG_FWD_DECL(name)\
class name;\
- typedef boost::shared_ptr<name> name##Ptr;\
- typedef boost::weak_ptr<name> name##WeakPtr;
+ typedef SGSharedPtr<name> name##Ptr;\
+ typedef SGWeakPtr<name> name##WeakPtr;
SG_FWD_DECL(Canvas)
SG_FWD_DECL(Element)
SG_FWD_DECL(Map)
SG_FWD_DECL(Path)
SG_FWD_DECL(Text)
+ SG_FWD_DECL(Window)
SG_FWD_DECL(Event)
- SG_FWD_DECL(EventListener)
+ SG_FWD_DECL(CustomEvent)
+ SG_FWD_DECL(DeviceEvent)
+ SG_FWD_DECL(KeyboardEvent)
SG_FWD_DECL(MouseEvent)
+
+#undef SG_FWD_DECL
+
+#define SG_FWD_DECL(name)\
+ class name;\
+ typedef boost::shared_ptr<name> name##Ptr;\
+ typedef boost::weak_ptr<name> name##WeakPtr;
+
SG_FWD_DECL(Placement)
SG_FWD_DECL(SystemAdapter)
#undef SG_FWD_DECL
+ class EventManager;
class EventVisitor;
+ struct EventTarget;
+ typedef std::deque<EventTarget> EventPropagationPath;
+
typedef std::map<std::string, const SGPropertyNode*> Style;
typedef ElementPtr (*ElementFactory)( const CanvasWeakPtr&,
const SGPropertyNode_ptr&,
typedef boost::function<Placements( SGPropertyNode*,
CanvasPtr )> PlacementFactory;
+ typedef boost::function<void(const EventPtr&)> EventListener;
+
} // namespace canvas
} // namespace simgear