ダイアログ
type: Variable
package: editor
file: defs.l
select-bufferやダイアログのリストボックスで、デフォルト選択用の
キャラクタを設定します。
使用例:
(setq *std-control-default-char* #\RET)
type: Variable
package: editor
file: defs.l
select-bufferやダイアログのリストボックスで、下方向に移動するキ
ャラクタを設定します。
使用例:
(setq *std-control-down-char* #\C-n)
seealso: *std-control-up-char*
type: Variable
package: editor
select-bufferやダイアログのリストボックスで、
ページダウンするキャラクタを設定します。
使用例:
(setq *std-control-next-char* #\C-v)
seealso: *std-control-prior-char*
type: Variable
package: editor
select-bufferやダイアログのリストボックスで、
ページアップするキャラクタを設定します。
使用例:
(setq *std-control-prior-char* #\C-u)
seealso: *std-control-next-char*
type: Variable
package: editor
file: defs.l
select-bufferやダイアログのリストボックスで、上方向に移動するキ
ャラクタを設定します。
使用例:
(setq *std-control-up-char* #\C-p)
seealso: *std-control-down-char*
type: Function
arguments: dialog X Y W H &rest CONTROLS
package: lisp
ダイアログを定義します。
X Y : ダイアログの表示位置を指定します。
W H : ダイアログの大きさを指定します。
CONTROLS : コントロールを指定します。
コントロールをxyzzyで作成するのは面倒なので、VisualC++のリソース作成画面
で、部品を配置して変換する方法が用意されています。新しくバッファを作って
*.rcファイルから必要な部分を持ってきた後で、
M-x convert-dialog-template-buffer
バッファ名を選択するとlisp形式に変換されます。
seealso: dialog-box
type: Function
arguments: dialog-box TEMPLATE INITIAL-VALUE CHECK-OR-DISABLE
package: editor
file: builtin.l
ダイアログボックスを表示します。ダイアログはdialogで定義されたものを使います。
TEMPLATE :
lispの形式で記述されたダイアログテンプレートを指定します。
詳細は、関数dialogを参照してください。
INITIAL-VALUE :
エディトボックス等に入れる、文字列などを指定します。
特に指定しない場合はnilでもかまいません。
CHECK-OR-DISABLE :
チェックボックス等の初期選択状態を指定します。
特に指定しない場合はnilでもかまいません。
戻り値は多値なので、 multiple-value-bind 等で受け取る必要があります。1番
目の戻り値は、cancelボタンが押されたらnil、okボタンが押されたらtが返ります。
使用例:
;;; テスト用のダイアログを定義します。
(setq *test-dialog-template*
`(dialog 0 0 300 100
(:caption "について")
(:font 9 "MS Pゴシック")
(:control
(:static nil nil #x50020003 7 7 18 21)
(:static nil ,(concat "XYZZY version "
(software-version))
#x50020000 34 7 92 8)
(:static nil "Copyright (C) 1996, 97 T.Kamei"
#x50020000 34 17 92 8)
(:button IDOK "OK" #x50010001 52 35 36 14))))
;;; テスト用のダイアログを表示します。
(defun test-dialog ()
(interactive)
(dialog-box *test-dialog-template* nil nil)
t)
seealso: dialog
seealso: file-name-dialog
seealso: directory-name-dialog
seealso: drive-dialog
type: Function
arguments: directory-name-dialog &key :title :default
package: editor
file: builtin.l
ディレクトリを指定するダイアログを表示します。
ユーザーが指定したディレクトリを返します。
:title : ダイアログのタイトル
:default : 初期表示するディレクトリ
使用例:
;;; ミニバッファからディレクトリ名を読み取る。
(directory-name-dialog)
=> "C:/applications/xyzzy/site-lisp"
seealso: file-name-dialog
seealso: read-directory-name
type: Function
arguments: drive-dialog &optional DRIVE
package: editor
file: builtin.l
ドライブ選択のダイアログを表示します。DRIVEで初期表示するドライブを選択
できます。選択したドライブのドライブ文字がキャラクタで返されます。
使用例:
(drive-dialog)
=> #\R
seealso: file-name-dialog
seealso: directory-name-dialog
type: Function
arguments: file-name-dialog &key :char-encoding :eol-code :filter :filter-index :title :default :extension :save :multiple :must-exist :explorer :hide-read-only :initial-directory
package: editor
file: builtin.l
ファイルを指定するダイアログを表示します。
ユーザーが指定したファイルを返します。多値で返します。
(詳細不明)
:char-encoding 文字コード指定プルダウンメニューを表示
:eol-code 改行コード指定プルダウンメニューを表示
:filter ファイルの種類リスト
:filter-index (詳細不明)
:title ダイアログのタイトル
:default デフォルトのファイル名
:initial-directory 初期表示するディレクトリ
:extension (詳細不明)
:save non nilならファイル名を付けて保存?
:multiple non nilなら複数ファイル指定可
:must-exist non nilなら存在しないファイルを指定できない
:explorer (詳細不明)
:hide-read-only Read Onlyなファイルを表示しない?
使用例:
;;; タイトルをFooにして、複数選択可能なダイアログを表示する。
(file-name-dialog :title "Foo"
:multiple t
:filter '(("すべてのファイル(*.*)" . "*.*")))
=> ("C:/applications/xyzzy/xyzzycli.exe")
seealso: directory-name-dialog
seealso: open-file-dialog
seealso: read-directory-name
type: Function
arguments: ime-register-word-dialog
package: editor
file: kanji.l
単語/用例登録ダイアログを表示します。[C-c C-r]
セレクションがあれば、セレクションの文字列を語句とします。
type: Function
arguments: mark-dialog-box
package: editor
file: gmark.l
マークダイアログを表示します。[C-F2]
マークダイアログからは、グローバルマークを設定することができ、複数のポイ
ント間を移動することができます。
移動 : 選択したマークに移動します。
追加 : マークを追加します。
削除 : 選択したマークを削除します。
全削除 : 全てのマークを削除します。
type: Function
arguments: message-box MESSAGE &optional TITLE STYLES &key :button1 :button2 :button3 :button4 :button5 :no-wrap
package: editor
file: builtin.l
yes-or-no-p 系よりも柔軟なダイアログを表示します。
MESSAGE : ダイアログに表示するメッセージを指定します。
TITLE : ダイアログのタイトルを指定します。
STYLES : ダイアログのスタイルをリストで指定します。
:ok [OK] を表示します。
:ok-cancel [OK][キャンセル] を表示します。
:yes-no [はい][いいえ] を表示します。
:yes-no-cancel [はい][いいえ][キャンセル] を表示します。
:abort-retry-ignore [中止][再試行][無視] を表示します。
:information (i) インフォメーションマークを表示します。
:exclamation (!) 感嘆符を表示します。
:question (?) 疑問符を表示します。
:button1 ボタン 1 をデフォルト選択にします。
:button2 ボタン 2 をデフォルト選択にします。
:button3 ボタン 3 をデフォルト選択にします。
:button4 ボタン 4 をデフォルト選択にします。
:button5 ボタン 5 をデフォルト選択にします。
:BUTTON1 : ボタン 1 のテキストを変更します。
:BUTTON2 : ボタン 2 のテキストを変更します。
:BUTTON3 : ボタン 3 のテキストを変更します。
:BUTTON4 : ボタン 4 のテキストを変更します。
:BUTTON5 : ボタン 5 のテキストを変更します。
:NO-WRAP : MESSAGE が長すぎるときに折り返すかを制御します。
t 長くとも折り返さない。
nil 長ければ折り返す。
ボタンを押したときの戻り値は、それぞれ以下のとおりです。
:ok [OK] を選択
:cancel [キャンセル] を選択
:yes [はい] を選択
:no [いいえ] を選択
:abort [中止] を選択
:retry [再試行] を選択
:ignore [無視] を選択
使用例:
;;; [はい][いいえ][キャンセル] を表示し選択させます。
(message-box "メールを送信しますか?" nil
'(:yes-no-cancel :question :button1))
=> :yes
;;; ダイアログの結果を case で場合わけしてみる
(case (message-box "メールを送信しますか?" nil
'(:yes-no-cancel :question :button1))
(:yes (den8-draft-send t))
(:no t)
(t nil))
seealso: yes-or-no-p
seealso: msgbox
type: Function
arguments: msgbox FMT &rest ARGS
package: editor
file: misc.l
メッセージボックスを表示します。
[OK] ボタンとインフォメーションアイコンが表示されます。
FMT : format の出力書式と同じものを指定できます。
ARGS : 出力書式へのパラメタとなります。
戻り値は :ok となります。
使用例:
;;; 出力書式で整形してみる。
(msgbox "このバッファは ~A です。" buffer-mode)
=> :ok
seealso: message-box
seealso: format
type: Function
arguments: no-or-yes-p FMT &rest ARGS
package: lisp
file: misc.l
「はい」「いいえ」のボタン付メッセージボックスを表示します。
デフォルトは「いいえ」です。
t 「はい」を選択
nil 「いいえ」を選択
使用例:
;;; ダイアログを表示して選択させる。
(no-or-yes-p "foo")
=> t ; 「はい」を選択
seealso: yes-or-no-p
seealso: y-or-n-p
seealso: yes-no-or-cancel-p
type: Function
arguments: print-dialog &optional BUFFER
package: editor
file: builtin.l
指定されたバッファBUFFERの印刷用のダイアログを表示します。
seealso: print-buffer
type: Function
arguments: yes-no-or-cancel-p FMT &rest ARGS
package: lisp
file: misc.l
「はい」「いいえ」「キャンセル」のボタン付メッセージボックスを表示します。
デフォルトは「はい」です。「キャンセル」を選択した場合には、quitが実行されます。
t 「はい」を選択
nil 「いいえ」を選択
使用例:
;;; ダイアログを表示して選択させる。
(yes-no-or-cancel-p "foo")
=> t ; 「はい」を選択
(yes-no-or-cancel-p "foo")
=> nil ; 「いいえ」を選択
seealso: yes-or-no-p
seealso: no-or-yes-p
seealso: y-or-n-p
type: Function
arguments: yes-or-no-p FMT &rest ARGS
package: lisp
file: misc.l
「はい」「いいえ」のボタン付メッセージボックスを表示します。デフォルトは
「はい」です。
FMT : format同様の書式が指定できます。
ARGS : 出力書式へのパラメタとなります。
戻り値は以下のとおりです。
t 「はい」を選択
nil 「いいえ」を選択
使用例:
;;; ダイアログを表示して選択させる。
(yes-or-no-p "foo")
=> t ; 「はい」を選択
(yes-or-no-p "~A" "hogehoge")
=> nil ; 「いいえ」を選択
seealso: no-or-yes-p
seealso: y-or-n-p
seealso: yes-no-or-cancel-p
seealso: message-box