X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/699c10bd69f9395a5705b86259b957b7ed75f8ef..18ab493650d648ab8dca651ea2698861f926e895:/src/nsterm.h
diff --git a/src/nsterm.h b/src/nsterm.h
index b442973f0d..5bbc5329aa 100644
--- a/src/nsterm.h
+++ b/src/nsterm.h
@@ -26,10 +26,19 @@ along with GNU Emacs. If not, see . */
#ifdef HAVE_NS
#ifdef NS_IMPL_COCOA
+#ifndef MAC_OS_X_VERSION_10_3
+#define MAC_OS_X_VERSION_10_3 1030
+#endif
+#ifndef MAC_OS_X_VERSION_10_4
+#define MAC_OS_X_VERSION_10_4 1040
+#endif
+#ifndef MAC_OS_X_VERSION_10_5
+#define MAC_OS_X_VERSION_10_5 1050
+#endif
#ifndef MAC_OS_X_VERSION_10_6
#define MAC_OS_X_VERSION_10_6 1060
#endif
-#endif
+#endif /* NS_IMPL_COCOA */
#ifdef __OBJC__
@@ -61,7 +70,11 @@ along with GNU Emacs. If not, see . */
@class EmacsToolbar;
-@interface EmacsView : NSView /* 10.6+: NSWindowDelegate */
+#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6
+@interface EmacsView : NSView
+#else
+@interface EmacsView : NSView
+#endif
{
char *old_title;
BOOL windowClosing;
@@ -112,7 +125,11 @@ along with GNU Emacs. If not, see . */
========================================================================== */
-@interface EmacsMenu : NSMenu /* 10.6+: */
+#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6
+@interface EmacsMenu : NSMenu
+#else
+@interface EmacsMenu : NSMenu
+#endif
{
struct frame *frame;
unsigned long keyEquivModMask;
@@ -139,7 +156,11 @@ along with GNU Emacs. If not, see . */
@class EmacsImage;
-@interface EmacsToolbar : NSToolbar /* 10.6+: */
+#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6
+@interface EmacsToolbar : NSToolbar
+#else
+@interface EmacsToolbar : NSToolbar
+#endif
{
EmacsView *emacsView;
NSMutableDictionary *identifierToItem;
@@ -182,7 +203,11 @@ along with GNU Emacs. If not, see . */
- (Lisp_Object)runDialogAt: (NSPoint)p;
@end
-@interface EmacsTooltip : NSObject /* 10.6+: */
+#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6
+@interface EmacsTooltip : NSObject
+#else
+@interface EmacsTooltip : NSObject
+#endif
{
NSWindow *win;
NSTextField *textField;
@@ -391,8 +416,8 @@ struct ns_bitmap_record
/* this to map between emacs color indices and NSColor objects */
struct ns_color_table
{
- unsigned int size;
- unsigned int avail;
+ ptrdiff_t size;
+ ptrdiff_t avail;
#ifdef __OBJC__
NSColor **colors;
NSMutableSet *empty_indices;
@@ -442,7 +467,6 @@ struct nsfont_info
#endif
char bold, ital; /* convenience flags */
char synthItal;
- float voffset; /* mean of ascender/descender offsets */
XCharStruct max_bounds;
/* we compute glyph codes and metrics on-demand in blocks of 256 indexed
by hibyte, lobyte */
@@ -800,6 +824,13 @@ extern unsigned long ns_get_rgb_color (struct frame *f,
float r, float g, float b, float a);
extern NSPoint last_mouse_motion_position;
+/* From nsterm.m, needed in nsfont.m. */
+#ifdef __OBJC__
+extern void
+ns_draw_text_decoration (struct glyph_string *s, struct face *face,
+ NSColor *defaultCol, CGFloat width, CGFloat x);
+#endif
+
#ifdef NS_IMPL_GNUSTEP
extern char gnustep_base_version[]; /* version tracking */
#endif