1 #ifndef GUI_UTILS___EVENT__HPP
2 #define GUI_UTILS___EVENT__HPP
105 eEvent_InvalidID = -2,
106 eEvent_MinClientID = 0
121 CEvent(EEventClass ecl, TEventID eid, TEventSender* sender =
NULL);
125 EOwnershipPolicy policy, TEventSender* sender);
140 virtual bool HasAttachment(
void)
const;
187 return typeid(*this).name();
templatized IEventAttachment wrapper
CEvent - generic event implementation TODO TODO - Attachments.
object, that will be attached to event
void(*)(CSeq_entry_Handle seh, IWorkbench *wb, const CSerialObject &obj) handler
const TEventSender * GetSender(void) const
TEventSender * m_Sender
Defines unique event identity within its C++ class and Event Class.
set< CEventHandler * > m_Visited
list of handler who have seen this event already
const TEventID GetID(void) const
Inline Implementation.
TObjectType & SetData(void)
provide non-const access to the packaged data
EOwnershipPolicy m_AttPolicy
TEventID m_ID
Event class - to speed up avoiding extra dynamic casts.
EEventID
Predefining event IDs.
CEventHandler TEventSender
const TObjectType & GetData(void) const
provide const access to the packaged data
const char * TEventTypeInfo
CRef< CEvent > TEventObject
TEventTypeInfo GetTypeInfo(void)
std::type_info TAttachmentTypeInfo
const EEventClass GetEventClass(void) const
EEventClass
default event classes
const TEventRefs GetRefs(void) const
unique_ptr< IEventAttachment > m_Attachment
pointer to the class that sent this event
void SetData(const TObjectType &data)
virtual ~IEventAttachment()
int32_t Int4
4-byte (32-bit) signed integer
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
#define NCBI_GUIUTILS_EXPORT
Defines to provide correct exporting from DLLs in Windows.
Portable reference counted smart and weak pointers using CWeakRef, CRef, CObject and CObjectEx.