fi
AC_PATH_XTRA
- ## Autoconf claims to find X library and include dirs for us.
- ## dnl encapsulate that, such that Xaw and motif is not used when gtk is
- ## in effect
if test "$with_x11" != "no"; then
if test "$no_x" = "yes"; then
with_x11=no
TUTORIAL.ko TUTORIAL.no TUTORIAL.pl TUTORIAL.ro TUTORIAL.ru \
TUTORIAL.se TUTORIAL.th \
XKeysymDB codenames emacskeys.sco emacsstrs.sco gnuserv.README \
- gtkrc package-index.LATEST.gpg refcard.tex rgb.txt \
+ package-index.LATEST.gpg refcard.tex rgb.txt \
sample.Xdefaults sample.init.el
dist_desktop_DATA = sxemacs.desktop
"(gnuserv-edit-files '(x %s) '(",
clean_string(display));
}
-#endif
-#ifdef HAVE_GTK
- else if (display) {
- strcpy(command,
- "(gnuserv-edit-files '(gtk nil) '(");
- }
#endif
} /* !suppress_windows_system */
send_string(s, command);
(const :format "X "
:sibling-args (:help-echo "The X11 Window System")
x)
- (const :format "GTK "
- :sibling-args (:help-echo "The GTK Window System")
- gtk)
(const :format "PM "
:sibling-args (:help-echo "OS/2 Presentation Manager")
pm)
This is equivalent to the type of the device's console.
Value is `tty' for a tty device (a character-only terminal),
`x' for a device that is a screen on an X display,
-`gtk' for a device that is a GTK connection.
`ns' for a device that is a NeXTstep connection (not yet implemented),
`stream' for a stream device (which acts like a stdio stream), and
`dead' for a deleted device."
"Return the number of color cells of DEVICE, or nil if unknown."
(device-system-metric device 'num-color-cells))
-(defun make-gtk-device ()
- "Create a new GTK device."
- (make-device 'gtk nil))
-
(defun make-x-device (&optional display)
"Create a new device connected to DISPLAY."
(make-device 'x display))
event (buffer-substring-no-properties begin end))
(error "OffiX functionality not compiled in.")))
-(defun gtk-start-drag (event data &optional type)
- (interactive "esi")
- (if (featurep 'gtk)
- (declare-fboundp (gtk-start-drag-internal event data type))
- (error "GTK functionality not compiled in.")))
-
-(defun gtk-start-drag-region (event begin end)
- (interactive "_er")
- (if (featurep 'gtk)
- (declare-fboundp
- (gtk-start-drag-internal
- event (buffer-substring-no-properties begin end) "text/plain"))
- (error "GTK functionality not compiled in.")))
-
;;; dragdrop.el ends here
(face-equal-loop tty-props face1 face2 domain))
;; #### Why isn't this (console-on-window-system-p (device-console device))?
;; #### FIXME!
- ((or (eq 'x (device-type device))
- (eq 'gtk (device-type device)))
+ ((eq 'x (device-type device))
(face-equal-loop win-props face1 face2 domain))
(t t)))))
(set-face-highlight-p face t locale (cons 'tty tags))))
(lambda ()
;; handle window-system specific entries
- (when (featurep 'gtk)
- (frob-face-property face 'font 'gtk-make-font-bold
- '(gtk) locale tags))
(when (featurep 'x)
(frob-face-property face 'font 'x-make-font-bold
'(x) locale tags))
(set-face-underline-p face t locale (cons 'tty tags))))
(lambda ()
;; handle window-system specific entries
- (when (featurep 'gtk)
- (frob-face-property face 'font 'gtk-make-font-italic
- '(gtk) locale tags))
(when (featurep 'x)
(frob-face-property face 'font 'x-make-font-italic
'(x) locale tags))
(set-face-underline-p face t locale (cons 'tty tags))))
(lambda ()
;; handle window-system specific entries
- (when (featurep 'gtk)
- (frob-face-property face 'font 'gtk-make-font-bold-italic
- '(gtk) locale tags))
(when (featurep 'x)
(frob-face-property face 'font 'x-make-font-bold-italic
'(x) locale tags))
(set-face-highlight-p face nil locale (cons 'tty tags))))
(lambda ()
;; handle window-system specific entries
- (when (featurep 'gtk)
- (frob-face-property face 'font 'gtk-make-font-unbold
- '(gtk) locale tags))
(when (featurep 'x)
(frob-face-property face 'font 'x-make-font-unbold
'(x) locale tags))
(set-face-underline-p face nil locale (cons 'tty tags))))
(lambda ()
;; handle window-system specific entries
- (when (featurep 'gtk)
- (frob-face-property face 'font 'gtk-make-font-unitalic
- '(gtk) locale tags))
(when (featurep 'x)
(frob-face-property face 'font 'x-make-font-unitalic
'(x) locale tags))
;; Then do any device-specific initialization.
(cond ((eq 'x (device-type device))
(declare-fboundp (x-init-device-faces device)))
- ((eq 'gtk (device-type device))
- (declare-fboundp (gtk-init-device-faces device)))
;; Nothing to do for TTYs?
)
(or (eq 'stream (device-type device))
;; Then do any frame-specific initialization.
(cond ((eq 'x (frame-type frame))
(declare-fboundp (x-init-frame-faces frame)))
- ((eq 'gtk (frame-type frame))
- (declare-fboundp (gtk-init-frame-faces frame)))
;; Is there anything which should be done for TTY's?
)))
(init-face-from-resources face 'global))
;; Further X frobbing.
(and (featurep 'x) (declare-fboundp (x-init-global-faces)))
- (and (featurep 'gtk) (declare-fboundp (gtk-init-global-faces)))
;; for bold and the like, make the global specification be bold etc.
;; if the user didn't already specify a value. These will also be
((x default grayscale) . "gray53"))
'global)
(set-face-background-pixmap 'highlight
- '(((x default mono) . "gray1")
- ((gtk default mono) . "gray1"))
+ '(((x default mono) . "gray1"))
'global)
(set-face-background 'zmacs-region
((x default grayscale) . "gray65"))
'global)
(set-face-background-pixmap 'zmacs-region
- '(((x default mono) . "gray3")
- ((gtk default mono) . "gray3"))
+ '(((x default mono) . "gray3"))
'global)
(set-face-background 'list-mode-item-selected
'(((x default color) . "gray68")
((x default grayscale) . "gray68")
- ((x default mono) . [default foreground])
- ((gtk default color) . "gray68")
- ((gtk default grayscale) . "gray68")
- ((gtk default mono) . [default foreground]))
+ ((x default mono) . [default foreground]))
'global)
(set-face-foreground 'list-mode-item-selected
'(((x default mono) . [default background]))
((x default grayscale) . "gray65"))
'global)
(set-face-background-pixmap 'primary-selection
- '(((x default mono) . "gray3")
- ((gtk default mono) . "gray3"))
+ '(((x default mono) . "gray3"))
'global)
(set-face-background 'secondary-selection
'(((x default color) . "paleturquoise")
((x default color) . "green")
- ((x default grayscale) . "gray53")
- ((gtk default color) . "paleturquoise")
- ((gtk default color) . "green")
- ((gtk default grayscale) . "gray53"))
+ ((x default grayscale) . "gray53"))
'global)
(set-face-background-pixmap 'secondary-selection
- '(((x default mono) . "gray1")
- ((gtk default mono) . "gray1"))
+ '(((x default mono) . "gray1"))
'global)
(set-face-background 'isearch
'(((x default color) . "paleturquoise")
- ((x default color) . "green")
- ((gtk default color) . "paleturquoise")
- ((gtk default color) . "green"))
+ ((x default color) . "green"))
'global)
;; #### This should really, I mean *really*, be converted to some form
(defvar font-menu-preferred-resolution
(make-specifier-and-init 'generic '((global
- ((gtk) . "*-*")
- ((x) . "*-*"))) t)
+ ((x) . "*-*"))) t)
"Preferred horizontal and vertical font menu resolution (e.g. \"75:75\").")
(defvar font-menu-size-scaling
(make-specifier-and-init 'integer '((global
- ((gtk) . 10)
- ((x) . 10))) t)
+ ((x) . 10))) t)
"Scale factor used in defining font sizes.")
;; only call XListFonts (and parse) once per device.
(defconst font-window-system-mappings
'((x . (x-font-create-name x-font-create-object))
- (gtk . (x-font-create-name x-font-create-object))
(tty . (tty-font-create-plist tty-font-create-object)))
"An assoc list mapping device types to a list of translations.
the Unix command `tty') or nil for XEmacs' standard input
and output (usually the TTY in which XEmacs started). Only
if support for TTY's was compiled into XEmacs.
-gtk A GTK device.
ns A connection to a machine running the NeXTstep windowing
system. Not currently implemented.
pc A direct-write MS-DOS frame. Not currently implemented.
+++ /dev/null
-;;; generic-widgets.el --- Generic UI building
-
-;; Copyright (C) 2000 Free Software Foundation
-
-;; Maintainer: William Perry <wmperry@gnu.org>
-;; Keywords: extensions, dumped
-
-;; This file is part of SXEmacs.
-
-;; SXEmacs is free software: you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-
-;; SXEmacs is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-;;; Synched up with: Not in FSF
-
-;;; Commentary:
-
-;; This file is dumped with SXEmacs.
-
-(globally-declare-fboundp
- '(gtk-label-new
- gtk-widget-show-all gtk-signal-connect
- gtk-window-new gtk-container-add gtk-vbox-new gtk-hbox-new
- gtk-box-pack-start gtk-notebook-new
- gtk-notebook-set-homogeneous-tabs gtk-notebook-set-scrollable
- gtk-notebook-set-show-tabs gtk-notebook-set-tab-pos
- gtk-notebook-append-page gtk-text-new gtk-text-set-editable
- gtk-text-set-word-wrap gtk-text-set-line-wrap
- gtk-widget-set-style gtk-text-insert gtk-label-set-line-wrap
- gtk-label-set-justify gtk-radio-button-new
- gtk-radio-button-group gtk-check-button-new
- gtk-toggle-button-new gtk-button-new gtk-progress-bar-new
- gtk-progress-bar-set-orientation gtk-progress-bar-set-bar-style))
-
-(defun build-ui (ui)
- (if (null ui)
- (gtk-label-new "[empty]")
- (let ((builder-func (intern-soft (format "build-ui::%s" (car ui))))
- (widget nil))
- (if (and builder-func (fboundp builder-func))
- (progn
- (setq widget (funcall builder-func ui))
- (setcdr ui (plist-put (cdr ui) :x-internal-widget widget))
- widget)
- (error "Unknown ui element: %s" (car ui))))))
-
-(defun show-ui (ui)
- (let ((widget (plist-get (cdr ui) :x-internal-widget)))
- (if (not widget)
- (error "Attempting to show unrealized UI"))
- (gtk-widget-show-all widget)
- (gtk-signal-connect widget 'destroy
- (lambda (widget ui)
- (setcdr ui (plist-put (cdr ui) :x-internal-widget nil))) ui)))
-
-
-(defun build-ui::window (spec)
- "Create a top-level window for containing other widgets.
-Properties:
-:items list A list of child UI specs. Only the first is used.
-:type toplevel/dialog/popup What type of window to create. Window managers
- can (and usually do) treat each type differently.
-"
- (let ((plist (cdr spec))
- (window nil)
- (child nil))
- (setq window (gtk-window-new (plist-get plist :type 'toplevel))
- child (build-ui (car (plist-get plist :items))))
- (gtk-container-add window child)
- window))
-
-(defun build-ui::box (spec)
- "Create a box for containing other widgets.
-Properties:
-:items list A list of child UI specs.
-:homogeneous t/nil Whether all children are the same width/height.
-:spacing number Spacing between children.
-:orientation horizontal/vertical How the widgets are stacked.
-
-Additional properties on child widgets:
-:expand t/nil Whether the new child is to be given extra space
- allocated to box. The extra space will be divided
- evenly between all children of box that use this
- option.
-:fill t/nil Whether space given to child by the expand option is
- actually allocated to child, rather than just padding
- it. This parameter has no effect if :expand is set to
- nil. A child is always allocated the full height of a
- horizontal box and the full width of a vertical box.
- This option affects the other dimension.
-:padding number Extra padding around this widget.
-"
- (let* ((plist (cdr spec))
- (orientation (plist-get plist :orientation 'horizontal))
- (children (plist-get plist :items))
- (box nil)
- (child-widget nil)
- (child-plist nil))
- (case orientation
- (vertical (setq box (gtk-vbox-new (plist-get plist :homogeneous)
- (plist-get plist :spacing))))
- (horizontal (setq box (gtk-hbox-new (plist-get plist :homogeneous)
- (plist-get plist :spacing))))
- (otherwise (error "Unknown orientation for box: %s" orientation)))
- (mapc
- (lambda (child)
- (setq child-plist (cdr child)
- child-widget (build-ui child))
- (if (listp child-widget)
- (mapc (lambda (w)
- (gtk-box-pack-start box w
- (plist-get child-plist :expand)
- (plist-get child-plist :fill)
- (plist-get child-plist :padding))) child-widget)
- (gtk-box-pack-start box child-widget
- (plist-get child-plist :expand)
- (plist-get child-plist :fill)
- (plist-get child-plist :padding))))
- children)
- box))
-
-(defun build-ui::tab-control (spec)
- "Create a notebook widget.
-Properties:
-:items list A list of UI specs to use as notebook pages.
-:homogeneous t/nil Whether all tabs are the same width.
-:orientation top/bottom/left/right Position of tabs
-:show-tabs t/nil Show the tabs on screen?
-:scrollable t/nil Allow scrolling to view all tab widgets?
-
-Additional properties on child widgets:
-:tab-label ui A UI spec to use for the tab label.
-"
- (let* ((plist (cdr spec))
- (notebook (gtk-notebook-new))
- (children (plist-get plist :items))
- (page-counter 1)
- (label-widget nil)
- (child-widget nil)
- (child-plist nil))
- ;; Set all the properties
- (gtk-notebook-set-homogeneous-tabs notebook (plist-get plist :homogeneous))
- (gtk-notebook-set-scrollable notebook (plist-get plist :scrollable t))
- (gtk-notebook-set-show-tabs notebook (plist-get plist :show-tabs t))
- (gtk-notebook-set-tab-pos notebook (plist-get plist :orientation 'top))
-
- ;; Now fill in the tabs
- (mapc
- (lambda (child)
- (setq child-plist (cdr child)
- child-widget (build-ui child)
- label-widget (build-ui (plist-get child-plist :tab-label
- (list 'label :text (format "tab %d" page-counter))))
- page-counter (1+ page-counter))
- (gtk-notebook-append-page notebook child-widget label-widget))
- children)
- notebook))
-
-(defun build-ui::text (spec)
- "Create a multi-line text widget.
-Properties:
-:editable t/nil Whether the user can change the contents
-:word-wrap t/nil Automatic word wrapping?
-:line-wrap t/nil Automatic line wrapping?
-:text string Initial contents of the widget
-:file filename File for initial contents (takes precedence over :text)
-:face facename XEmacs face to use in the widget.
-"
- (let* ((plist (cdr spec))
- (text (gtk-text-new nil nil))
- (face (plist-get plist :face 'default))
- (info (plist-get plist :text))
- (file (plist-get plist :file)))
- (gtk-text-set-editable text (plist-get plist :editable))
- (gtk-text-set-word-wrap text (plist-get plist :word-wrap))
- (gtk-text-set-line-wrap text (plist-get plist :line-wrap))
- (gtk-widget-set-style text 'default)
-
- ;; Possible convert the file portion
- (if (and file (not (stringp file)))
- (setq file (eval file)))
-
- (if (and info (not (stringp info)))
- (setq info (eval info)))
-
- (if (and file (file-exists-p file) (file-readable-p file))
- (save-excursion
- (set-buffer (get-buffer-create " *improbable buffer name*"))
- (insert-file-contents file)
- (setq info (buffer-string))))
-
- (gtk-text-insert text
- (face-font face)
- (face-foreground face)
- (face-background face)
- info (length info))
- text))
-
-(defun build-ui::label (spec)
- "Create a label widget.
-Properties:
-:text string Text inside the label
-:face facename XEmacs face to use in the widget.
-:justification right/left/center How to justify the text.
-"
- (let* ((plist (cdr spec))
- (label (gtk-label-new (plist-get plist :text))))
- (gtk-label-set-line-wrap label t)
- (gtk-label-set-justify label (plist-get plist :justification))
- (gtk-widget-set-style label (plist-get plist :face 'default))
- label))
-
-(defun build-ui::pixmap (spec)
- "Create a multi-line text widget.
-Properties:
-:text string Text inside the label
-:face facename XEmacs face to use in the widget.
-:justification right/left/center How to justify the text.
-"
- (let* ((plist (cdr spec))
- (label (gtk-label-new (plist-get plist :text))))
- (gtk-label-set-line-wrap label t)
- (gtk-label-set-justify label (plist-get plist :justification))
- (gtk-widget-set-style label (plist-get plist :face 'default))
- label))
-
-(defun build-ui::radio-group (spec)
- "A convenience when specifying a group of radio buttons."
- (declare (special build-ui::radio-group))
- (let ((build-ui::radio-group nil))
- (mapcar 'build-ui (plist-get (cdr spec) :items))))
-
-(defun build-ui::button (spec)
- "Create a button widget.
-Properties:
-:type radio/check/toggle/nil What type of button to create.
-:text string Text in the button.
-:glyph glyph Image in the button.
-:label ui A UI spec to use for the label.
-:relief normal/half/none How to draw button edges.
-
-NOTE: Radio buttons must be in a radio-group object for them to work.
-"
- (declare (special build-ui::radio-group))
- (let* ((plist (cdr spec))
- (button nil)
- (button-type (plist-get plist :type 'normal))
- ;(label nil))
- )
- (case button-type
- (radio
- (if (not (boundp 'build-ui::radio-group))
- (error "Attempt to use a radio button outside a radio-group"))
- (setq button (gtk-radio-button-new build-ui::radio-group)
- build-ui::radio-group (gtk-radio-button-group button)))
- (check
- (setq button (gtk-check-button-new)))
- (toggle
- (setq button (gtk-toggle-button-new)))
- (normal
- (setq button (gtk-button-new)))
- (otherwise
- (error "Unknown button type: %s" button-type)))
- (gtk-container-add
- button
- (build-ui (plist-get plist :label
- (list 'label :text
- (plist-get plist
- :text (format "%s button" button-type))))))
- button))
-
-(defun build-ui::progress-gauge (spec)
- "Create a progress meter.
-Properties:
-:orientation left-to-right/right-to-left/top-to-bottom/bottom-to-top
-:type discrete/continuous
-
-"
- (let ((plist (cdr spec))
- (gauge (gtk-progress-bar-new)))
- (gtk-progress-bar-set-orientation gauge (plist-get plist :orientation 'left-to-right))
- (gtk-progress-bar-set-bar-style gauge (plist-get plist :type 'continuous))
- gauge))
-
-(provide 'generic-widgets)
-
-(when (featurep 'gtk) ; just loading this file should be OK
-(gtk-widget-show-all
- (build-ui
- '(window :type dialog
- :items ((tab-control
- :homogeneous t
- :orientation bottom
- :items ((box :orientation vertical
- :tab-label (label :text "vertical")
- :items ((label :text "Vertical")
- (progress-gauge)
- (label :text "Box stacking")))
- (box :orientation horizontal
- :spacing 10
- :items ((label :text "Horizontal box")
- (label :text "stacking")))
-
- (box :orientation vertical
- :items
- ((radio-group
- :items ((button :type radio
- :expand nil
- :fill nil
- :text "Item 1")
- (button :type radio
- :expand nil
- :fill nil
- :text "Item 2")
- (button :type radio
- :expand nil
- :fill nil
- :text "Item 3")
- (button :type radio
- :expand nil
- :fill nil)))))
- (box :orientation vertical
- :items ((button :type check
- :text "Item 1")
- (button :type check
- :text "Item 2")
- (button :type normal
- :text "Item 3")
- (button :type toggle)))
- (text :editable t
- :word-wrap t
- :file (locate-data-file "COPYING"))
- (text :editable t
- :face display-time-mail-balloon-enhance-face
- :word-wrap t
- :text "Text with a face on it")))))))
-)
(defun gnuserv-main-frame-function (type)
"Return a sensible value for the main Emacs frame."
- (if (or (eq type 'x)
- (eq type 'gtk))
+ (if (eq type 'x)
(car (frame-list))
nil))
"Return a frame if there is a frame that is truly visible, nil otherwise.
This is meant in the X sense, so it will not return frames that are on another
visual screen. Totally visible frames are preferred. If none found, return nil."
- (if (or (eq type 'x)
- (eq type 'gtk))
+ (if (eq type 'x)
(cond ((car (filtered-frame-list 'frame-totally-visible-p
(selected-device))))
((car (filtered-frame-list (lambda (frame)
\f
-(defun make-x-device-with-gtk-fallback (device)
- (or (condition-case ()
- (make-x-device device)
- (error nil))
- (make-gtk-device)))
-
;; "Execute" a client connection, called by gnuclient. This is the
;; backbone of gnuserv.el.
(defun gnuserv-edit-files (type list &rest flags)
((null dest-frame)
(case (car type)
(tty (apply 'make-tty-device (cdr type)))
- (gtk (make-gtk-device))
- (x (make-x-device-with-gtk-fallback (cadr type)))
+ (x (make-x-device (cadr type)))
(t (error "Invalid device type"))))
(t
(selected-device))))
["Sample %_init.el"
(find-file (locate-data-file "sample.init.el"))
:active (locate-data-file "sample.init.el")]
- ["Sample .%_gtkrc"
- (find-file (locate-data-file "sample.gtkrc"))
- :included (featurep 'gtk)
- :active (locate-data-file "sample.gtkrc")]
["Sample .%_Xdefaults"
(find-file (locate-data-file "sample.Xdefaults"))
:included (featurep 'x)
(defun read-color-completion-table ()
(case (device-type)
;; #### Evil device-type dependency
- ((x gtk)
+ (x
(if-fboundp #'x-read-color-completion-table
(x-read-color-completion-table)
(let ((rgb-file (locate-file "rgb.txt" x-library-search-path))
(or (valid-specifier-tag-p 'mswindows)
(define-specifier-tag 'mswindows (lambda (dev)
(eq (device-type dev) 'mswindows))))
-(or (valid-specifier-tag-p 'gtk)
- (define-specifier-tag 'gtk (lambda (dev) (eq (device-type dev) 'gtk))))
;; Add special tag for use by initialization code. Code that
;; sets up default specs should use this tag. Code that needs to
dnl creates SXE_ADD_SXEUI_{OBJ,OBJS}
__SXE_MAKE_ADDER([SXEUIX11], [libsxeuiX11])
-dnl creates SXE_ADD_SXEUI_{OBJ,OBJS}
-__SXE_MAKE_ADDER([SXEUIGTK], [libsxeuiGtk])
-
dnl SXE_ADD_STATMOD_A(foo.o ...)
AC_DEFUN([SXE_ADD_STATMOD_A], [
statmod_archives="$statmod_archives [$1]" && \
void r_alloc_reinit(void);
# endif
-#ifdef HAVE_GTK
-void console_type_create_select_gtk(void);
-#endif
-
/* Variable whose value is symbol giving operating system type. */
Lisp_Object Vsystem_type;
display_use = "x";
#endif /* HAVE_X_WINDOWS */
-#ifdef HAVE_GTK
- {
- char *dpy = getenv("DISPLAY");
- if (dpy && dpy[0])
- display_use = "gtk";
- }
-#endif
}
#endif /* HAVE_WINDOW_SYSTEM */
#ifdef HAVE_X_WINDOWS
syms_of_event_Xt();
#endif
-#ifdef HAVE_GTK
- syms_of_event_gtk();
-#endif
#ifdef HAVE_DRAGNDROP
syms_of_dragdrop();
#endif
syms_of_objects_tty();
#endif
-#ifdef HAVE_GTK
- syms_of_device_gtk();
- syms_of_frame_gtk();
- syms_of_glyphs_gtk();
- syms_of_objects_gtk();
- syms_of_ui_gtk();
- syms_of_select_gtk();
-#ifdef HAVE_DIALOGS
- syms_of_dialog_gtk();
-#endif
-#ifdef HAVE_MENUBARS
- syms_of_menubar_gtk();
-#endif
- syms_of_select_gtk();
-
-#if defined (HAVE_MENUBARS) || defined(HAVE_SCROLLBARS) || defined(HAVE_DIALOGS) || defined(HAVE_TOOLBARS)
- syms_of_gui_gtk();
-#endif
-#endif /* HAVE_GTK */
-
#ifdef HAVE_X_WINDOWS
#ifdef HAVE_BALLOON_HELP
syms_of_balloon_x();
console_type_create_redisplay_tty();
#endif
-#ifdef HAVE_GTK
- console_type_create_gtk();
- console_type_create_select_gtk();
- console_type_create_device_gtk();
- console_type_create_frame_gtk();
- console_type_create_objects_gtk();
- console_type_create_glyphs_gtk();
- console_type_create_redisplay_gtk();
-#ifdef HAVE_MENUBARS
- console_type_create_menubar_gtk();
-#endif
-#ifdef HAVE_SCROLLBARS
- console_type_create_scrollbar_gtk();
-#endif
-#ifdef HAVE_TOOLBARS
- console_type_create_toolbar_gtk();
-#endif
-#ifdef HAVE_DIALOGS
- console_type_create_dialog_gtk();
-#endif
-#endif /* HAVE_GTK */
-
#ifdef HAVE_X_WINDOWS
console_type_create_x();
console_type_create_device_x();
#ifdef HAVE_X_WINDOWS
image_instantiator_format_create_glyphs_x();
#endif /* HAVE_X_WINDOWS */
-#ifdef HAVE_GTK
- image_instantiator_format_create_glyphs_gtk();
-#endif
/* Now initialize the lstream types and associated symbols.
Other than the first function below, the functions may
vars_of_objects_tty();
#endif
-#ifdef HAVE_GTK
- vars_of_device_gtk();
-#ifdef HAVE_DIALOGS
- vars_of_dialog_gtk();
-#endif
- vars_of_event_gtk();
- vars_of_frame_gtk();
- vars_of_glyphs_gtk();
- vars_of_ui_gtk();
-#ifdef HAVE_MENUBARS
- vars_of_menubar_gtk();
-#endif
- vars_of_objects_gtk();
- vars_of_select_gtk();
-#ifdef HAVE_SCROLLBARS
- vars_of_scrollbar_gtk();
-#endif
-#if defined (HAVE_MENUBARS) || defined (HAVE_SCROLLBARS) || defined (HAVE_DIALOGS) || defined (HAVE_TOOLBARS)
- vars_of_gui_gtk();
-#endif
-#endif /* HAVE_GTK */
-
#ifdef HAVE_X_WINDOWS
#ifdef HAVE_BALLOON_HELP
vars_of_balloon_x();
/* These rely on the glyphs just created in the previous function,
and call Fadd_spec_to_specifier(), which relies on various
variables initialized above. */
-#ifdef HAVE_GTK
- complex_vars_of_glyphs_gtk();
-#endif
#ifdef HAVE_X_WINDOWS
complex_vars_of_glyphs_x();
#endif
reinit_console_type_create_x();
reinit_console_type_create_device_x();
#endif
-#ifdef HAVE_GTK
- reinit_console_type_create_gtk();
-#endif
reinit_specifier_type_create();
reinit_specifier_type_create_image();
#ifdef HAVE_X_WINDOWS
reinit_vars_of_event_Xt();
#endif
-#ifdef HAVE_GTK
- reinit_vars_of_event_gtk();
-#endif
#if defined(HAVE_TTY) && (defined (DEBUG_TTY_EVENT_STREAM) || !defined (HAVE_X_WINDOWS))
reinit_vars_of_event_tty();
#endif
reinit_vars_of_undo();
reinit_vars_of_window();
-#ifdef HAVE_GTK
- reinit_vars_of_menubar_gtk();
-#endif
-
#ifdef HAVE_X_WINDOWS
reinit_vars_of_device_x();
#ifdef HAVE_SCROLLBARS
if (!strcmp(display_use, "x"))
init_event_Xt_late();
else
-#endif
-#ifdef HAVE_GTK
- if (!strcmp(display_use, "gtk"))
- init_event_gtk_late();
- else
#endif
{
/* For TTY's, use the Xt event loop if we can; it allows
#include "ui/device.h"
#include "ui/X11/console-x.h" /* for x_event_name prototype in
format_event_object. Needs refactoring */
-#include "ui/Gtk/console-gtk.h" /* for gtk_event_name prototype. Same
- as above */
#include "extents.h" /* Just for the EXTENTP abort check... */
#define INCLUDE_EVENTS_H_PRIVATE_SPHERE
#include "events.h"
struct console *con =
XCONSOLE(CDFW_CONSOLE(e1->channel));
-#ifdef HAVE_GTK
- if (CONSOLE_GTK_P(con))
- return (!memcmp
- (&e1->event.magic.underlying_gdk_event,
- &e2->event.magic.underlying_gdk_event,
- sizeof(GdkEvent)));
-#endif
#ifdef HAVE_X_WINDOWS
if (CONSOLE_X_P(con))
return (e1->event.magic.underlying_x_event.xany.
case magic_event: {
struct console *con =
XCONSOLE(CDFW_CONSOLE(EVENT_CHANNEL(e)));
-#ifdef HAVE_GTK
- if (CONSOLE_GTK_P(con))
- return HASH2(hash,
- e->event.magic.
- underlying_gdk_event.type);
-#endif
#ifdef HAVE_X_WINDOWS
if (CONSOLE_X_P(con))
return HASH2(hash,
case magic_event: {
const char *name = NULL;
-#ifdef HAVE_GTK
- Lisp_Object console = CDFW_CONSOLE(EVENT_CHANNEL(event));
- if (CONSOLE_GTK_P(XCONSOLE(console))) {
- name = gtk_event_name(event->event.magic.
- underlying_gdk_event.
- type);
- }
-#endif
#ifdef HAVE_X_WINDOWS
Lisp_Object console = CDFW_CONSOLE(EVENT_CHANNEL(event));
if (CONSOLE_X_P(XCONSOLE(console))) {
#if defined (HAVE_X_WINDOWS) && defined(emacs) && defined(HAVE_X11_XLIB_H)
# include <X11/Xlib.h>
#endif
-#ifdef HAVE_GTK
-# include <gdk/gdk.h>
-#endif
union magic_data {
#ifdef HAVE_TTY
char underlying_tty_event;
#endif
-#if defined HAVE_GTK
- GdkEvent underlying_gdk_event;
-#endif
#ifdef HAVE_X_WINDOWS
XEvent underlying_x_event;
#endif
SYMBOL(Qgeneric);
SYMBOL(Qgeometry);
SYMBOL(Qglobal);
-SYMBOL(Qgtk);
SYMBOL(Qgutter);
SYMBOL(Qheight);
SYMBOL_KEYWORD(Q_height);
#include "ui/X11/gui-x.h"
#endif
-#ifdef HAVE_GTK
-#include "ui/Gtk/console-gtk.h"
-#include "ui/Gtk/ui-gtk.h"
-#endif
-
#ifdef FILE_CODING
#include "mule/file-coding.h"
#endif
extern Lisp_Object Qvoid_function, Qvoid_variable;
extern Lisp_Object Qwindow_live_p, Qwrong_number_of_arguments;
extern Lisp_Object Qwrong_type_argument, Qyes_or_no_p;
-extern Lisp_Object Qgtk;
#define SYMBOL(fou) extern Lisp_Object fou
#define SYMBOL_KEYWORD(la_cle_est_fou) extern Lisp_Object la_cle_est_fou
lrecord_type_devmode,
lrecord_type_case_table,
lrecord_type_emacs_ffi,
- lrecord_type_emacs_gtk_object,
- lrecord_type_emacs_gtk_boxed,
lrecord_type_ffiobject, /* 60 */
lrecord_type_evp_pkey,
lrecord_type_ssl_conn,
void init_redisplay(void);
void init_sunpro(void);
-void syms_of_device_gtk(void);
-void syms_of_dialog_gtk(void);
-void syms_of_event_gtk(void);
-void syms_of_frame_gtk(void);
-void syms_of_glyphs_gtk(void);
-void syms_of_gui_gtk(void);
-void syms_of_menubar_gtk(void);
-void syms_of_objects_gtk(void);
-void syms_of_select_gtk(void);
-void syms_of_ui_gtk(void);
-void console_type_create_gtk(void);
-void console_type_create_device_gtk(void);
-void console_type_create_frame_gtk(void);
-void console_type_create_glyphs_gtk(void);
-void console_type_create_menubar_gtk(void);
-void console_type_create_objects_gtk(void);
-void console_type_create_redisplay_gtk(void);
-void console_type_create_scrollbar_gtk(void);
-void console_type_create_toolbar_gtk(void);
-void console_type_create_dialog_gtk(void);
-void image_instantiator_format_create_glyphs_gtk(void);
-void vars_of_device_gtk(void);
-void vars_of_dialog_gtk(void);
-void vars_of_event_gtk(void);
-void vars_of_frame_gtk(void);
-void vars_of_glyphs_gtk(void);
-void vars_of_gui_gtk(void);
-void vars_of_menubar_gtk(void);
-void vars_of_objects_gtk(void);
-void vars_of_scrollbar_gtk(void);
-void vars_of_select_gtk(void);
-void vars_of_ui_gtk(void);
-void complex_vars_of_glyphs_gtk(void);
-void init_event_gtk_late(void);
-
/* Enhanced number initialization: must be done only at runtime due to complex
* interactions with the supporting libraries.
*/
#include <sys/stat.h>
-#ifdef HAVE_GTK
-/* I hate GTK */
-#undef MIN
-#undef MAX
-#endif /* HAVE_GTK */
#include <sys/param.h>
#if defined (NeXT)
if (CONSOLE_X_P(XCONSOLE(console)))
Vwindow_system = Qx;
else
-#endif
-#ifdef HAVE_GTK
- if (CONSOLE_GTK_P(XCONSOLE(console)))
- Vwindow_system = Qgtk;
- else
#endif
Vwindow_system = Qnil;
}
too many places where the abstraction is broken. Need to
fix. */
-#ifdef HAVE_GTK
-#define CONSOLE_TYPESYM_GTK_P(typesym) EQ (typesym, Qgtk)
-#else
-#define CONSOLE_TYPESYM_GTK_P(typesym) 0
-#endif
-
#ifdef HAVE_X_WINDOWS
#define CONSOLE_TYPESYM_X_P(typesym) EQ (typesym, Qx)
#else
#endif
#define CONSOLE_TYPESYM_STREAM_P(typesym) EQ (typesym, Qstream)
-#define CONSOLE_TYPESYM_WIN_P(typesym) \
- (CONSOLE_TYPESYM_GTK_P (typesym) || CONSOLE_TYPESYM_X_P (typesym))
+#define CONSOLE_TYPESYM_WIN_P(typesym) CONSOLE_TYPESYM_X_P (typesym)
#define CONSOLE_X_P(con) CONSOLE_TYPESYM_X_P (CONSOLE_TYPE (con))
#define CHECK_X_CONSOLE(z) CHECK_CONSOLE_TYPE (z, x)
#define CONCHECK_X_CONSOLE(z) CONCHECK_CONSOLE_TYPE (z, x)
-#define CONSOLE_GTK_P(con) CONSOLE_TYPESYM_GTK_P (CONSOLE_TYPE (con))
-#define CHECK_GTK_CONSOLE(z) CHECK_CONSOLE_TYPE (z, gtk)
-#define CONCHECK_GTK_CONSOLE(z) CONCHECK_CONSOLE_TYPE (z, gtk)
-
#define CONSOLE_TTY_P(con) CONSOLE_TYPESYM_TTY_P (CONSOLE_TYPE (con))
#define CHECK_TTY_CONSOLE(z) CHECK_CONSOLE_TYPE (z, tty)
#define CONCHECK_TTY_CONSOLE(z) CONCHECK_CONSOLE_TYPE (z, tty)
device-independence violations occur in faces.el. */
int first_x_device = NILP(Vdefault_x_device) && EQ(type, Qx);
#endif
-#ifdef HAVE_GTK
- int first_gtk_device = NILP(Vdefault_gtk_device) && EQ(type, Qgtk);
-#endif
GCPRO3(device, console, name);
#ifdef HAVE_X_WINDOWS
if (first_x_device)
init_global_resources(d);
-#endif
-#ifdef HAVE_GTK
- if (first_gtk_device)
- init_global_resources(d);
#endif
init_device_resources(d);
/* #### This should probably be a device method but it is time for
19.14 to go out the door. */
/* #### BILL!!! Should this deal with HAVE_MSWINDOWS as well? */
-#if defined (HAVE_X_WINDOWS) || defined (HAVE_GTK)
+#ifdef HAVE_X_WINDOWS
/* Next delete all frames which have the popup property to avoid
deleting a child after its parent. */
DEVICE_FRAME_LOOP(frmcons, d) {
#define CHECK_X_DEVICE(z) CHECK_DEVICE_TYPE (z, x)
#define CONCHECK_X_DEVICE(z) CONCHECK_DEVICE_TYPE (z, x)
-#define DEVICE_GTK_P(dev) CONSOLE_TYPESYM_GTK_P (DEVICE_TYPE (dev))
-#define CHECK_GTK_DEVICE(z) CHECK_DEVICE_TYPE (z, gtk)
-#define CONCHECK_GTK_DEVICE(z) CONCHECK_DEVICE_TYPE (z, gtk)
-
-#define DEVICE_MSWINDOWS_P(dev) CONSOLE_TYPESYM_MSWINDOWS_P (DEVICE_TYPE (dev))
-#define CHECK_MSWINDOWS_DEVICE(z) CHECK_DEVICE_TYPE (z, mswindows)
-#define CONCHECK_MSWINDOWS_DEVICE(z) CONCHECK_DEVICE_TYPE (z, mswindows)
-
#define DEVICE_TTY_P(dev) CONSOLE_TYPESYM_TTY_P (DEVICE_TYPE (dev))
#define CHECK_TTY_DEVICE(z) CHECK_DEVICE_TYPE (z, tty)
#define CONCHECK_TTY_DEVICE(z) CONCHECK_DEVICE_TYPE (z, tty)
EXFUN(Fselected_device, 1);
extern Lisp_Object Qcreate_device_hook, Qdelete_device_hook, Qgrayscale;
-extern Lisp_Object Qinit_post_tty_win, Qmono, Vdefault_x_device,
- Vdefault_gtk_device;
+extern Lisp_Object Qinit_post_tty_win, Qmono, Vdefault_x_device;
extern Lisp_Object Vdevice_class_list;
int valid_device_class_p(Lisp_Object class);
{
Lisp_Object fg_fb = Qnil, bg_fb = Qnil;
-#ifdef HAVE_GTK
- fg_fb = acons(list1(Qgtk), build_string("black"), fg_fb);
- bg_fb = acons(list1(Qgtk), build_string("white"), bg_fb);
-#endif
#ifdef HAVE_X_WINDOWS
fg_fb = acons(list1(Qx), build_string("black"), fg_fb);
bg_fb = acons(list1(Qx), build_string("white"), bg_fb);
{
Lisp_Object inst_list = Qnil;
-#if defined(HAVE_X_WINDOWS) || defined(HAVE_GTK)
+#ifdef HAVE_X_WINDOWS
/* This is kind of ugly because stephen wanted this to be CPP
** identical to the old version, at least for the initial
** checkin
};
const char **fontptr;
-#ifdef HAVE_X_WINDOWS
for (fontptr = fonts + countof(fonts) - 1; fontptr >= fonts;
fontptr--)
inst_list =
inst_list);
#endif /* HAVE_X_WINDOWS */
-#ifdef HAVE_GTK
- for (fontptr = fonts + countof(fonts) - 1; fontptr >= fonts;
- fontptr--)
- inst_list =
- Fcons(Fcons(list1(Qgtk), build_string(*fontptr)),
- inst_list);
-#endif /* HAVE_GTK */
-#endif /* HAVE_X_WINDOWS || HAVE_GTK */
-
#ifdef HAVE_TTY
inst_list = Fcons(Fcons(list1(Qtty), build_string("normal")),
inst_list);
{
Lisp_Object fg_fb = Qnil, bg_fb = Qnil;
-#ifdef HAVE_GTK
- /* We need to put something in there, or error checking gets
- #%!@#ed up before the styles are set, which override the
- fallbacks. */
- fg_fb = acons(list1(Qgtk), build_string("black"), fg_fb);
- bg_fb = acons(list1(Qgtk), build_string("Gray80"), bg_fb);
-#endif
#ifdef HAVE_X_WINDOWS
fg_fb = acons(list1(Qx), build_string("black"), fg_fb);
bg_fb = acons(list1(Qx), build_string("Gray80"), bg_fb);
#define CHECK_X_FRAME(z) CHECK_FRAME_TYPE (z, x)
#define CONCHECK_X_FRAME(z) CONCHECK_FRAME_TYPE (z, x)
-#define FRAME_GTK_P(frm) CONSOLE_TYPESYM_GTK_P (FRAME_TYPE (frm))
-#define CHECK_GTK_FRAME(z) CHECK_FRAME_TYPE (z, gtk)
-#define CONCHECK_GTK_FRAME(z) CONCHECK_FRAME_TYPE (z, gtk)
-
#define FRAME_TTY_P(frm) CONSOLE_TYPESYM_TTY_P (FRAME_TYPE (frm))
#define CHECK_TTY_FRAME(z) CHECK_FRAME_TYPE (z, tty)
#define CONCHECK_TTY_FRAME(z) CONCHECK_FRAME_TYPE (z, tty)
#include "specifier.h"
#include "window.h"
-#if defined (HAVE_XPM) && !defined (HAVE_GTK)
+#ifdef HAVE_XPM
#include <X11/xpm.h>
#endif
* XPM *
**********************************************************************/
-#ifdef HAVE_GTK
-/* Gtk has to be gratuitously different, eh? */
-Lisp_Object pixmap_to_lisp_data(Lisp_Object name, int ok_if_data_invalid)
-{
- return (make_string_from_file(name));
-}
-#else
Lisp_Object pixmap_to_lisp_data(Lisp_Object name, int ok_if_data_invalid)
{
char **data;
return Qnil; /* not reached */
}
-#endif /* !HAVE_GTK */
static void check_valid_xpm_color_symbols(Lisp_Object data)
{
#ifdef HAVE_TTY
fb = Fcons(Fcons(list1(Qtty), Qautodetect), fb);
#endif
-#ifdef HAVE_GTK
- fb = Fcons(Fcons(list1(Qgtk), Qautodetect), fb);
-#endif
#ifdef HAVE_X_WINDOWS
fb = Fcons(Fcons(list1(Qx), Qautodetect), fb);
#endif
#endif
#ifdef HAVE_X_WINDOWS
fb = Fcons(Fcons(list1(Qx), Qautodetect), fb);
-#endif
-#ifdef HAVE_GTK
- fb = Fcons(Fcons(list1(Qgtk), Qautodetect), fb);
#endif
if (!NILP(fb))
set_specifier_fallback(Vdefault_gutter_width, fb);
larger impact on their sizing. */
/* #### See if we can get away with only calling this if
max_line_len is greater than the window_char_width. */
- /* #### BILL!!! Should we do this for GTK as well? */
#if defined(HAVE_SCROLLBARS) && defined(HAVE_X_WINDOWS)
{
extern int stupid_vertical_scrollbar_drag_hack;
}
#endif /* HAVE_X_WINDOWS */
-#ifdef HAVE_GTK
- if (!strcmp(display_use, "gtk")) {
- Vwindow_system = Qgtk;
- Vinitial_window_system = Qgtk;
- return;
- }
-#endif
-
#ifdef HAVE_TTY
/* If no window system has been specified, try to use the terminal. */
if (!isatty(0)) {
#ifdef HAVE_TTY
fb = Fcons(Fcons(list1(Qtty), Qzero), fb);
#endif
-#ifdef HAVE_GTK
- fb = Fcons(Fcons(list1(Qgtk), make_int(DEFAULT_TOOLBAR_HEIGHT)), fb);
-#endif
#ifdef HAVE_X_WINDOWS
fb = Fcons(Fcons(list1(Qx), make_int(DEFAULT_TOOLBAR_HEIGHT)), fb);
#endif
#ifdef HAVE_TTY
fb = Fcons(Fcons(list1(Qtty), Qzero), fb);
#endif
-#ifdef HAVE_GTK
- fb = Fcons(Fcons(list1(Qgtk), make_int(DEFAULT_TOOLBAR_WIDTH)), fb);
-#endif
#ifdef HAVE_X_WINDOWS
fb = Fcons(Fcons(list1(Qx), make_int(DEFAULT_TOOLBAR_WIDTH)), fb);
#endif
#ifdef HAVE_X_WINDOWS
fb = Fcons(Fcons(list1(Qx), make_int(DEFAULT_TOOLBAR_BORDER_WIDTH)),
fb);
-#endif
-#ifdef HAVE_GTK
- fb = Fcons(Fcons(list1(Qgtk), make_int(DEFAULT_TOOLBAR_BORDER_WIDTH)),
- fb);
#endif
if (!NILP(fb))
set_specifier_fallback(Vdefault_toolbar_border_width, fb);
#ifdef HAVE_TTY
fb = Fcons(Fcons(list1(Qtty), make_int(1)), fb);
#endif
-#ifdef HAVE_GTK
- fb = Fcons(Fcons(list1(Qgtk), make_int(3)), fb);
-#endif
#ifdef HAVE_X_WINDOWS
fb = Fcons(Fcons(list1(Qx), make_int(3)), fb);
#endif
/* #### 3D dividers look great on MS Windows with spacing = 0.
Should not the same value be the fallback under X? - kkm */
fb = Fcons(Fcons(list1(Qx), make_int(2)), fb);
-#endif
-#ifdef HAVE_GTK
- fb = Fcons(Fcons(list1(Qgtk), Qzero), fb);
#endif
set_specifier_fallback(Vvertical_divider_spacing, fb);
}
misc_tests = frame.el glyph-test.el gutter-test.el \
redisplay-tests.el reproduce-bugs.el
-gtk_tests = gtk/event-stream-tests.el gtk/gnome-test.el \
- gtk/gtk-embedded-test.el gtk/gtk-extra-test.el gtk/gtk-test.el \
- gtk/gtk-test.glade gtk/statusbar-test.el gtk/toolbar-test.el \
- gtk/xemacs-toolbar.el gtk/UNIMPLEMENTED
mule_tests = mule/match.el
DLL_tests = DLL/dltest.c
automated_tests = automated/ase-cartesian-tests.el \
automated/tag-tests.el automated/test-harness.el \
automated/weak-tests.el automated/README
-EXTRA_DIST = $(misc_tests) $(gtk_tests) $(mule_tests) \
+EXTRA_DIST = $(misc_tests) $(mule_tests) \
$(DLL_tests) $(automated_tests)
CLEANFILES = stage1 stage2