Mercurial > hg > xemacs-beta
annotate lisp/dialog-items.el @ 5565:48a3d3281b48
Pass eighth bit on TTY consoles to coding system if needed.
src/ChangeLog addition:
2011-09-06 Aidan Kehoe <kehoea@parhasard.net>
* redisplay-tty.c (init_tty_for_redisplay):
Only set the console meta key flag to treat the eight bit as meta
if the native coding system doesn't need that.
* general-slots.h:
* mule-coding.c:
* mule-coding.c (syms_of_mule_coding):
Move Qiso2022, Qseven to general-slots.h, they're now used in
redisplay-tty.c.
lisp/ChangeLog addition:
2011-09-06 Aidan Kehoe <kehoea@parhasard.net>
* mule/mule-cmds.el (set-language-environment-coding-systems):
Set the input mode for TTY consoles to use the eighth bit for
character information if the native coding system for the language
environment needs that.
| author | Aidan Kehoe <kehoea@parhasard.net> |
|---|---|
| date | Tue, 06 Sep 2011 11:44:50 +0100 |
| parents | 308d34e9f07d |
| children |
| rev | line source |
|---|---|
| 442 | 1 ;;; dialog-items.el --- Dialog-box content for XEmacs |
| 2 | |
| 3 ;; Copyright (C) 2000 Andy Piper. | |
| 4 ;; Copyright (C) 2000 Ben Wing. | |
| 5 | |
| 6 ;; Maintainer: XEmacs Development Team | |
| 7 ;; Keywords: content, gui, internal, dumped | |
| 8 | |
| 9 ;; This file is part of XEmacs. | |
| 10 | |
|
5402
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
863
diff
changeset
|
11 ;; XEmacs is free software: you can redistribute it and/or modify it |
|
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
863
diff
changeset
|
12 ;; under the terms of the GNU General Public License as published by the |
|
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
863
diff
changeset
|
13 ;; Free Software Foundation, either version 3 of the License, or (at your |
|
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
863
diff
changeset
|
14 ;; option) any later version. |
| 442 | 15 |
|
5402
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
863
diff
changeset
|
16 ;; XEmacs is distributed in the hope that it will be useful, but WITHOUT |
|
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
863
diff
changeset
|
17 ;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
|
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
863
diff
changeset
|
18 ;; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
|
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
863
diff
changeset
|
19 ;; for more details. |
| 442 | 20 |
| 21 ;; You should have received a copy of the GNU General Public License | |
|
5402
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
863
diff
changeset
|
22 ;; along with XEmacs. If not, see <http://www.gnu.org/licenses/>. |
| 442 | 23 |
| 24 ;;; Synched up with: Not in FSF. | |
| 25 | |
| 26 ;;; Commentary: | |
| 27 | |
| 28 ;; | |
| 29 ;; Simple search dialog | |
| 30 ;; | |
| 31 (defvar search-dialog-direction t) | |
| 32 (defvar search-dialog-regexp nil) | |
| 33 (defvar search-dialog nil) | |
| 34 | |
| 35 (defun search-dialog-callback (parent image-instance event) | |
| 36 (save-selected-frame | |
| 37 (select-frame parent) | |
| 38 (let ((domain (frame-selected-window (event-channel event)))) | |
| 39 (funcall (if search-dialog-direction | |
| 40 (if search-dialog-regexp | |
| 41 're-search-forward | |
| 42 'search-forward) | |
| 43 (if search-dialog-regexp | |
| 44 're-search-backward | |
| 45 'search-backward)) | |
| 46 (glyph-image-property | |
| 47 (car (glyph-image-property | |
| 48 (nth 1 (glyph-image-property | |
| 49 search-dialog :items domain)) | |
| 50 :items domain)) :text domain)) | |
| 51 (isearch-highlight (match-beginning 0) (match-end 0))))) | |
| 52 | |
| 53 (defun make-search-dialog () | |
| 54 "Popup a search dialog box." | |
| 55 (interactive) | |
| 56 (let ((parent (selected-frame))) | |
| 57 (make-dialog-box | |
| 58 'general | |
| 59 :parent parent | |
| 60 :title "Search" | |
| 863 | 61 :autosize t |
| 442 | 62 :spec |
| 63 (setq search-dialog | |
| 64 (make-glyph | |
| 65 `[layout | |
| 863 | 66 :orientation horizontal |
| 67 :vertically-justify top | |
| 68 :horizontally-justify center | |
| 442 | 69 :border [string :data "Search"] |
| 70 :items | |
| 863 | 71 ([layout :orientation vertical |
| 72 :justify top ; implies left also | |
| 442 | 73 :items |
| 74 ([string :data "Search for:"] | |
| 75 [button :descriptor "Match Case" | |
| 76 :style toggle | |
| 77 :selected (not case-fold-search) | |
| 78 :callback (setq case-fold-search | |
| 79 (not case-fold-search))] | |
| 80 [button :descriptor "Regular Expression" | |
| 81 :style toggle | |
| 82 :selected search-dialog-regexp | |
| 83 :callback (setq search-dialog-regexp | |
| 84 (not search-dialog-regexp))] | |
| 85 [button :descriptor "Forwards" | |
| 86 :style radio | |
| 87 :selected search-dialog-direction | |
| 88 :callback (setq search-dialog-direction t)] | |
| 89 [button :descriptor "Backwards" | |
| 90 :style radio | |
| 91 :selected (not search-dialog-direction) | |
| 92 :callback (setq search-dialog-direction nil)] | |
| 93 )] | |
| 863 | 94 [layout :orientation vertical |
| 95 :vertically-justify top | |
| 96 :horizontally-justify right | |
| 97 :items | |
| 442 | 98 ([edit-field :width 15 :descriptor "" :active t |
| 863 | 99 :initial-focus t] |
| 442 | 100 [button :width 10 :descriptor "Find Next" |
| 101 :callback-ex | |
| 102 (lambda (image-instance event) | |
| 103 (search-dialog-callback ,parent | |
| 104 image-instance | |
| 105 event))] | |
| 106 [button :width 10 :descriptor "Cancel" | |
| 107 :callback-ex | |
| 108 (lambda (image-instance event) | |
| 109 (isearch-dehighlight) | |
| 110 (delete-frame | |
| 111 (event-channel event)))])])])) | |
| 863 | 112 ;; These are no longer strictly necessary, but not setting a size |
| 113 ;; at all yields a much more noticeable resize since the initial | |
| 114 ;; frame is so big. | |
| 115 :properties `(height ,(widget-logical-to-character-height 6) | |
| 116 width ,(widget-logical-to-character-width 39)) | |
| 117 ))) |
