summaryrefslogtreecommitdiffhomepage
path: root/StarsEx/UIEventTarget.h
diff options
context:
space:
mode:
Diffstat (limited to 'StarsEx/UIEventTarget.h')
-rw-r--r--StarsEx/UIEventTarget.h57
1 files changed, 57 insertions, 0 deletions
diff --git a/StarsEx/UIEventTarget.h b/StarsEx/UIEventTarget.h
new file mode 100644
index 0000000..c8acd4c
--- /dev/null
+++ b/StarsEx/UIEventTarget.h
@@ -0,0 +1,57 @@
+/* Starshatter: The Open Source Project
+ Copyright (c) 2021-2022, Starshatter: The Open Source Project Contributors
+ Copyright (c) 2011-2012, Starshatter OpenSource Distribution Contributors
+ Copyright (c) 1997-2006, Destroyer Studios LLC.
+
+ AUTHOR: John DiCamillo
+
+
+ OVERVIEW
+ ========
+ Event Target interface class
+*/
+
+#ifndef UIEventTarget_h
+#define UIEventTarget_h
+
+#include "Types.h"
+#include "Geometry.h"
+
+
+class UIEventTarget
+{
+public:
+ static const char* TYPENAME() { return "UIEventTarget"; }
+
+ virtual ~UIEventTarget() { }
+
+ int operator == (const UIEventTarget& t) const { return this == &t; }
+
+ virtual int OnMouseMove(int x, int y) { return 0; }
+ virtual int OnLButtonDown(int x, int y) { return 0; }
+ virtual int OnLButtonUp(int x, int y) { return 0; }
+ virtual int OnClick() { return 0; }
+ virtual int OnSelect() { return 0; }
+ virtual int OnRButtonDown(int x, int y) { return 0; }
+ virtual int OnRButtonUp(int x, int y) { return 0; }
+ virtual int OnMouseEnter(int x, int y) { return 0; }
+ virtual int OnMouseExit(int x, int y) { return 0; }
+ virtual int OnMouseWheel(int wheel) { return 0; }
+
+ virtual int OnKeyDown(int vk, int flags) { return 0; }
+
+ virtual void SetFocus() { }
+ virtual void KillFocus() { }
+ virtual bool HasFocus() const { return false; }
+
+ virtual bool IsEnabled() const { return true; }
+ virtual bool IsVisible() const { return true; }
+ virtual bool IsFormActive() const { return true; }
+
+ virtual Rect TargetRect() const { return Rect(); }
+
+ virtual const char* GetDescription() const { return "UIEventTarget"; }
+};
+
+
+#endif // UIEventTarget_h