Mercurial > emacs
annotate src/window.h @ 68465:37d03b3298bf
The Great Cleanup
Remove circular dependencies.
mh-e.el now includes few require statements and stands alone. Other
files should need to require mh-e.el, which requires mh-loaddefs.el,
plus variable-only files such as mh-scan.el.
Remove unneeded require statements.
Remove unneeded load statements, or replace them with non-fatal
require statements.
Break out components into their own files that were often spread
between many files. As a result, many functions that are now only used
within a single file no longer need to be autoloaded.
Rearrange and provide consistent headings.
Untabify.
* mh-acros.el: Update commentary to reflect current usage. Add
autoload cookies to all macros.
(mh-require-cl): Merge docstring and comment.
(mh-do-in-xemacs): Fix typo in docstring.
(assoc-string): Move to new file mh-compat.el.
(with-mh-folder-updating, mh-in-show-buffer)
(mh-do-at-event-location, mh-seq-msgs): Move here from mh-utils.el.
(mh-iterate-on-messages-in-region, mh-iterate-on-range): Move here
from mh-seq.el.
* mh-alias.el (mh-address-mail-regexp)
(mh-goto-address-find-address-at-point): Move here from mh-utils.el.
(mh-folder-line-matches-show-buffer-p): Move here from mh-e.el.
* mh-buffers.el: Update descriptive text.
* mh-comp.el (mh-note-repl, mh-note-forw, mh-note-dist): Move to new
file mh-scan.el.
(mh-yank-hooks, mh-to-field-choices, mh-position-on-field)
(mh-letter-menu, mh-letter-mode-help-messages)
(mh-letter-buttons-init-flag, mh-letter-mode)
(mh-font-lock-field-data, mh-letter-header-end)
(mh-auto-fill-for-letter, mh-to-field, mh-to-fcc)
(mh-file-is-vcard-p, mh-insert-signature, mh-check-whom)
(mh-insert-letter, mh-extract-from-attribution, mh-yank-cur-msg)
(mh-filter-out-non-text, mh-insert-prefix-string)
(mh-current-fill-prefix, mh-open-line, mh-complete-word)
(mh-folder-expand-at-point, mh-letter-complete-function-alist)
(mh-letter-complete, mh-letter-complete-or-space)
(mh-letter-confirm-address, mh-letter-header-field-at-point)
(mh-letter-next-header-field-or-indent)
(mh-letter-next-header-field, mh-letter-previous-header-field)
(mh-letter-skipped-header-field-p)
(mh-letter-skip-leading-whitespace-in-header-field)
(mh-hidden-header-keymap)
(mh-letter-toggle-header-field-display-button)
(mh-letter-toggle-header-field-display)
(mh-letter-truncate-header-field, mh-letter-mode-map): Move to new
file mh-letter.el.
(mh-letter-mode-map, mh-sent-from-folder, mh-send-args)
(mh-pgp-support-flag, mh-x-mailer-string)
(mh-letter-header-field-regexp): Move to mh-e.el.
(mh-goto-header-field, mh-goto-header-end)
(mh-extract-from-header-value, mh-beginning-of-word): Move to
mh-utils.el.
(mh-insert-header-separator): Move to mh-comp.el.
(mh-display-completion-list-compat): Move to new file mh-compat.el.
* mh-compat.el: New file.
(assoc-string): Move here from mh-acros.el.
(mh-display-completion-list): Move here from mh-comp.el.
* mh-customize.el: Move content into mh-e.el and remove.
* mh-e.el (mh-folder-mode-map, mh-folder-seq-tool-bar-map)
(mh-folder-tool-bar-map, mh-inc-spool-map, mh-letter-mode-map)
(mh-letter-tool-bar-map, mh-search-mode-map, mh-show-mode-map)
(mh-show-seq-tool-bar-map, mh-show-tool-bar-map): All maps now
declared here so that they can be used in docstrings.
(mh-sent-from-folder, mh-sent-from-msg)
(mh-letter-header-field-regexp, mh-pgp-support-flag)
(mh-x-mailer-string): Move here from mh-comp.el.
(mh-folder-line-matches-show-buffer-p): Move to mh-alias.el.
(mh-thread-scan-line-map, mh-thread-scan-line-map-stack): Move here
from mh-seq.el.
(mh-draft-folder, mh-inbox, mh-user-path, mh-current-folder)
(mh-previous-window-config, mh-seen-list, mh-seq-list)
(mh-show-buffer, mh-showing-mode, mh-globals-hash)
(mh-show-folder-buffer, mh-mail-header-separator)
(mh-unseen-seq, mh-previous-seq, mh-page-to-next-msg-flag)
(mh-signature-separator, mh-signature-separator-regexp)
(mh-list-to-string, mh-list-to-string-1): Move here from mh-utils.el.
(mh-index-max-cmdline-args, mh-xargs, mh-quote-for-shell)
(mh-exec-cmd, mh-exec-cmd-error, mh-exec-cmd-daemon)
(mh-exec-cmd-env-daemon, mh-process-daemon, mh-exec-cmd-quiet)
(mh-exec-cmd-output)
(mh-exchange-point-and-mark-preserving-active-mark)
(mh-exec-lib-cmd-output, mh-handle-process-error): Move here from
deprecated file mh-exec.el.
(mh-path): Move here from deprecated file mh-customize.el.
(mh-sys-path, mh-variants, mh-variant-in-use, mh-progs, mh-lib)
(mh-flists-present-flag, mh-variants, mh-variant-mh-info)
(mh-variant-mu-mh-info, mh-variant-nmh-info, mh-file-command-p)
(mh-variant-set-variant, mh-variant-p, mh-profile-component)
(mh-profile-component-value, mh-defface-compat): Move here from
deprecated file mh-init.el.
(mh-goto-next-button, mh-folder-mime-action)
(mh-folder-toggle-mime-part, mh-folder-inline-mime-part)
(mh-folder-save-mime-part, mh-toggle-mime-buttons): Move to to
mh-mime.el.
(mh-scan-format-mh, mh-scan-format-nmh, mh-note-deleted)
(mh-note-refiled, mh-note-cur, mh-scan-good-msg-regexp)
(mh-scan-deleted-msg-regexp, mh-scan-refiled-msg-regexp)
(mh-scan-valid-regexp, mh-scan-cur-msg-number-regexp)
(mh-scan-date-regexp, mh-scan-rcpt-regexp, mh-scan-body-regexp)
(mh-scan-subject-regexp, mh-scan-sent-to-me-sender-regexp)
(mh-scan-cmd-note-width, mh-scan-destination-width)
(mh-scan-date-width, mh-scan-date-flag-width)
(mh-scan-from-mbox-width, mh-scan-from-mbox-sep-width)
(mh-scan-field-destination-offset)
(mh-scan-field-from-start-offset, mh-scan-field-from-end-offset)
(mh-scan-field-subject-start-offset, mh-scan-format)
(mh-msg-num-width-to-column, mh-set-cmd-note): Move to new file
mh-scan.el.
(mh-partial-folder-mode-line-annotation)
(mh-folder-font-lock-keywords, mh-folder-font-lock-subject)
(mh-generate-sequence-font-lock, mh-last-destination)
(mh-last-destination-write, mh-first-msg-num, mh-last-msg-num)
(mh-rmail, mh-nmail, mh-delete-msg, mh-delete-msg-no-motion)
(mh-execute-commands, mh-first-msg, mh-header-display)
(mh-inc-folder, mh-last-msg, mh-next-undeleted-msg)
(mh-folder-from-address, mh-prompt-for-refile-folder)
(mh-refile-msg, mh-refile-or-write-again, mh-quit, mh-page-msg)
(mh-previous-page, mh-previous-undeleted-msg)
(mh-previous-unread-msg, mh-next-button, mh-prev-button)
(mh-reset-threads-and-narrowing, mh-rescan-folder)
(mh-write-msg-to-file, mh-toggle-showing, mh-undo)
(mh-visit-folder, mh-update-sequences, mh-delete-a-msg)
(mh-refile-a-msg, mh-next-msg, mh-next-unread-msg)
(mh-set-scan-mode, mh-undo-msg, mh-make-folder)
(mh-folder-sequence-menu, mh-folder-message-menu)
(mh-folder-folder-menu, mh-remove-xemacs-horizontal-scrollbar)
(mh-write-file-functions-compat, mh-folder-mode)
(mh-restore-desktop-buffer, mh-scan-folder)
(mh-regenerate-headers, mh-generate-new-cmd-note)
(mh-get-new-mail, mh-make-folder-mode-line, mh-goto-cur-msg)
(mh-process-or-undo-commands, mh-process-commands)
(mh-update-unseen, mh-delete-scan-msgs)
(mh-outstanding-commands-p): Move to new file mh-folder.el.
(mh-mapc, mh-colors-available-p, mh-colors-in-use-p)
(mh-make-local-vars, mh-coalesce-msg-list, mh-greaterp)
(mh-lessp): Move to mh-utils.el.
(mh-parse-flist-output-line, mh-folder-size-folder)
(mh-folder-size-flist, mh-folder-size, mh-add-sequence-notation)
(mh-remove-sequence-notation, mh-remove-cur-notation)
(mh-remove-all-notation, mh-delete-seq-locally)
(mh-read-folder-sequences, mh-read-msg-list)
(mh-notate-user-sequences, mh-internal-seqs, mh-internal-seq)
(mh-valid-seq-p, mh-delete-msg-from-seq, mh-catchup)
(mh-delete-a-msg-from-seq, mh-undefine-sequence)
(mh-define-sequence, mh-seq-containing-msg): Move to mh-seq.el.
(mh-xemacs-flag)
(mh-customize, mh-e, mh-alias, mh-folder, mh-folder-selection)
(mh-identity, mh-inc, mh-junk, mh-letter, mh-ranges)
(mh-scan-line-formats, mh-search, mh-sending-mail, mh-sequences)
(mh-show, mh-speedbar, mh-thread, mh-tool-bar, mh-hooks)
(mh-faces, mh-alias-completion-ignore-case-flag)
(mh-alias-expand-aliases-flag, mh-alias-flash-on-comma)
(mh-alias-insert-file, mh-alias-insertion-location)
(mh-alias-local-users, mh-alias-local-users-prefix)
(mh-alias-passwd-gecos-comma-separator-flag)
(mh-new-messages-folders, mh-ticked-messages-folders)
(mh-large-folder, mh-recenter-summary-flag)
(mh-recursive-folders-flag, mh-sortm-args)
(mh-default-folder-for-message-function, mh-default-folder-list)
(mh-default-folder-must-exist-flag, mh-default-folder-prefix)
(mh-identity-list, mh-auto-fields-list)
(mh-auto-fields-prompt-flag, mh-identity-default)
(mh-identity-handlers, mh-inc-prog, mh-inc-spool-list)
(mh-junk-choice, mh-junk-function-alist, mh-junk-choose)
(mh-junk-background, mh-junk-disposition, mh-junk-program)
(mh-compose-insertion, mh-compose-skipped-header-fields)
(mh-compose-space-does-completion-flag)
(mh-delete-yanked-msg-window-flag)
(mh-extract-from-attribution-verb, mh-ins-buf-prefix)
(mh-letter-complete-function, mh-letter-fill-column)
(mh-mml-method-default, mh-signature-file-name)
(mh-signature-separator-flag, mh-x-face-file, mh-yank-behavior)
(mh-interpret-number-as-range-flag, mh-adaptive-cmd-note-flag)
(mh-scan-format-file-check, mh-scan-format-file)
(mh-adaptive-cmd-note-flag-check, mh-scan-prog)
(mh-search-program, mh-compose-forward-as-mime-flag)
(mh-compose-letter-function, mh-compose-prompt-flag)
(mh-forward-subject-format, mh-insert-x-mailer-flag)
(mh-redist-full-contents-flag, mh-reply-default-reply-to)
(mh-reply-show-message-flag, mh-refile-preserves-sequences-flag)
(mh-tick-seq, mh-update-sequences-after-mh-show-flag)
(mh-bury-show-buffer-flag, mh-clean-message-header-flag)
(mh-decode-mime-flag, mh-display-buttons-for-alternatives-flag)
(mh-display-buttons-for-inline-parts-flag)
(mh-do-not-confirm-flag, mh-fetch-x-image-url)
(mh-graphical-smileys-flag, mh-graphical-emphasis-flag)
(mh-highlight-citation-style)
(mh-invisible-header-fields-internal)
(mh-delay-invisible-header-generation-flag)
(mh-invisible-header-fields, mh-invisible-header-fields-default)
(mh-invisible-header-fields-compiled, mh-invisible-headers)
(mh-lpr-command-format, mh-max-inline-image-height)
(mh-max-inline-image-width, mh-mhl-format-file)
(mh-mime-save-parts-default-directory, mh-print-background-flag)
(mh-show-maximum-size, mh-show-use-goto-addr-flag)
(mh-show-use-xface-flag, mh-store-default-directory)
(mh-summary-height, mh-speed-update-interval)
(mh-show-threads-flag, mh-tool-bar-search-function)
(mh-after-commands-processed-hook, mh-alias-reloaded-hook)
(mh-before-commands-processed-hook, mh-before-quit-hook)
(mh-before-send-letter-hook, mh-delete-msg-hook)
(mh-find-path-hook, mh-folder-mode-hook, mh-forward-hook)
(mh-inc-folder-hook, mh-insert-signature-hook)
(mh-kill-folder-suppress-prompt-hooks, mh-letter-mode-hook)
(mh-mh-to-mime-hook, mh-search-mode-hook, mh-quit-hook)
(mh-refile-msg-hook, mh-show-hook, mh-show-mode-hook)
(mh-unseen-updated-hook, mh-min-colors-defined-flag)
(mh-folder-address, mh-folder-body)
(mh-folder-cur-msg-number, mh-folder-date, mh-folder-deleted)
(mh-folder-followup, mh-folder-msg-number, mh-folder-refiled)
(mh-folder-sent-to-me-hint, mh-folder-sent-to-me-sender)
(mh-folder-subject, mh-folder-tick, mh-folder-to)
(mh-search-folder, mh-letter-header-field, mh-show-cc)
(mh-show-date, mh-show-from, mh-show-header, mh-show-pgg-bad)
(mh-show-pgg-good, mh-show-pgg-unknown, mh-show-signature)
(mh-show-subject, mh-show-to, mh-show-xface, mh-speedbar-folder)
(mh-speedbar-folder-with-unseen-messages)
(mh-speedbar-selected-folder)
(mh-speedbar-selected-folder-with-unseen-messages): Move here from
deprecated file mh-customize.el.
* mh-exec.el: Move content into mh-e.el and remove.
* mh-folder.el: New file. Contains mh-folder-mode from mh-e.el
* mh-funcs.el (mh-note-copied, mh-note-printed): Move to new file
mh-scan.el.
(mh-ephem-message, mh-help, mh-prefix-help): Move to mh-utils.el.
* mh-gnus.el (mm-uu-dissect-text-parts): Add.
(mh-mail-abbrev-make-syntax-table): Move to mh-utils.el and rename to
mail-abbrev-make-syntax-table.
* mh-identity.el (mh-identity-menu): New variable for existing menu.
(mh-identity-make-menu-no-autoload): New alias for
mh-identity-make-menu which can be called from mh-e.el.
(mh-identity-list-set): Move to mh-e.el.
(mh-identity-add-menu): New function
(mh-insert-identity): Add optional argument maybe-insert so that local
variable mh-identity-local does not have to be visible.
(mh-identity-handler-default):
* mh-inc.el (mh-inc-spool-map): Move declaration to mh-e.el (with rest
of keymaps). Update key binding for ? to call mh-help with help
messages in new argument.
(mh-inc-spool-make-no-autoload): New alias for mh-inc-spool-make which
can be called from mh-e.el.
(mh-inc-spool-list-set): Simplify update of mh-inc-spool-map-help.
* mh-init.el: Move content into mh-e.el and remove.
* mh-junk.el: Update requires, untabify, and add mh-autoload cookies.
* mh-letter.el: New file. Contains mh-letter-mode from mh-comp.el.
* mh-limit.el: New file. Contains display limit commands from
mh-mime.el.
* mh-mime.el: Rearrange for consistency with other files.
(mh-buffer-data, mh-mm-inline-media-tests): Move here from
mh-utils.el.
(mh-folder-inline-mime-part, mh-folder-save-mime-part)
(mh-folder-toggle-mime-part, mh-toggle-mime-buttons)
(mh-goto-next-button): Move here from mh-e.el.
* mh-print.el: Rearrange for consistency with other files.
* mh-scan.el: New file. Contains scan line constants and utilities
from XXX, mh-funcs, mh-utils.el.
* mh-search.el: Rearrange for consistency with other files.
(mh-search-mode-map): Drop C-c C-f {dr} bindings since these fields
which don't exist in the saved header. Replace C-c C-f f with C-c C-f
m per mail-mode consistency.
(mh-search-mode): Use mh-set-help instead of setting mh-help-messages.
* mh-seq.el (mh-thread-message, mh-thread-container)
(mh-thread-id-hash, mh-thread-subject-hash, mh-thread-id-table)
(mh-thread-id-index-map, mh-thread-index-id-map)
(mh-thread-scan-line-map, mh-thread-scan-line-map-stack)
(mh-thread-subject-container-hash, mh-thread-duplicates)
(mh-thread-history, mh-thread-body-width)
(mh-thread-find-msg-subject mh-thread-initialize-hash)
(mh-thread-initialize, mh-thread-id-container)
(mh-thread-remove-parent-link, mh-thread-add-link)
(mh-thread-ancestor-p, mh-thread-get-message-container)
(mh-thread-get-message, mh-thread-canonicalize-id)
(mh-thread-prune-subject, mh-thread-container-subject)
(mh-thread-rewind-pruning, mh-thread-prune-containers)
(mh-thread-sort-containers, mh-thread-group-by-subject)
(mh-thread-process-in-reply-to, mh-thread-set-tables)
(mh-thread-update-id-index-maps, mh-thread-generate)
(mh-thread-inc, mh-thread-generate-scan-lines)
(mh-thread-parse-scan-line, mh-thread-update-scan-line-map)
(mh-thread-add-spaces, mh-thread-print-scan-lines)
(mh-thread-folder, mh-toggle-threads, mh-thread-forget-message)
(mh-thread-current-indentation-level, mh-thread-next-sibling)
(mh-thread-previous-sibling, mh-thread-immediate-ancestor)
(mh-thread-ancestor, mh-thread-find-children)
(mh-message-id-regexp, mh-thread-delete, mh-thread-refile): Move to
new file mh-thread.el.
(mh-subject-to-sequence, mh-subject-to-sequence-unthreaded)
(mh-subject-to-sequence-threaded, mh-edit-pick-expr)
(mh-pick-args-list, mh-narrow-to-subject, mh-narrow-to-from)
(mh-narrow-to-cc, mh-narrow-to-to, mh-narrow-to-header-field)
(mh-current-message-header-field, mh-narrow-to-range)
(mh-delete-subject, mh-delete-subject-or-thread): Move to new file
mh-limit.el.
(mh-iterate-on-messages-in-region, mh-iterate-on-range): Move to
mh-acros.el.
(mh-internal-seqs, mh-catchup, mh-delete-msg-from-seq)
(mh-internal-seq, mh-valid-seq-p, mh-seq-containing-msg)
(mh-define-sequence, mh-undefine-sequence)
(mh-delete-a-msg-from-seq, mh-delete-seq-locally)
(mh-folder-size, mh-folder-size-flist, mh-folder-size-folder)
(mh-parse-flist-output-line, mh-read-folder-sequences)
(mh-read-msg-list, mh-notate-user-sequences)
(mh-remove-cur-notation, mh-add-sequence-notation)
(mh-remove-sequence-notation, mh-remove-all-notation): Move here from
mh-e.el.
(mh-make-seq, mh-seq-name, mh-find-seq, mh-seq-to-msgs)
(mh-add-msgs-to-seq, mh-notate): Move here from mh-utils.el.
* mh-show.el: New file. Contains mh-show-mode from mh-utils.el.
* mh-speed.el: Rearrange for consistency with other files.
* mh-thread.el: New file. Contains threading code from mh-seq.el.
* mh-tool-bar.el: New file. Contains tool bar creation code from
deprecated file mh-customize.el.
* mh-utils.el (recursive-load-depth-limit): Remove setting. No longer
needed.
(mh-scan-msg-number-regexp, mh-scan-msg-overflow-regexp)
(mh-scan-msg-format-regexp, mh-scan-msg-format-string)
(mh-scan-msg-search-regexp, mh-cmd-note, mh-note-seq)
(mh-update-scan-format, mh-msg-num-width): Move to new file
mh-scan.el.
(mh-show-buffer-mode-line-buffer-id, mh-letter-header-font-lock)
(mh-header-field-font-lock, mh-header-to-font-lock)
(mh-header-cc-font-lock, mh-header-subject-font-lock)
(mh-show-font-lock-keywords)
(mh-show-font-lock-keywords-with-cite)
(mh-show-font-lock-fontify-region)
(mh-gnus-article-highlight-citation, mh-showing-with-headers)
(mh-start-of-uncleaned-message, mh-invalidate-show-buffer)
(mh-unvisit-file, mh-defun-show-buffer, mh-show-mode-map)
(mh-show-sequence-menu, mh-show-message-menu)
(mh-show-folder-menu, mh-show-mode, mh-show-addr)
(mh-maybe-show, mh-show, mh-show-msg, mh-show-unquote-From)
(mh-msg-folder, mh-display-msg, mh-clean-msg-header): Move to new file
mh-show.el.
(mh-mail-header-separator, mh-signature-separator-regexp)
(mh-signature-separator, mh-globals-hash, mh-user-path)
(mh-draft-folder, mh-unseen-seq, mh-previous-seq, mh-inbox)
(mh-previous-window-config, mh-current-folder mh-show-buffer)
(mh-showing-mode, mh-show-mode-map, mh-show-folder-buffer)
(mh-showing-mode, mh-seq-list, mh-seen-list, mh-summary-height)
(mh-list-to-string, mh-list-to-string-1): Move to mh-e.el.
(mh-buffer-data, mh-mm-inline-media-tests): Move to mh-mime.el.
(mh-address-mail-regexp, mh-goto-address-find-address-at-point): Move
to mh-alias.el.
(mh-letter-font-lock-keywords): Move to new file mh-letter.el.
(mh-folder-filename, mh-msg-count, mh-recenter, mh-msg-filename)
(mh-show-mouse, mh-modify, mh-goto-msg, mh-set-folder-modified-p):
Move to new file mh-folder.el.
(with-mh-folder-updating, mh-in-show-buffer)
(mh-do-at-event-location, mh-seq-msgs): Moved to mh-acros.el.
(mh-make-seq, mh-seq-name, mh-notate, mh-find-seq)
(mh-seq-to-msgs, mh-add-msgs-to-seq, mh-canonicalize-sequence): Moved
to mh-seq.el.
(mh-show-xface-function, mh-uncompface-executable, mh-face-to-png)
(mh-uncompface, mh-icontopbm, mh-face-foreground-compat)
(mh-face-background-compat, mh-face-display-function)
(mh-show-xface, mh-picon-directory-list)
(mh-picon-existing-directory-list)
(mh-picon-cache, mh-picon-image-types)
(mh-picon-set-directory-list, mh-picon-get-image)
(mh-picon-file-contents, mh-picon-generate-path)
(mh-x-image-cache-directory, mh-x-image-scaling-function)
(mh-wget-executable, mh-wget-choice, mh-wget-option)
(mh-x-image-temp-file, mh-x-image-url, mh-x-image-marker)
(mh-x-image-url-cache-file, mh-x-image-scale-with-pnm)
(mh-x-image-scale-with-convert)
(url-unreserved-chars, url-hexify-string)
(mh-x-image-url-cache-canonicalize)
(mh-x-image-set-download-state, mh-x-image-get-download-state)
(mh-x-image-url-fetch-image, mh-x-image-display)
(mh-x-image-scale-and-display, mh-x-image-url-sane-p)
(mh-x-image-url-display): Move to new file mh-xface.el.
(mh-logo-display): Call mh-image-load-path.
(mh-find-path-run, mh-find-path): Move here from deprecated file
mh-init.el.
(mh-help-messages): Now an alist of modes to an alist of messages.
(mh-set-help): New function used to set mh-help-messages
(mh-help): Adjust for new format of mh-help-messages. Add
help-messages argument.
(mh-prefix-help): Refactor to use mh-help.
(mh-coalesce-msg-list, mh-greaterp, mh-lessp): Move here from mh-e.el.
(mh-clear-sub-folders-cache): New function added to avoid exposing
mh-sub-folders-cache variable.
* mh-xface.el: New file. Contains X-Face and Face header field display
routines from mh-utils.el.
author | Bill Wohler <wohler@newt.com> |
---|---|
date | Sun, 29 Jan 2006 19:34:57 +0000 |
parents | ab3fdc2bada6 |
children | 3d45362f1d38 55e22205ba88 7beb78bc1f8e |
rev | line source |
---|---|
361 | 1 /* Window definitions for GNU Emacs. |
64770
a0d1312ede66
Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
64084
diff
changeset
|
2 Copyright (C) 1985, 1986, 1993, 1995, 1997, 1998, 1999, 2000, 2001, |
67995
ab3fdc2bada6
(Fwindow_minibuffer_p): Declare (for use in minibuf.c).
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
65603
diff
changeset
|
3 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. |
361 | 4 |
5 This file is part of GNU Emacs. | |
6 | |
7 GNU Emacs is free software; you can redistribute it and/or modify | |
8 it under the terms of the GNU General Public License as published by | |
732 | 9 the Free Software Foundation; either version 2, or (at your option) |
361 | 10 any later version. |
11 | |
12 GNU Emacs is distributed in the hope that it will be useful, | |
13 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 GNU General Public License for more details. | |
16 | |
17 You should have received a copy of the GNU General Public License | |
18 along with GNU Emacs; see the file COPYING. If not, write to | |
64084 | 19 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
20 Boston, MA 02110-1301, USA. */ | |
361 | 21 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
22 #ifndef WINDOW_H_INCLUDED |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
23 #define WINDOW_H_INCLUDED |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
24 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
25 #include "dispextern.h" |
361 | 26 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
27 extern Lisp_Object Qleft, Qright; |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
28 |
361 | 29 /* Windows are allocated as if they were vectors, but then the |
30 Lisp data type is changed to Lisp_Window. They are garbage | |
31 collected along with the vectors. | |
32 | |
33 All windows in use are arranged into a tree, with pointers up and down. | |
34 | |
35 Windows that are leaves of the tree are actually displayed | |
36 and show the contents of buffers. Windows that are not leaves | |
37 are used for representing the way groups of leaf windows are | |
769 | 38 arranged on the frame. Leaf windows never become non-leaves. |
361 | 39 They are deleted only by calling delete-window on them (but |
40 this can be done implicitly). Combination windows can be created | |
41 and deleted at any time. | |
42 | |
43 A leaf window has a non-nil buffer field, and also | |
44 has markers in its start and pointm fields. Non-leaf windows | |
45 have nil in these fields. | |
46 | |
47 Non-leaf windows are either vertical or horizontal combinations. | |
48 | |
769 | 49 A vertical combination window has children that are arranged on the frame |
361 | 50 one above the next. Its vchild field points to the uppermost child. |
51 The parent field of each of the children points to the vertical | |
52 combination window. The next field of each child points to the | |
53 child below it, or is nil for the lowest child. The prev field | |
54 of each child points to the child above it, or is nil for the | |
55 highest child. | |
56 | |
57 A horizontal combination window has children that are side by side. | |
58 Its hchild field points to the leftmost child. In each child | |
59 the next field points to the child to the right and the prev field | |
60 points to the child to the left. | |
61 | |
62 The children of a vertical combination window may be leaf windows | |
63 or horizontal combination windows. The children of a horizontal | |
64 combination window may be leaf windows or vertical combination windows. | |
65 | |
66 At the top of the tree are two windows which have nil as parent. | |
67 The second of these is minibuf_window. The first one manages all | |
769 | 68 the frame area that is not minibuffer, and is called the root window. |
361 | 69 Different windows can be the root at different times; |
70 initially the root window is a leaf window, but if more windows | |
71 are created then that leaf window ceases to be root and a newly | |
72 made combination window becomes root instead. | |
73 | |
998 | 74 In any case, on screens which have an ordinary window and a |
75 minibuffer, prev of the minibuf window is the root window and next of | |
76 the root window is the minibuf window. On minibufferless screens or | |
77 minibuffer-only screens, the root window and the minibuffer window are | |
1445
3b0906e2b82c
* window.h (struct window): Doc fix.
Jim Blandy <jimb@redhat.com>
parents:
998
diff
changeset
|
78 one and the same, so its prev and next members are nil. |
361 | 79 |
1445
3b0906e2b82c
* window.h (struct window): Doc fix.
Jim Blandy <jimb@redhat.com>
parents:
998
diff
changeset
|
80 A dead window has its buffer, hchild, and vchild windows all nil. */ |
361 | 81 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
82 struct cursor_pos |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
83 { |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
84 /* Pixel position. These are always window relative. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
85 int x, y; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
86 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
87 /* Glyph matrix position. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
88 int hpos, vpos; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
89 }; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
90 |
361 | 91 struct window |
92 { | |
93 /* The first two fields are really the header of a vector */ | |
94 /* The window code does not refer to them. */ | |
8833
e2b9f8616738
(struct window): Use EMACS_INT.
Richard M. Stallman <rms@gnu.org>
parents:
7950
diff
changeset
|
95 EMACS_INT size; |
361 | 96 struct Lisp_Vector *vec_next; |
769 | 97 /* The frame this window is on. */ |
98 Lisp_Object frame; | |
361 | 99 /* t if this window is a minibuffer window. */ |
100 Lisp_Object mini_p; | |
101 /* Following child (to right or down) at same level of tree */ | |
102 Lisp_Object next; | |
103 /* Preceding child (to left or up) at same level of tree */ | |
104 Lisp_Object prev; | |
105 /* First child of this window. */ | |
106 /* vchild is used if this is a vertical combination, | |
107 hchild if this is a horizontal combination. */ | |
108 Lisp_Object hchild, vchild; | |
109 /* The window this one is a child of. */ | |
110 Lisp_Object parent; | |
111 /* The upper left corner coordinates of this window, | |
769 | 112 as integers relative to upper left corner of frame = 0, 0 */ |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
113 Lisp_Object left_col; |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
114 Lisp_Object top_line; |
361 | 115 /* The size of the window */ |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
116 Lisp_Object total_lines; |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
117 Lisp_Object total_cols; |
361 | 118 /* The buffer displayed in this window */ |
119 /* Of the fields vchild, hchild and buffer, only one is non-nil. */ | |
120 Lisp_Object buffer; | |
121 /* A marker pointing to where in the text to start displaying */ | |
122 Lisp_Object start; | |
123 /* A marker pointing to where in the text point is in this window, | |
124 used only when the window is not selected. | |
125 This exists so that when multiple windows show one buffer | |
126 each one can have its own value of point. */ | |
127 Lisp_Object pointm; | |
128 /* Non-nil means next redisplay must use the value of start | |
129 set up for it in advance. Set by scrolling commands. */ | |
130 Lisp_Object force_start; | |
16553
39aa8dd49637
(struct window): New field optional_new_start.
Richard M. Stallman <rms@gnu.org>
parents:
16264
diff
changeset
|
131 /* Non-nil means we have explicitly changed the value of start, |
26249
344d89e485f2
Extend comment for optional_new_start.
Gerd Moellmann <gerd@gnu.org>
parents:
25793
diff
changeset
|
132 but that the next redisplay is not obliged to use the new value. |
344d89e485f2
Extend comment for optional_new_start.
Gerd Moellmann <gerd@gnu.org>
parents:
25793
diff
changeset
|
133 This is used in Fdelete_other_windows to force a call to |
46107 | 134 Vwindow_scroll_functions; also by Frecenter with argument. */ |
16553
39aa8dd49637
(struct window): New field optional_new_start.
Richard M. Stallman <rms@gnu.org>
parents:
16264
diff
changeset
|
135 Lisp_Object optional_new_start; |
361 | 136 /* Number of columns display within the window is scrolled to the left. */ |
137 Lisp_Object hscroll; | |
34746
10539ef3d8e8
(struct window): New member min_hscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
34497
diff
changeset
|
138 /* Minimum hscroll for automatic hscrolling. This is the value |
10539ef3d8e8
(struct window): New member min_hscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
34497
diff
changeset
|
139 the user has set, by set-window-hscroll for example. */ |
10539ef3d8e8
(struct window): New member min_hscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
34497
diff
changeset
|
140 Lisp_Object min_hscroll; |
361 | 141 /* Number saying how recently window was selected */ |
142 Lisp_Object use_time; | |
143 /* Unique number of window assigned when it was created */ | |
144 Lisp_Object sequence_number; | |
145 /* No permanent meaning; used by save-window-excursion's bookkeeping */ | |
146 Lisp_Object temslot; | |
147 /* text.modified of displayed buffer as of last time display completed */ | |
148 Lisp_Object last_modified; | |
16192
b67b2e8eacb3
(struct window): New field last_overlay_modified.
Richard M. Stallman <rms@gnu.org>
parents:
15542
diff
changeset
|
149 /* BUF_OVERLAY_MODIFIED of displayed buffer as of last complete update. */ |
b67b2e8eacb3
(struct window): New field last_overlay_modified.
Richard M. Stallman <rms@gnu.org>
parents:
15542
diff
changeset
|
150 Lisp_Object last_overlay_modified; |
361 | 151 /* Value of point at that time */ |
152 Lisp_Object last_point; | |
15542
f57ee448e79e
(struct window): New field, last_had_star.
Richard M. Stallman <rms@gnu.org>
parents:
14186
diff
changeset
|
153 /* Non-nil if the buffer was "modified" when the window |
f57ee448e79e
(struct window): New field, last_had_star.
Richard M. Stallman <rms@gnu.org>
parents:
14186
diff
changeset
|
154 was last updated. */ |
f57ee448e79e
(struct window): New field, last_had_star.
Richard M. Stallman <rms@gnu.org>
parents:
14186
diff
changeset
|
155 Lisp_Object last_had_star; |
1994
73ce9dd21093
Use the term `scroll bar', instead of `scrollbar'.
Jim Blandy <jimb@redhat.com>
parents:
1872
diff
changeset
|
156 /* This window's vertical scroll bar. This field is only for use |
1784
11f62e53acff
Make scrollbar structures into lisp objects, so that they can be
Jim Blandy <jimb@redhat.com>
parents:
1717
diff
changeset
|
157 by the window-system-dependent code which implements the |
1994
73ce9dd21093
Use the term `scroll bar', instead of `scrollbar'.
Jim Blandy <jimb@redhat.com>
parents:
1872
diff
changeset
|
158 scroll bars; it can store anything it likes here. If this |
73ce9dd21093
Use the term `scroll bar', instead of `scrollbar'.
Jim Blandy <jimb@redhat.com>
parents:
1872
diff
changeset
|
159 window is newly created and we haven't displayed a scroll bar in |
73ce9dd21093
Use the term `scroll bar', instead of `scrollbar'.
Jim Blandy <jimb@redhat.com>
parents:
1872
diff
changeset
|
160 it yet, or if the frame doesn't have any scroll bars, this is nil. */ |
73ce9dd21093
Use the term `scroll bar', instead of `scrollbar'.
Jim Blandy <jimb@redhat.com>
parents:
1872
diff
changeset
|
161 Lisp_Object vertical_scroll_bar; |
1717
aa7d6d57504b
* frame.h (struct frame): New fields `can_have_scrollbars' and
Jim Blandy <jimb@redhat.com>
parents:
1526
diff
changeset
|
162 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
163 /* Width of left and right marginal areas. A value of nil means |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
164 no margin. */ |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
165 Lisp_Object left_margin_cols, right_margin_cols; |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
166 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
167 /* Width of left and right fringes. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
168 A value of nil or t means use frame values. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
169 Lisp_Object left_fringe_width, right_fringe_width; |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
170 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
171 /* Non-nil means fringes are drawn outside display margins; |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
172 othersize draw them between margin areas and text. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
173 Lisp_Object fringes_outside_margins; |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
174 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
175 /* Pixel width of scroll bars. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
176 A value of nil or t means use frame values. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
177 Lisp_Object scroll_bar_width; |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
178 /* Type of vertical scroll bar. A value of nil means |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
179 no scroll bar. A value of t means use frame value. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
180 Lisp_Object vertical_scroll_bar_type; |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
181 |
769 | 182 /* Frame coords of mark as of last time display completed */ |
183 /* May be nil if mark does not exist or was not on frame */ | |
361 | 184 Lisp_Object last_mark_x; |
185 Lisp_Object last_mark_y; | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
186 /* Z - the buffer position of the last glyph in the current matrix |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
187 of W. Only valid if WINDOW_END_VALID is not nil. */ |
361 | 188 Lisp_Object window_end_pos; |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
189 /* Glyph matrix row of the last glyph in the current matrix |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
190 of W. Only valid if WINDOW_END_VALID is not nil. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
191 Lisp_Object window_end_vpos; |
361 | 192 /* t if window_end_pos is truly valid. |
193 This is nil if nontrivial redisplay is preempted | |
769 | 194 since in that case the frame image that window_end_pos |
195 did not get onto the frame. */ | |
361 | 196 Lisp_Object window_end_valid; |
197 /* Non-nil means must regenerate mode line of this window */ | |
198 Lisp_Object update_mode_line; | |
199 /* Non-nil means current value of `start' | |
200 was the beginning of a line when it was chosen. */ | |
201 Lisp_Object start_at_line_beg; | |
202 /* Display-table to use for displaying chars in this window. | |
203 Nil means use the buffer's own display-table. */ | |
204 Lisp_Object display_table; | |
205 /* Non-nil means window is marked as dedicated. */ | |
206 Lisp_Object dedicated; | |
2304
480abddc8bdd
(struct window): New fields base_line_number and base_line_pos.
Richard M. Stallman <rms@gnu.org>
parents:
1994
diff
changeset
|
207 /* Line number and position of a line somewhere above the |
480abddc8bdd
(struct window): New fields base_line_number and base_line_pos.
Richard M. Stallman <rms@gnu.org>
parents:
1994
diff
changeset
|
208 top of the screen. */ |
480abddc8bdd
(struct window): New fields base_line_number and base_line_pos.
Richard M. Stallman <rms@gnu.org>
parents:
1994
diff
changeset
|
209 /* If this field is nil, it means we don't have a base line. */ |
480abddc8bdd
(struct window): New fields base_line_number and base_line_pos.
Richard M. Stallman <rms@gnu.org>
parents:
1994
diff
changeset
|
210 Lisp_Object base_line_number; |
480abddc8bdd
(struct window): New fields base_line_number and base_line_pos.
Richard M. Stallman <rms@gnu.org>
parents:
1994
diff
changeset
|
211 /* If this field is nil, it means we don't have a base line. |
480abddc8bdd
(struct window): New fields base_line_number and base_line_pos.
Richard M. Stallman <rms@gnu.org>
parents:
1994
diff
changeset
|
212 If it is a buffer, it means don't display the line number |
480abddc8bdd
(struct window): New fields base_line_number and base_line_pos.
Richard M. Stallman <rms@gnu.org>
parents:
1994
diff
changeset
|
213 as long as the window shows that buffer. */ |
480abddc8bdd
(struct window): New fields base_line_number and base_line_pos.
Richard M. Stallman <rms@gnu.org>
parents:
1994
diff
changeset
|
214 Lisp_Object base_line_pos; |
2856
794899b97115
(struct window): New slot region_showing.
Richard M. Stallman <rms@gnu.org>
parents:
2304
diff
changeset
|
215 /* If we have highlighted the region (or any part of it), |
794899b97115
(struct window): New slot region_showing.
Richard M. Stallman <rms@gnu.org>
parents:
2304
diff
changeset
|
216 this is the mark position that we used, as an integer. */ |
794899b97115
(struct window): New slot region_showing.
Richard M. Stallman <rms@gnu.org>
parents:
2304
diff
changeset
|
217 Lisp_Object region_showing; |
10440
055b4219b6d7
(struct window): New member column_number_displayed.
Karl Heuer <kwzh@gnu.org>
parents:
8833
diff
changeset
|
218 /* The column number currently displayed in this window's mode line, |
055b4219b6d7
(struct window): New member column_number_displayed.
Karl Heuer <kwzh@gnu.org>
parents:
8833
diff
changeset
|
219 or nil if column numbers are not being displayed. */ |
055b4219b6d7
(struct window): New member column_number_displayed.
Karl Heuer <kwzh@gnu.org>
parents:
8833
diff
changeset
|
220 Lisp_Object column_number_displayed; |
13458
adc8fc9fe6ed
(struct window): New field redisplay_end_trigger.
Richard M. Stallman <rms@gnu.org>
parents:
12632
diff
changeset
|
221 /* If redisplay in this window goes beyond this buffer position, |
adc8fc9fe6ed
(struct window): New field redisplay_end_trigger.
Richard M. Stallman <rms@gnu.org>
parents:
12632
diff
changeset
|
222 must run the redisplay-end-trigger-hook. */ |
adc8fc9fe6ed
(struct window): New field redisplay_end_trigger.
Richard M. Stallman <rms@gnu.org>
parents:
12632
diff
changeset
|
223 Lisp_Object redisplay_end_trigger; |
25256
631f514ef580
(struct window): New field too_small_ok.
Gerd Moellmann <gerd@gnu.org>
parents:
24996
diff
changeset
|
224 /* Non-nil means don't delete this window for becoming "too small". */ |
631f514ef580
(struct window): New field too_small_ok.
Gerd Moellmann <gerd@gnu.org>
parents:
24996
diff
changeset
|
225 Lisp_Object too_small_ok; |
25793
2bbee3534773
(struct window): New members orig_top, orig_height.
Gerd Moellmann <gerd@gnu.org>
parents:
25740
diff
changeset
|
226 |
2bbee3534773
(struct window): New members orig_top, orig_height.
Gerd Moellmann <gerd@gnu.org>
parents:
25740
diff
changeset
|
227 /* Original window height and top before mini-window was |
2bbee3534773
(struct window): New members orig_top, orig_height.
Gerd Moellmann <gerd@gnu.org>
parents:
25740
diff
changeset
|
228 enlarged. */ |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
229 Lisp_Object orig_total_lines, orig_top_line; |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
230 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
231 /* No Lisp data may follow below this point without changing |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
232 mark_object in alloc.c. The member current_matrix must be the |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
233 first non-Lisp member. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
234 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
235 /* Glyph matrices. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
236 struct glyph_matrix *current_matrix; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
237 struct glyph_matrix *desired_matrix; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
238 |
56498
ee3ccdb058d1
(struct glyph_matrix): New members nrows_scale_factor
Kim F. Storm <storm@cua.dk>
parents:
56135
diff
changeset
|
239 /* Scaling factor for the glyph_matrix size calculation in this window. |
ee3ccdb058d1
(struct glyph_matrix): New members nrows_scale_factor
Kim F. Storm <storm@cua.dk>
parents:
56135
diff
changeset
|
240 Used if window contains many small images or uses proportional fonts, |
ee3ccdb058d1
(struct glyph_matrix): New members nrows_scale_factor
Kim F. Storm <storm@cua.dk>
parents:
56135
diff
changeset
|
241 as the normal may yield a matrix which is too small. */ |
ee3ccdb058d1
(struct glyph_matrix): New members nrows_scale_factor
Kim F. Storm <storm@cua.dk>
parents:
56135
diff
changeset
|
242 int nrows_scale_factor, ncols_scale_factor; |
ee3ccdb058d1
(struct glyph_matrix): New members nrows_scale_factor
Kim F. Storm <storm@cua.dk>
parents:
56135
diff
changeset
|
243 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
244 /* Cursor position as of last update that completed without |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
245 pause. This is the position of last_point. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
246 struct cursor_pos last_cursor; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
247 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
248 /* Intended cursor position. This is a position within the |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
249 glyph matrix. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
250 struct cursor_pos cursor; |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
251 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
252 /* Where the cursor actually is. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
253 struct cursor_pos phys_cursor; |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
254 |
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
255 /* Cursor type and width of last cursor drawn on the window. |
43619
03e9839bc157
(struct window): New member phys_cursor_width.
Kim F. Storm <storm@cua.dk>
parents:
43595
diff
changeset
|
256 Used for X and w32 frames; -1 initially. */ |
03e9839bc157
(struct window): New member phys_cursor_width.
Kim F. Storm <storm@cua.dk>
parents:
43595
diff
changeset
|
257 int phys_cursor_type, phys_cursor_width; |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
258 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
259 /* This is handy for undrawing the cursor. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
260 int phys_cursor_ascent, phys_cursor_height; |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
261 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
262 /* Non-zero means the cursor is currently displayed. This can be |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
263 set to zero by functions overpainting the cursor image. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
264 unsigned phys_cursor_on_p : 1; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
265 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
266 /* 0 means cursor is logically on, 1 means it's off. Used for |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
267 blinking cursor. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
268 unsigned cursor_off_p : 1; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
269 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
270 /* Value of cursor_off_p as of the last redisplay. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
271 unsigned last_cursor_off_p : 1; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
272 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
273 /* 1 means desired matrix has been build and window must be |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
274 updated in update_frame. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
275 unsigned must_be_updated_p : 1; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
276 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
277 /* Flag indicating that this window is not a real one. |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
278 Currently only used for menu bar windows of frames. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
279 unsigned pseudo_window_p : 1; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
280 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
281 /* Amount by which lines of this window are scrolled in |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
282 y-direction (smooth scrolling). */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
283 int vscroll; |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
284 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
285 /* Z_BYTE - the buffer position of the last glyph in the current matrix |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
286 of W. Only valid if WINDOW_END_VALID is not nil. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
287 int window_end_bytepos; |
25518
319e90e7bd82
New member frozen_window_start_p.
Gerd Moellmann <gerd@gnu.org>
parents:
25376
diff
changeset
|
288 |
319e90e7bd82
New member frozen_window_start_p.
Gerd Moellmann <gerd@gnu.org>
parents:
25376
diff
changeset
|
289 /* 1 means the window start of this window is frozen and may not |
319e90e7bd82
New member frozen_window_start_p.
Gerd Moellmann <gerd@gnu.org>
parents:
25376
diff
changeset
|
290 be changed during redisplay. If point is not in the window, |
319e90e7bd82
New member frozen_window_start_p.
Gerd Moellmann <gerd@gnu.org>
parents:
25376
diff
changeset
|
291 accept that. */ |
319e90e7bd82
New member frozen_window_start_p.
Gerd Moellmann <gerd@gnu.org>
parents:
25376
diff
changeset
|
292 unsigned frozen_window_start_p : 1; |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
293 }; |
361 | 294 |
295 /* 1 if W is a minibuffer window. */ | |
296 | |
39585 | 297 #define MINI_WINDOW_P(W) (!NILP ((W)->mini_p)) |
361 | 298 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
299 /* General window layout: |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
300 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
301 LEFT_EDGE_COL RIGHT_EDGE_COL |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
302 | | |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
303 | | |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
304 | BOX_LEFT_EDGE_COL | |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
305 | | BOX_RIGHT_EDGE_COL | |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
306 | | | | |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
307 v v v v |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
308 <-><-><---><-----------><---><-><-> |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
309 ^ ^ ^ ^ ^ ^ ^ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
310 | | | | | | | |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
311 | | | | | | +-- RIGHT_SCROLL_BAR_COLS |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
312 | | | | | +----- RIGHT_FRINGE_WIDTH |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
313 | | | | +--------- RIGHT_MARGIN_COLS |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
314 | | | | |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
315 | | | +------------------ TEXT_AREA_COLS |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
316 | | | |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
317 | | +--------------------------- LEFT_MARGIN_COLS |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
318 | +------------------------------- LEFT_FRINGE_WIDTH |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
319 +---------------------------------- LEFT_SCROLL_BAR_COLS |
55028
0f5f3d0c5f4c
(Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
Kim F. Storm <storm@cua.dk>
parents:
54228
diff
changeset
|
320 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
321 */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
322 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
323 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
324 /* A handy macro. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
325 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
326 #define WINDOW_XFRAME(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
327 (XFRAME (WINDOW_FRAME ((W)))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
328 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
329 /* Return the canonical column width of the frame of window W. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
330 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
331 #define WINDOW_FRAME_COLUMN_WIDTH(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
332 (FRAME_COLUMN_WIDTH (WINDOW_XFRAME ((W)))) |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
333 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
334 /* Return the canonical column width of the frame of window W. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
335 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
336 #define WINDOW_FRAME_LINE_HEIGHT(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
337 (FRAME_LINE_HEIGHT (WINDOW_XFRAME ((W)))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
338 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
339 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
340 /* Return the frame width in canonical column units. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
341 This includes scroll bars and fringes. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
342 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
343 #define WINDOW_TOTAL_COLS(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
344 (XFASTINT ((W)->total_cols)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
345 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
346 /* Return the frame height in canonical line units. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
347 This includes header and mode lines, if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
348 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
349 #define WINDOW_TOTAL_LINES(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
350 (XFASTINT ((W)->total_lines)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
351 |
16264
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
352 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
353 /* Return the total pixel width of window W. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
354 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
355 #define WINDOW_TOTAL_WIDTH(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
356 (WINDOW_TOTAL_COLS (W) * WINDOW_FRAME_COLUMN_WIDTH (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
357 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
358 /* Return the total pixel height of window W. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
359 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
360 #define WINDOW_TOTAL_HEIGHT(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
361 (WINDOW_TOTAL_LINES (W) * WINDOW_FRAME_LINE_HEIGHT (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
362 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
363 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
364 /* Return the canonical frame column at which window W starts. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
365 This includes a left-hand scroll bar, if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
366 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
367 #define WINDOW_LEFT_EDGE_COL(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
368 (XFASTINT ((W)->left_col)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
369 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
370 /* Return the canonical frame column before which window W ends. |
16264
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
371 This includes a right-hand scroll bar, if any. */ |
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
372 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
373 #define WINDOW_RIGHT_EDGE_COL(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
374 (WINDOW_LEFT_EDGE_COL (W) + WINDOW_TOTAL_COLS (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
375 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
376 /* Return the canonical frame line at which window W starts. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
377 This includes a header line, if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
378 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
379 #define WINDOW_TOP_EDGE_LINE(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
380 (XFASTINT ((W)->top_line)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
381 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
382 /* Return the canonical frame line before which window W ends. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
383 This includes a mode line, if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
384 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
385 #define WINDOW_BOTTOM_EDGE_LINE(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
386 (WINDOW_TOP_EDGE_LINE (W) + WINDOW_TOTAL_LINES (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
387 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
388 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
389 /* Return the frame x-position at which window W starts. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
390 This includes a left-hand scroll bar, if any. */ |
16264
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
391 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
392 #define WINDOW_LEFT_EDGE_X(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
393 (FRAME_INTERNAL_BORDER_WIDTH (WINDOW_XFRAME (W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
394 + WINDOW_LEFT_EDGE_COL (W) * WINDOW_FRAME_COLUMN_WIDTH (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
395 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
396 /* Return the frame x- position before which window W ends. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
397 This includes a right-hand scroll bar, if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
398 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
399 #define WINDOW_RIGHT_EDGE_X(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
400 (FRAME_INTERNAL_BORDER_WIDTH (WINDOW_XFRAME (W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
401 + WINDOW_RIGHT_EDGE_COL (W) * WINDOW_FRAME_COLUMN_WIDTH (W)) |
16264
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
402 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
403 /* Return the frame y-position at which window W starts. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
404 This includes a header line, if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
405 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
406 #define WINDOW_TOP_EDGE_Y(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
407 (FRAME_INTERNAL_BORDER_WIDTH (WINDOW_XFRAME (W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
408 + WINDOW_TOP_EDGE_LINE (W) * WINDOW_FRAME_LINE_HEIGHT (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
409 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
410 /* Return the frame y-position before which window W ends. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
411 This includes a mode line, if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
412 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
413 #define WINDOW_BOTTOM_EDGE_Y(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
414 (FRAME_INTERNAL_BORDER_WIDTH (WINDOW_XFRAME (W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
415 + WINDOW_BOTTOM_EDGE_LINE (W) * WINDOW_FRAME_LINE_HEIGHT (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
416 |
16264
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
417 |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
418 /* 1 if window W takes up the full width of its frame. */ |
16264
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
419 |
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
420 #define WINDOW_FULL_WIDTH_P(W) \ |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
421 (WINDOW_TOTAL_COLS (W) == FRAME_TOTAL_COLS (WINDOW_XFRAME (W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
422 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
423 /* 1 if window W's has no other windows to its left in its frame. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
424 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
425 #define WINDOW_LEFTMOST_P(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
426 (WINDOW_LEFT_EDGE_COL (W) == 0) |
16264
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
427 |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
428 /* 1 if window W's has no other windows to its right in its frame. */ |
16264
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
429 |
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
430 #define WINDOW_RIGHTMOST_P(W) \ |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
431 (WINDOW_RIGHT_EDGE_COL (W) == FRAME_TOTAL_COLS (WINDOW_XFRAME (W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
432 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
433 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
434 /* Return the frame column at which the text (or left fringe) in |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
435 window W starts. This is different from the `LEFT_EDGE' because it |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
436 does not include a left-hand scroll bar if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
437 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
438 #define WINDOW_BOX_LEFT_EDGE_COL(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
439 (WINDOW_LEFT_EDGE_COL (W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
440 + WINDOW_LEFT_SCROLL_BAR_COLS (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
441 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
442 /* Return the window column before which the text in window W ends. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
443 This is different from WINDOW_RIGHT_EDGE_COL because it does not |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
444 include a scroll bar or window-separating line on the right edge. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
445 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
446 #define WINDOW_BOX_RIGHT_EDGE_COL(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
447 (WINDOW_RIGHT_EDGE_COL (W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
448 - WINDOW_RIGHT_SCROLL_BAR_COLS (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
449 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
450 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
451 /* Return the frame position at which the text (or left fringe) in |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
452 window W starts. This is different from the `LEFT_EDGE' because it |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
453 does not include a left-hand scroll bar if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
454 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
455 #define WINDOW_BOX_LEFT_EDGE_X(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
456 (FRAME_INTERNAL_BORDER_WIDTH (WINDOW_XFRAME (W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
457 + WINDOW_BOX_LEFT_EDGE_COL (W) * WINDOW_FRAME_COLUMN_WIDTH (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
458 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
459 /* Return the window column before which the text in window W ends. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
460 This is different from WINDOW_RIGHT_EDGE_COL because it does not |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
461 include a scroll bar or window-separating line on the right edge. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
462 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
463 #define WINDOW_BOX_RIGHT_EDGE_X(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
464 (FRAME_INTERNAL_BORDER_WIDTH (WINDOW_XFRAME (W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
465 + WINDOW_BOX_RIGHT_EDGE_COL (W) * WINDOW_FRAME_COLUMN_WIDTH (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
466 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
467 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
468 /* Width of left margin area in columns. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
469 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
470 #define WINDOW_LEFT_MARGIN_COLS(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
471 (NILP ((W)->left_margin_cols) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
472 ? 0 \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
473 : XINT ((W)->left_margin_cols)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
474 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
475 /* Width of right marginal area in columns. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
476 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
477 #define WINDOW_RIGHT_MARGIN_COLS(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
478 (NILP ((W)->right_margin_cols) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
479 ? 0 \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
480 : XINT ((W)->right_margin_cols)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
481 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
482 /* Width of left margin area in pixels. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
483 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
484 #define WINDOW_LEFT_MARGIN_WIDTH(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
485 (NILP ((W)->left_margin_cols) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
486 ? 0 \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
487 : (XINT ((W)->left_margin_cols) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
488 * WINDOW_FRAME_COLUMN_WIDTH (W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
489 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
490 /* Width of right marginal area in pixels. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
491 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
492 #define WINDOW_RIGHT_MARGIN_WIDTH(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
493 (NILP ((W)->right_margin_cols) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
494 ? 0 \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
495 : (XINT ((W)->right_margin_cols) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
496 * WINDOW_FRAME_COLUMN_WIDTH (W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
497 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
498 /* Total width of fringes reserved for drawing truncation bitmaps, |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
499 continuation bitmaps and alike. The width is in canonical char |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
500 units of the frame. This must currently be the case because window |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
501 sizes aren't pixel values. If it weren't the case, we wouldn't be |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
502 able to split windows horizontally nicely. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
503 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
504 #define WINDOW_FRINGE_COLS(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
505 ((INTEGERP ((W)->left_fringe_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
506 || INTEGERP ((W)->right_fringe_width)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
507 ? ((WINDOW_LEFT_FRINGE_WIDTH (W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
508 + WINDOW_RIGHT_FRINGE_WIDTH (W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
509 + WINDOW_FRAME_COLUMN_WIDTH (W) - 1) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
510 / WINDOW_FRAME_COLUMN_WIDTH (W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
511 : FRAME_FRINGE_COLS (WINDOW_XFRAME (W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
512 |
51426
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
513 /* Column-width of the left and right fringe. */ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
514 |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
515 #define WINDOW_LEFT_FRINGE_COLS(W) \ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
516 ((WINDOW_LEFT_FRINGE_WIDTH ((W)) \ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
517 + WINDOW_FRAME_COLUMN_WIDTH (W) - 1) \ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
518 / WINDOW_FRAME_COLUMN_WIDTH (W)) |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
519 |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
520 #define WINDOW_RIGHT_FRINGE_COLS(W) \ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
521 ((WINDOW_RIGHT_FRINGE_WIDTH ((W)) \ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
522 + WINDOW_FRAME_COLUMN_WIDTH (W) - 1) \ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
523 / WINDOW_FRAME_COLUMN_WIDTH (W)) |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
524 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
525 /* Pixel-width of the left and right fringe. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
526 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
527 #define WINDOW_LEFT_FRINGE_WIDTH(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
528 (INTEGERP ((W)->left_fringe_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
529 ? XFASTINT ((W)->left_fringe_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
530 : FRAME_LEFT_FRINGE_WIDTH (WINDOW_XFRAME (W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
531 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
532 #define WINDOW_RIGHT_FRINGE_WIDTH(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
533 (INTEGERP ((W)->right_fringe_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
534 ? XFASTINT ((W)->right_fringe_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
535 : FRAME_RIGHT_FRINGE_WIDTH (WINDOW_XFRAME (W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
536 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
537 /* Total width of fringes in pixels. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
538 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
539 #define WINDOW_TOTAL_FRINGE_WIDTH(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
540 (WINDOW_LEFT_FRINGE_WIDTH (W) + WINDOW_RIGHT_FRINGE_WIDTH (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
541 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
542 /* Are fringes outside display margins in window W. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
543 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
544 #define WINDOW_HAS_FRINGES_OUTSIDE_MARGINS(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
545 (!NILP ((W)->fringes_outside_margins)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
546 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
547 /* Say whether scroll bars are currently enabled for window W, |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
548 and which side they are on. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
549 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
550 #define WINDOW_VERTICAL_SCROLL_BAR_TYPE(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
551 (EQ ((w)->vertical_scroll_bar_type, Qt) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
552 ? FRAME_VERTICAL_SCROLL_BAR_TYPE (WINDOW_XFRAME (w)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
553 : EQ ((w)->vertical_scroll_bar_type, Qleft) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
554 ? vertical_scroll_bar_left \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
555 : EQ ((w)->vertical_scroll_bar_type, Qright) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
556 ? vertical_scroll_bar_right \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
557 : vertical_scroll_bar_none) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
558 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
559 #define WINDOW_HAS_VERTICAL_SCROLL_BAR(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
560 (EQ ((w)->vertical_scroll_bar_type, Qt) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
561 ? FRAME_HAS_VERTICAL_SCROLL_BARS (WINDOW_XFRAME (w)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
562 : !NILP ((w)->vertical_scroll_bar_type)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
563 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
564 #define WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
565 (EQ ((w)->vertical_scroll_bar_type, Qt) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
566 ? FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT (WINDOW_XFRAME (w)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
567 : EQ ((w)->vertical_scroll_bar_type, Qleft)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
568 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
569 #define WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
570 (EQ ((w)->vertical_scroll_bar_type, Qt) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
571 ? FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT (WINDOW_XFRAME (w))\ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
572 : EQ ((w)->vertical_scroll_bar_type, Qright)) |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
573 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
574 /* Width that a scroll bar in window W should have, if there is one. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
575 Measured in pixels. If scroll bars are turned off, this is still |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
576 nonzero. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
577 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
578 #define WINDOW_CONFIG_SCROLL_BAR_WIDTH(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
579 (INTEGERP ((w)->scroll_bar_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
580 ? XFASTINT ((w)->scroll_bar_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
581 : FRAME_CONFIG_SCROLL_BAR_WIDTH (WINDOW_XFRAME (w))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
582 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
583 /* Width that a scroll bar in window W should have, if there is one. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
584 Measured in columns (characters). If scroll bars are turned off, |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
585 this is still nonzero. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
586 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
587 #define WINDOW_CONFIG_SCROLL_BAR_COLS(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
588 (INTEGERP ((w)->scroll_bar_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
589 ? ((XFASTINT ((w)->scroll_bar_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
590 + WINDOW_FRAME_COLUMN_WIDTH (w) - 1) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
591 / WINDOW_FRAME_COLUMN_WIDTH (w)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
592 : FRAME_CONFIG_SCROLL_BAR_COLS (WINDOW_XFRAME (w))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
593 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
594 /* Width of a scroll bar in window W, measured in columns (characters), |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
595 but only if scroll bars are on the left. If scroll bars are on |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
596 the right in this frame, or there are no scroll bars, value is 0. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
597 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
598 #define WINDOW_LEFT_SCROLL_BAR_COLS(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
599 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT (w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
600 ? (WINDOW_CONFIG_SCROLL_BAR_COLS (w)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
601 : 0) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
602 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
603 /* Width of a left scroll bar area in window W , measured in pixels. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
604 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
605 #define WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
606 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT (w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
607 ? (WINDOW_CONFIG_SCROLL_BAR_COLS (w) * WINDOW_FRAME_COLUMN_WIDTH (w)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
608 : 0) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
609 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
610 /* Width of a scroll bar in window W, measured in columns (characters), |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
611 but only if scroll bars are on the right. If scroll bars are on |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
612 the left in this frame, or there are no scroll bars, value is 0. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
613 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
614 #define WINDOW_RIGHT_SCROLL_BAR_COLS(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
615 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT (w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
616 ? WINDOW_CONFIG_SCROLL_BAR_COLS (w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
617 : 0) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
618 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
619 /* Width of a left scroll bar area in window W , measured in pixels. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
620 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
621 #define WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
622 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT (w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
623 ? (WINDOW_CONFIG_SCROLL_BAR_COLS (w) * WINDOW_FRAME_COLUMN_WIDTH (w)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
624 : 0) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
625 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
626 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
627 /* Actual width of a scroll bar in window W, measured in columns. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
628 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
629 #define WINDOW_SCROLL_BAR_COLS(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
630 (WINDOW_HAS_VERTICAL_SCROLL_BAR (w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
631 ? WINDOW_CONFIG_SCROLL_BAR_COLS (w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
632 : 0) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
633 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
634 /* Width of a left scroll bar area in window W , measured in pixels. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
635 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
636 #define WINDOW_SCROLL_BAR_AREA_WIDTH(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
637 (WINDOW_HAS_VERTICAL_SCROLL_BAR (w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
638 ? (WINDOW_CONFIG_SCROLL_BAR_COLS (w) * WINDOW_FRAME_COLUMN_WIDTH (w)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
639 : 0) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
640 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
641 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
642 /* Return the frame position where the scroll bar of window W starts. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
643 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
644 #define WINDOW_SCROLL_BAR_AREA_X(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
645 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT (W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
646 ? WINDOW_BOX_RIGHT_EDGE_X (W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
647 : WINDOW_LEFT_EDGE_X (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
648 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
649 |
51426
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
650 /* Height in pixels, and in lines, of the mode line. |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
651 May be zero if W doesn't have a mode line. */ |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
652 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
653 #define WINDOW_MODE_LINE_HEIGHT(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
654 (WINDOW_WANTS_MODELINE_P ((W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
655 ? CURRENT_MODE_LINE_HEIGHT (W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
656 : 0) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
657 |
51426
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
658 #define WINDOW_MODE_LINE_LINES(W) \ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
659 (!! WINDOW_WANTS_MODELINE_P ((W))) |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
660 |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
661 /* Height in pixels, and in lines, of the header line. |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
662 Zero if W doesn't have a header line. */ |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
663 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
664 #define WINDOW_HEADER_LINE_HEIGHT(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
665 (WINDOW_WANTS_HEADER_LINE_P ((W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
666 ? CURRENT_HEADER_LINE_HEIGHT (W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
667 : 0) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
668 |
51426
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
669 #define WINDOW_HEADER_LINE_LINES(W) \ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
670 (!! WINDOW_WANTS_HEADER_LINE_P ((W))) |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
671 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
672 /* Pixel height of window W without mode line. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
673 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
674 #define WINDOW_BOX_HEIGHT_NO_MODE_LINE(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
675 (WINDOW_TOTAL_HEIGHT ((W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
676 - WINDOW_MODE_LINE_HEIGHT ((W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
677 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
678 /* Pixel height of window W without mode and header line. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
679 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
680 #define WINDOW_BOX_TEXT_HEIGHT(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
681 (WINDOW_TOTAL_HEIGHT ((W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
682 - WINDOW_MODE_LINE_HEIGHT ((W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
683 - WINDOW_HEADER_LINE_HEIGHT ((W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
684 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
685 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
686 /* Convert window W relative pixel X to frame pixel coordinates. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
687 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
688 #define WINDOW_TO_FRAME_PIXEL_X(W, X) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
689 ((X) + WINDOW_BOX_LEFT_EDGE_X ((W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
690 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
691 /* Convert window W relative pixel Y to frame pixel coordinates. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
692 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
693 #define WINDOW_TO_FRAME_PIXEL_Y(W, Y) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
694 ((Y) + WINDOW_TOP_EDGE_Y ((W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
695 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
696 /* Convert frame relative pixel X to window relative pixel X. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
697 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
698 #define FRAME_TO_WINDOW_PIXEL_X(W, X) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
699 ((X) - WINDOW_BOX_LEFT_EDGE_X ((W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
700 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
701 /* Convert frame relative pixel Y to window relative pixel Y. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
702 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
703 #define FRAME_TO_WINDOW_PIXEL_Y(W, Y) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
704 ((Y) - WINDOW_TOP_EDGE_Y ((W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
705 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
706 /* Convert a text area relative x-position in window W to frame X |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
707 pixel coordinates. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
708 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
709 #define WINDOW_TEXT_TO_FRAME_PIXEL_X(W, X) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
710 (window_box_left ((W), TEXT_AREA) + (X)) |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
711 |
361 | 712 /* This is the window in which the terminal's cursor should |
713 be left when nothing is being done with it. This must | |
714 always be a leaf window, and its buffer is selected by | |
715 the top level editing loop at the end of each command. | |
716 | |
717 This value is always the same as | |
769 | 718 FRAME_SELECTED_WINDOW (selected_frame). */ |
361 | 719 |
720 extern Lisp_Object selected_window; | |
721 | |
722 /* This is a time stamp for window selection, so we can find the least | |
723 recently used window. Its only users are Fselect_window, | |
769 | 724 init_window_once, and make_frame. */ |
361 | 725 |
726 extern int window_select_count; | |
727 | |
769 | 728 /* The minibuffer window of the selected frame. |
361 | 729 Note that you cannot test for minibufferness of an arbitrary window |
998 | 730 by comparing against this; use the MINI_WINDOW_P macro instead. */ |
361 | 731 |
732 extern Lisp_Object minibuf_window; | |
733 | |
43572
33baa349c070
(Vminibuf_selected_window): Declare extern.
Kim F. Storm <storm@cua.dk>
parents:
39585
diff
changeset
|
734 /* Non-nil means it is the window whose mode line should be |
33baa349c070
(Vminibuf_selected_window): Declare extern.
Kim F. Storm <storm@cua.dk>
parents:
39585
diff
changeset
|
735 shown as the selected window when the minibuffer is selected. */ |
33baa349c070
(Vminibuf_selected_window): Declare extern.
Kim F. Storm <storm@cua.dk>
parents:
39585
diff
changeset
|
736 |
43595
b7964dae2379
(minibuf_selected_window): Renamed from Vminibuf_selected_window.
Kim F. Storm <storm@cua.dk>
parents:
43572
diff
changeset
|
737 extern Lisp_Object minibuf_selected_window; |
43572
33baa349c070
(Vminibuf_selected_window): Declare extern.
Kim F. Storm <storm@cua.dk>
parents:
39585
diff
changeset
|
738 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
739 /* Non-nil => window to for C-M-v to scroll when the minibuffer is |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
740 selected. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
741 |
361 | 742 extern Lisp_Object Vminibuf_scroll_window; |
743 | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
744 /* Nil or a symbol naming the window system under which emacs is |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
745 running ('x is the only current possibility) */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
746 |
361 | 747 extern Lisp_Object Vwindow_system; |
748 | |
749 /* Version number of X windows: 10, 11 or nil. */ | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
750 |
361 | 751 extern Lisp_Object Vwindow_system_version; |
752 | |
753 /* Window that the mouse is over (nil if no mouse support). */ | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
754 |
361 | 755 extern Lisp_Object Vmouse_window; |
756 | |
757 /* Last mouse-click event (nil if no mouse support). */ | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
758 |
361 | 759 extern Lisp_Object Vmouse_event; |
760 | |
20349 | 761 EXFUN (Fnext_window, 3); |
51048
7ac9c3bea5ea
(Fselect_window): Add optional arg `norecord'.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50996
diff
changeset
|
762 EXFUN (Fselect_window, 2); |
20856
1e37bbef998c
Change argument number of Fdisplay_buffer to 3.
Kenichi Handa <handa@m17n.org>
parents:
20700
diff
changeset
|
763 EXFUN (Fdisplay_buffer, 3); |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
764 EXFUN (Fset_window_buffer, 3); |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
765 EXFUN (Fset_window_hscroll, 2); |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
766 EXFUN (Fwindow_hscroll, 1); |
55028
0f5f3d0c5f4c
(Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
Kim F. Storm <storm@cua.dk>
parents:
54228
diff
changeset
|
767 EXFUN (Fset_window_vscroll, 3); |
0f5f3d0c5f4c
(Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
Kim F. Storm <storm@cua.dk>
parents:
54228
diff
changeset
|
768 EXFUN (Fwindow_vscroll, 2); |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
769 EXFUN (Fset_window_margins, 3); |
32991
a3db89bef2e5
* window.h (Fwindow_live_p): Declare.
Ken Raeburn <raeburn@raeburn.org>
parents:
30361
diff
changeset
|
770 EXFUN (Fwindow_live_p, 1); |
34497 | 771 EXFUN (Fset_window_point, 2); |
20349 | 772 extern Lisp_Object make_window P_ ((void)); |
773 extern void delete_window P_ ((Lisp_Object)); | |
50234
95acb541716a
(window_from_coordinates): Fix prototype.
Kim F. Storm <storm@cua.dk>
parents:
49600
diff
changeset
|
774 extern Lisp_Object window_from_coordinates P_ ((struct frame *, int, int, |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
775 enum window_part *, |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
776 int *, int*, int)); |
20349 | 777 EXFUN (Fwindow_dedicated_p, 1); |
778 extern int window_height P_ ((Lisp_Object)); | |
779 extern int window_width P_ ((Lisp_Object)); | |
780 extern void set_window_height P_ ((Lisp_Object, int, int)); | |
781 extern void set_window_width P_ ((Lisp_Object, int, int)); | |
50368
d7a1f1ee84e9
(change_window_heights): Add prototype.
Kim F. Storm <storm@cua.dk>
parents:
50234
diff
changeset
|
782 extern void change_window_heights P_ ((Lisp_Object, int)); |
20349 | 783 extern void delete_all_subwindows P_ ((struct window *)); |
25713
54a8aba6712b
(freeze_window_starts): Fix typo in prototype.
Gerd Moellmann <gerd@gnu.org>
parents:
25518
diff
changeset
|
784 extern void freeze_window_starts P_ ((struct frame *, int)); |
30361
e1ea6e214873
(foreach_window): Change prototype.
Gerd Moellmann <gerd@gnu.org>
parents:
26249
diff
changeset
|
785 extern void foreach_window P_ ((struct frame *, |
e1ea6e214873
(foreach_window): Change prototype.
Gerd Moellmann <gerd@gnu.org>
parents:
26249
diff
changeset
|
786 int (* fn) (struct window *, void *), |
e1ea6e214873
(foreach_window): Change prototype.
Gerd Moellmann <gerd@gnu.org>
parents:
26249
diff
changeset
|
787 void *)); |
25793
2bbee3534773
(struct window): New members orig_top, orig_height.
Gerd Moellmann <gerd@gnu.org>
parents:
25740
diff
changeset
|
788 extern void grow_mini_window P_ ((struct window *, int)); |
2bbee3534773
(struct window): New members orig_top, orig_height.
Gerd Moellmann <gerd@gnu.org>
parents:
25740
diff
changeset
|
789 extern void shrink_mini_window P_ ((struct window *)); |
2bbee3534773
(struct window): New members orig_top, orig_height.
Gerd Moellmann <gerd@gnu.org>
parents:
25740
diff
changeset
|
790 |
361 | 791 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
792 /* Make WINDOW display BUFFER as its contents. RUN_HOOKS_P non-zero |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
793 means it's allowed to run hooks. See make_frame for a case where |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
794 it's not allowed. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
795 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
796 void set_window_buffer P_ ((Lisp_Object window, Lisp_Object buffer, |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
797 int run_hooks_p, int keep_margins_p)); |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
798 |
361 | 799 /* Prompt to display in front of the minibuffer contents. */ |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
800 |
7950
c0a4d26e7498
(minibuf_prompt): Now a Lisp_Object. All uses changed.
Karl Heuer <kwzh@gnu.org>
parents:
5235
diff
changeset
|
801 extern Lisp_Object minibuf_prompt; |
361 | 802 |
488 | 803 /* The visual width of the above. */ |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
804 |
488 | 805 extern int minibuf_prompt_width; |
806 | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
807 /* This is the window where the echo area message was displayed. It |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
808 is always a minibuffer window, but it may not be the same window |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
809 currently active as a minibuffer. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
810 |
12632
81f12c1d0178
(echo_area_window): Declared.
Richard M. Stallman <rms@gnu.org>
parents:
11171
diff
changeset
|
811 extern Lisp_Object echo_area_window; |
81f12c1d0178
(echo_area_window): Declared.
Richard M. Stallman <rms@gnu.org>
parents:
11171
diff
changeset
|
812 |
361 | 813 /* Depth in recursive edits. */ |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
814 |
361 | 815 extern int command_loop_level; |
816 | |
817 /* Depth in minibuffer invocations. */ | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
818 |
361 | 819 extern int minibuf_level; |
820 | |
821 /* true iff we should redraw the mode lines on the next redisplay. */ | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
822 |
361 | 823 extern int update_mode_lines; |
824 | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
825 /* Nonzero if BEGV - BEG or Z - ZV of current buffer has changed since |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
826 last redisplay that finished. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
827 |
361 | 828 extern int clip_changed; |
829 | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
830 /* Nonzero if window sizes or contents have changed since last |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
831 redisplay that finished */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
832 |
361 | 833 extern int windows_or_buffers_changed; |
834 | |
43988
44b653625dac
(cursor_type_changed): Hew variable.
Richard M. Stallman <rms@gnu.org>
parents:
43619
diff
changeset
|
835 /* Nonzero means a frame's cursor type has been changed. */ |
44b653625dac
(cursor_type_changed): Hew variable.
Richard M. Stallman <rms@gnu.org>
parents:
43619
diff
changeset
|
836 |
44b653625dac
(cursor_type_changed): Hew variable.
Richard M. Stallman <rms@gnu.org>
parents:
43619
diff
changeset
|
837 extern int cursor_type_changed; |
44b653625dac
(cursor_type_changed): Hew variable.
Richard M. Stallman <rms@gnu.org>
parents:
43619
diff
changeset
|
838 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
839 /* Number of windows displaying the selected buffer. Normally this is |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
840 1, but it can be more. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
841 |
361 | 842 extern int buffer_shared; |
998 | 843 |
844 /* If *ROWS or *COLS are too small a size for FRAME, set them to the | |
845 minimum allowable size. */ | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
846 |
20349 | 847 extern void check_frame_size P_ ((struct frame *frame, int *rows, int *cols)); |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
848 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
849 /* Return a pointer to the glyph W's physical cursor is on. Value is |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
850 null if W's current matrix is invalid, so that no meaningfull glyph |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
851 can be returned. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
852 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
853 struct glyph *get_phys_cursor_glyph P_ ((struct window *w)); |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
854 |
35399
21663e5e70de
(WINDOW_LIVE_P): New macro.
Gerd Moellmann <gerd@gnu.org>
parents:
34746
diff
changeset
|
855 /* Value is non-zero if WINDOW is a live window. */ |
21663e5e70de
(WINDOW_LIVE_P): New macro.
Gerd Moellmann <gerd@gnu.org>
parents:
34746
diff
changeset
|
856 |
21663e5e70de
(WINDOW_LIVE_P): New macro.
Gerd Moellmann <gerd@gnu.org>
parents:
34746
diff
changeset
|
857 #define WINDOW_LIVE_P(WINDOW) \ |
21663e5e70de
(WINDOW_LIVE_P): New macro.
Gerd Moellmann <gerd@gnu.org>
parents:
34746
diff
changeset
|
858 (WINDOWP ((WINDOW)) && !NILP (XWINDOW ((WINDOW))->buffer)) |
21663e5e70de
(WINDOW_LIVE_P): New macro.
Gerd Moellmann <gerd@gnu.org>
parents:
34746
diff
changeset
|
859 |
50996
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
860 |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
861 /* These used to be in lisp.h. */ |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
862 |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
863 extern Lisp_Object Qwindowp, Qwindow_live_p; |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
864 extern Lisp_Object Vwindow_list; |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
865 |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
866 EXFUN (Fwindow_end, 2); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
867 EXFUN (Fselected_window, 0); |
67995
ab3fdc2bada6
(Fwindow_minibuffer_p): Declare (for use in minibuf.c).
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
65603
diff
changeset
|
868 EXFUN (Fwindow_minibuffer_p, 1); |
50996
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
869 EXFUN (Fdelete_window, 1); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
870 EXFUN (Fwindow_buffer, 1); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
871 EXFUN (Fget_buffer_window, 2); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
872 EXFUN (Fsave_window_excursion, UNEVALLED); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
873 EXFUN (Fsplit_window, 3); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
874 EXFUN (Fset_window_configuration, 1); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
875 EXFUN (Fcurrent_window_configuration, 1); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
876 extern int compare_window_configurations P_ ((Lisp_Object, Lisp_Object, int)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
877 EXFUN (Fcoordinates_in_window_p, 2); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
878 EXFUN (Fwindow_at, 3); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
879 EXFUN (Fpos_visible_in_window_p, 3); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
880 extern void mark_window_cursors_off P_ ((struct window *)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
881 extern int window_internal_height P_ ((struct window *)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
882 extern int window_internal_width P_ ((struct window *)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
883 EXFUN (Frecenter, 1); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
884 EXFUN (Fscroll_other_window, 1); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
885 EXFUN (Fset_window_start, 3); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
886 extern void temp_output_buffer_show P_ ((Lisp_Object)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
887 extern void replace_buffer_in_all_windows P_ ((Lisp_Object)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
888 extern void init_window_once P_ ((void)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
889 extern void init_window P_ ((void)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
890 extern void syms_of_window P_ ((void)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
891 extern void keys_of_window P_ ((void)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
892 |
51239
d4574290ba8b
(window_box_text_cols): Declare.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
51208
diff
changeset
|
893 extern int window_box_text_cols P_ ((struct window *w)); |
50996
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
894 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
895 #endif /* not WINDOW_H_INCLUDED */ |
52401 | 896 |
897 /* arch-tag: d4a6942f-e433-4ffe-ac10-2c3574f28577 | |
898 (do not change this comment) */ |