* mainloop.py: added facility for calling select().  Also added
  embryonic facility for pseudo-modal dialogs.
* stdwinevents.py: added modifier masks for key/mouse events
* renamed exceptions in nntplib.py
* Changed string.join() to call string.joinfields() to profit of
  strop.joinfields()
diff --git a/Lib/lib-stdwin/stdwinevents.py b/Lib/lib-stdwin/stdwinevents.py
index 9f22dd9..62cf8d2 100644
--- a/Lib/lib-stdwin/stdwinevents.py
+++ b/Lib/lib-stdwin/stdwinevents.py
@@ -44,3 +44,18 @@
 WS_CLIPBOARD   = 0
 WS_PRIMARY     = 1
 WS_SECONDARY   = 2
+
+# Modifier masks in key and mouse events
+
+WM_SHIFT       = (1 << 0)
+WM_LOCK 	= (1 << 1)
+WM_CONTROL 	= (1 << 2)
+WM_META 	= (1 << 3)
+WM_OPTION 	= (1 << 4)
+WM_NUM 		= (1 << 5)
+
+WM_BUTTON1 	= (1 << 8)
+WM_BUTTON2 	= (1 << 9)
+WM_BUTTON3 	= (1 << 10)
+WM_BUTTON4 	= (1 << 11)
+WM_BUTTON5 	= (1 << 12)