summaryrefslogtreecommitdiffstats
path: root/macosx/tkMacOSXConstants.h
diff options
context:
space:
mode:
authorKevin Walzer <kw@codebykevin.com>2017-10-13 20:32:27 (GMT)
committerKevin Walzer <kw@codebykevin.com>2017-10-13 20:32:27 (GMT)
commit0ee214ef263932e7a5c7130e06c2e7cd9b9ad7c5 (patch)
tree4848a35f009ca0693c67b85744d1dcb24814ee32 /macosx/tkMacOSXConstants.h
parenta53339613596f7aecfefe6700ae92c3a1a1b759f (diff)
downloadtk-0ee214ef263932e7a5c7130e06c2e7cd9b9ad7c5.zip
tk-0ee214ef263932e7a5c7130e06c2e7cd9b9ad7c5.tar.gz
tk-0ee214ef263932e7a5c7130e06c2e7cd9b9ad7c5.tar.bz2
Add tkMacOSXConstants.h header file per Marc Culler
Diffstat (limited to 'macosx/tkMacOSXConstants.h')
-rw-r--r--macosx/tkMacOSXConstants.h95
1 files changed, 95 insertions, 0 deletions
diff --git a/macosx/tkMacOSXConstants.h b/macosx/tkMacOSXConstants.h
new file mode 100644
index 0000000..1ee85a6
--- /dev/null
+++ b/macosx/tkMacOSXConstants.h
@@ -0,0 +1,95 @@
+/*
+ * tkMacOSXConstants.h --
+ *
+ * Macros which map the names of NS constants used in the Tk code to
+ * the new name that Apple came up with for subsequent versions of the
+ * operating system. (Each new OS release seems to come with a new
+ * naming convention for the same old constants.)
+ *
+ * Copyright (c) 2017 Marc Culler
+ *
+ * See the file "license.terms" for information on usage and redistribution
+ * of this file, and for a DISCLAIMER OF ALL WARRANTIES.
+ */
+
+#ifndef _TKMACCONSTANTS
+#define _TKMACCONSTANTS
+
+/*
+ * Let's raise a glass for the project manager who improves our lives by
+ * generating deprecation warnings about pointless changes of the names
+ * of constants.
+ */
+
+#if MAC_OS_X_VERSION_MIN_REQUIRED >= 101000
+#define NSOKButton NSModalResponseOK
+#endif
+
+#if MAC_OS_X_VERSION_MIN_REQUIRED >= 101200
+#define NSAppKitDefined NSEventTypeAppKitDefined
+#define NSApplicationActivatedEventType NSEventSubtypeApplicationActivated
+#define NSApplicationDeactivatedEventType NSEventSubtypeApplicationDeactivated
+#define NSWindowExposedEventType NSEventSubtypeWindowExposed
+#define NSScreenChangedEventType NSEventSubtypeScreenChanged
+#define NSWindowMovedEventType NSEventSubtypeWindowMoved
+#define NSKeyUp NSEventTypeKeyUp
+#define NSKeyDown NSEventTypeKeyDown
+#define NSFlagsChanged NSEventTypeFlagsChanged
+#define NSLeftMouseDown NSEventTypeLeftMouseDown
+#define NSLeftMouseUp NSEventTypeLeftMouseUp
+#define NSRightMouseDown NSEventTypeRightMouseDown
+#define NSRightMouseUp NSEventTypeRightMouseUp
+#define NSLeftMouseDragged NSEventTypeLeftMouseDragged
+#define NSRightMouseDragged NSEventTypeRightMouseDragged
+#define NSMouseMoved NSEventTypeMouseMoved
+#define NSMouseEntered NSEventTypeMouseEntered
+#define NSMouseExited NSEventTypeMouseExited
+#define NSScrollWheel NSEventTypeScrollWheel
+#define NSOtherMouseDown NSEventTypeOtherMouseDown
+#define NSOtherMouseUp NSEventTypeOtherMouseUp
+#define NSOtherMouseDragged NSEventTypeOtherMouseDragged
+#define NSTabletPoint NSEventTypeTabletPoint
+#define NSTabletProximity NSEventTypeTabletProximity
+#define NSDeviceIndependentModifierFlagsMask NSEventModifierFlagDeviceIndependentFlagsMask
+#define NSCommandKeyMask NSEventModifierFlagCommand
+#define NSShiftKeyMask NSEventModifierFlagShift
+#define NSAlphaShiftKeyMask NSEventModifierFlagCapsLock
+#define NSAlternateKeyMask NSEventModifierFlagOption
+#define NSControlKeyMask NSEventModifierFlagControl
+#define NSNumericPadKeyMask NSEventModifierFlagNumericPad
+#define NSFunctionKeyMask NSEventModifierFlagFunction
+#define NSCursorUpdate NSEventTypeCursorUpdate
+#define NSTexturedBackgroundWindowMask NSWindowStyleMaskTexturedBackground
+#define NSCompositeCopy NSCompositingOperationCopy
+#define NSWarningAlertStyle NSAlertStyleWarning
+#define NSInformationalAlertStyle NSAlertStyleInformational
+#define NSCriticalAlertStyle NSAlertStyleCritical
+#define NSCenterTextAlignment NSTextAlignmentCenter
+#define NSDeviceIndependentModifierFlagsMask NSEventModifierFlagDeviceIndependentFlagsMask
+#define NSCommandKeyMask NSEventModifierFlagCommand
+#define NSShiftKeyMask NSEventModifierFlagShift
+#define NSAlphaShiftKeyMask NSEventModifierFlagCapsLock
+#define NSAlternateKeyMask NSEventModifierFlagOption
+#define NSControlKeyMask NSEventModifierFlagControl
+#define NSNumericPadKeyMask NSEventModifierFlagNumericPad
+#define NSFunctionKeyMask NSEventModifierFlagFunction
+#define NSKeyUp NSEventTypeKeyUp
+#define NSKeyDown NSEventTypeKeyDown
+#define NSFlagsChanged NSEventTypeFlagsChanged
+#define NSAlphaShiftKeyMask NSEventModifierFlagCapsLock
+#define NSShiftKeyMask NSEventModifierFlagShift
+#define NSAnyEventMask NSEventMaskAny
+#define NSTexturedBackgroundWindowMask NSWindowStyleMaskTexturedBackground
+#define NSUtilityWindowMask NSWindowStyleMaskUtilityWindow
+#define NSNonactivatingPanelMask NSWindowStyleMaskNonactivatingPanel
+#define NSDocModalWindowMask NSWindowStyleMaskDocModalWindow
+#define NSHUDWindowMask NSWindowStyleMaskHUDWindow
+#define NSTitledWindowMask NSWindowStyleMaskTitled
+#define NSClosableWindowMask NSWindowStyleMaskClosable
+#define NSResizableWindowMask NSWindowStyleMaskResizable
+#define NSUnifiedTitleAndToolbarWindowMask NSWindowStyleMaskUnifiedTitleAndToolbar
+#define NSMiniaturizableWindowMask NSWindowStyleMaskMiniaturizable
+#define NSBorderlessWindowMask NSWindowStyleMaskBorderless
+#endif
+
+#endif