From cb83c00bd13b63c0d0752698e4ad441968bc04ac Mon Sep 17 00:00:00 2001 From: Adrian Robert Date: Wed, 22 Oct 2008 12:51:29 +0000 Subject: [PATCH] * lisp/version.el (emacs-version): Change '*Step' to 'NS' for consistency with other documentation. * src/nsfns.m (ns_appkit_version): New function. (x-server-version): Use it. (syms_of_nsfns): Define ns-version-string here, not nsterm.m. (x-server-vendor): Don't check_ns(). * nsterm.m (syms_of_nsterm): Drop ns-version-string. --- lisp/ChangeLog | 5 +++++ lisp/version.el | 2 +- src/ChangeLog | 9 +++++++++ src/nsfns.m | 45 +++++++++++++++++++++++++++++++++++---------- src/nsterm.m | 7 ------- 5 files changed, 50 insertions(+), 18 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 38ce13929b..6e710bb7bd 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2008-10-22 Adrian Robert + + * version.el (emacs-version): Change '*Step' to 'NS' for consistency + with other documentation. + 2008-10-22 Juanma Barranquero * replace.el (how-many): Fix typo in docstring. diff --git a/lisp/version.el b/lisp/version.el index c6d2b6ff46..e77efaf60a 100644 --- a/lisp/version.el +++ b/lisp/version.el @@ -66,7 +66,7 @@ to the system configuration; look at `system-configuration' instead." (concat ", GTK+ Version " gtk-version-string)) ((featurep 'x-toolkit) ", X toolkit") ((featurep 'ns) - (format ", *Step %s" ns-version-string)) + (format ", NS %s" ns-version-string)) (t "")) (if (and (boundp 'x-toolkit-scroll-bars) (memq x-toolkit-scroll-bars '(xaw xaw3d))) diff --git a/src/ChangeLog b/src/ChangeLog index c4d36b0912..d853d5b55a 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,12 @@ +2008-10-02 Adrian Robert + + * nsfns.m (ns_appkit_version): New function. + (x-server-version): Use it. + (syms_of_nsfns): Define ns-version-string here, not nsterm.m. + (x-server-vendor): Don't check_ns(). + + * nsterm.m (syms_of_nsterm): Drop ns-version-string. + 2008-10-22 Juanma Barranquero * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert. diff --git a/src/nsfns.m b/src/nsfns.m index f14851b698..459c058f7c 100644 --- a/src/nsfns.m +++ b/src/nsfns.m @@ -86,7 +86,10 @@ char panelOK = 0; /* Alist of elements (REGEXP . IMAGE) for images of icons associated to frames.*/ -Lisp_Object Vns_icon_type_alist; +static Lisp_Object Vns_icon_type_alist; + +/* Toolkit version support. */ +static Lisp_Object Vns_version_string; EmacsTooltip *ns_tooltip; @@ -950,6 +953,25 @@ ns_set_mouse_color (struct frame *f, Lisp_Object arg, Lisp_Object oldval) } +#define Str(x) #x +#define Xstr(x) Str(x) + +static Lisp_Object +ns_appkit_version () +{ + char tmp[80]; + +#ifdef NS_IMPL_GNUSTEP + sprintf(tmp, "gnustep-gui-%s", Xstr(GNUSTEP_GUI_VERSION)); +#elif defined(NS_IMPL_COCOA) + sprintf(tmp, "apple-appkit-%.2f", NSAppKitVersionNumber); +#else + tmp = "ns-unknown"; +#endif + return build_string (tmp); +} + + static void x_icon (struct frame *f, Lisp_Object parms) /* -------------------------------------------------------------------------- @@ -1019,6 +1041,13 @@ frame_parm_handler ns_frame_parm_handlers[] = }; + +/* ========================================================================== + + Lisp definitions + + ========================================================================== */ + DEFUN ("x-create-frame", Fx_create_frame, Sx_create_frame, 1, 1, 0, doc: /* Make a new Nextstep window, called a \"frame\" in Emacs terms. @@ -1321,12 +1350,6 @@ be shared by the new frame. */) } -/* ========================================================================== - - Lisp definitions - - ========================================================================== */ - DEFUN ("x-focus-frame", Fx_focus_frame, Sx_focus_frame, 1, 1, 0, doc: /* Set the input focus to FRAME. FRAME nil means use the selected frame. */) @@ -1575,7 +1598,6 @@ If omitted or nil, the selected frame's display is used. */) (display) Lisp_Object display; { - check_ns (); #ifdef NS_IMPL_GNUSTEP return build_string ("GNU"); #else @@ -1592,8 +1614,7 @@ See also the function `ns-server-vendor'. */) (display) Lisp_Object display; { - /* FIXME: return GUI version on GNUstep, ?? on OS X */ - return build_string ("1.0"); + return ns_appkit_version (); } @@ -2640,6 +2661,10 @@ When you miniaturize a Group, Summary or Article frame, Gnus.tiff will be used as the image of the icon representing the frame. */); Vns_icon_type_alist = Fcons (Qt, Qnil); + DEFVAR_LISP ("ns-version-string", &Vns_version_string, + doc: /* Toolkit version for NS Windowing. */); + Vns_version_string = ns_appkit_version (); + defsubr (&Sns_read_file_name); defsubr (&Sns_get_resource); defsubr (&Sns_set_resource); diff --git a/src/nsterm.m b/src/nsterm.m index 245dff4930..5cd64f1d4a 100644 --- a/src/nsterm.m +++ b/src/nsterm.m @@ -6379,13 +6379,6 @@ baseline level. The default value is nil. */); /* Tell emacs about this window system. */ Fprovide (intern ("ns"), Qnil); - /* TODO: try to move this back into lisp, ns-win.el loaded too late - right now */ - { - Lisp_Object args[3] = { intern ("ns-version-string"), build_string ("9.0"), - build_string ("NS Window system port version number.") }; - Fdefconst (Flist (3, args)); - } } -- 2.20.1