Foundation class
Inherited by most Xterminal classes
SM_VISIBLE indicates that the object is currently visible on the
terminal's screen, so it is in a drawn state
SM_CURSOR_VISIBLE indicates that the cursor is currently visible and
it's inside the object's bounds
SM_FOCUSED indicates that the object has the control at the
respective moment (only one object can have the control at a
moment, so if the user press, let's say, a key, this object will
receive the event)
SM_DRAGGING indicates that the objects is currently dragged on the
terminal's screen
SM_DISABLED indicates that the object is deactivated at the moment
SM_ACTIVE indicates that the object is active, so the user has
control over it
SM_NO_REFRESH indicates that the object's Draw() method will not
dump it's contents to the screen by calling XRefresh(), but will let
it's server to do this instead
virtual ~XObject()
virtual void CalculateBounds()
virtual void Draw()
XRect GetBounds()
virtual XEvent* GetEvent()
unsigned long GetId()
char* GetObjClass()
XPoint GetOrigin()
virtual char* GetPalette()
virtual unsigned GetPalEntry(unsigned __Index)
XPoint GetSize()
unsigned long GetState()
virtual bool GetState(unsigned long __Mask)
virtual void HandleEvent(XEvent *__Event)
virtual void MoveTo(XPoint __p)
virtual bool ProcessEvent(XEvent *__Event)
virtual void RegisterClient(XObject *__Client)
virtual void Resize(XPoint __delta)
virtual void SetPalette(char *__Pal, unsigned __PalLen)
__PalLen - new palette sizevirtual void SetState(unsigned long __Mask, bool __BoolValue)
__BoolValue - set bit if non-zero, otherwise clear itvirtual void UnregisterClient(XObject *__Client)
unsigned long Id
unsigned long State
XPoint Origin
XPoint Size
XPoint Cursor
XRect Bounds
char ObjClass[40]
char Pal[80]
unsigned PalLen
XObject* Server
ClientList Clients
bool SendMessage(unsigned long __Receiver, unsigned long __Class, long __Message)
__Class - message class
__Message - the message itself
bool SendMessage(unsigned long __Receiver, unsigned long __Class, void *__Body, unsigned long __Size)
__Class - message class
__Body - the message itself
__Size - size of __Body pointer