home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / yacl-012.zip / ui / event.cxx < prev    next >
C/C++ Source or Header  |  1995-04-04  |  2KB  |  95 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6. /*
  7.  *
  8.  *          Copyright (C) 1994, M. A. Sridhar
  9.  *  
  10.  *
  11.  *     This software is Copyright M. A. Sridhar, 1994. You are free
  12.  *     to copy, modify or distribute this software  as you see fit,
  13.  *     and to use  it  for  any  purpose, provided   this copyright
  14.  *     notice and the following   disclaimer are included  with all
  15.  *     copies.
  16.  *
  17.  *                        DISCLAIMER
  18.  *
  19.  *     The author makes no warranties, either expressed or implied,
  20.  *     with respect  to  this  software, its  quality, performance,
  21.  *     merchantability, or fitness for any particular purpose. This
  22.  *     software is distributed  AS IS.  The  user of this  software
  23.  *     assumes all risks  as to its quality  and performance. In no
  24.  *     event shall the author be liable for any direct, indirect or
  25.  *     consequential damages, even if the  author has been  advised
  26.  *     as to the possibility of such damages.
  27.  *
  28.  */
  29.  
  30.  
  31.  
  32. #if defined(__GNUC__)
  33. #pragma implementation
  34. #endif
  35.  
  36.  
  37. #include "ui/event.h"
  38. #include "ui/rectangl.h"
  39. #include "ui/visualob.h"
  40.  
  41. UI_Event::UI_Event(UI_EventType t, UI_VisualObject* tg,
  42.                    UI_VisualObject* cl, void* native)
  43. {
  44.     _type = t;
  45.     _origin = tg;
  46.     if (cl == NULL)
  47.         _dest = _origin;
  48.     else
  49.         _dest = cl;
  50.     // Now assign category
  51.     if(_type < Event_FirstSoftEvent)
  52.         _category = Event_Hard;
  53.     else
  54.         _category = Event_Soft;
  55.     _nativeEvent = native;
  56.     _shiftKey = FALSE;
  57.     _ctrlKey  = FALSE;
  58.     _metaKey  = FALSE;
  59. }
  60.  
  61. UI_Event::UI_Event(const UI_Event& e)
  62. {
  63.     *this = e;
  64. }
  65.  
  66. UI_Event::~UI_Event()
  67. {
  68.     if (_nativeEvent)
  69.         delete _nativeEvent;
  70. }
  71.  
  72. void UI_Event::SetDestination(UI_VisualObject* d)
  73. {
  74.     _dest = d;
  75. }
  76.  
  77. void UI_Event::operator= (const UI_Event& e)
  78. {
  79.     _origin = e._origin;
  80.     _dest = e._dest;
  81.     _type = e._type;
  82.     _category = e._category;
  83.  
  84.     curPos = e.curPos;
  85.     duration  = e.duration;
  86.     key = e.key;
  87.  
  88.     _nativeEvent = new NativeEventStruct;
  89.     if (_nativeEvent && e._nativeEvent)
  90.         *(NativeEventStruct*) _nativeEvent = *(NativeEventStruct*)
  91.             e._nativeEvent;
  92. }
  93.       
  94.  
  95.