マクロ 公開データ (2000.10~2008.01)

[1046] 発信者(from)変更 - matsui <> 01/03/02 22:37


Subject: [1046] 発信者(from)変更 Date: Fri, 02 Mar 2001 22:37:16 +0900 From: matsui <>
//*********************************************************** // FromChange.mac:発信者(from)変更 // //#[説明] // メーラー部において発信者の変更を行います。 // 変更する発信者はダイアログから選択となります。 // // 送信待ちとなっているメールのfromを修正する場合に使用します。 // (メーラ部で使用します。) // //#[動作条件] // 「エディタ設定 → 編集クリップボードの履歴をとる」のチェックがonであること。 // //#[要 修正] // 1.「クリップボード履歴設定(修正部)」の部分を任意の発信者に修正します。 // 本例は3個の例ですので、用意したTextに応じ追加削除を行ってください。 //> このとき、ClearClipboardとInsertStringExはペアとなるようにします。 // // 2.発信者数が増減した場合「キャンセルされた場合はEpilogまでskip」の // 部分のcount数を修正します。 //> 発信者数の増減に応じ「IfStringNotFound( 15 ) ;」の数字を修正します。 // 発信者の追加 は 2命令の増となるので 15 + 追加Text数 × 2 とします。 // //#[使用方法] // 変更したいメールを1通選択した状態で実行します。 // 「履歴から貼り付け」のダイアログが表示されるので、対象の発信者を選択します。 // //#[履歴] // 2001/03/02 matsui 「履歴から貼り付け」でのキャンセルに対応 // 2001/02/08 matsui 新規作成 //*********************************************************** CHAR MacroComment[] = "発信者(from)変更\r\n2001/03/02 written by matsui" // #----------------------* Prolog SaveCurrentFindCondition( ) ; //保存:検索条件 SaveCurrentAutoFormSwitch( ) ; //保存:自動整形ON/OFF OffAutoForm( ) ; //OFF:自動整形 SaveMailEditHeaderEditMode( ) ; //保存:メール編集+ヘッダ編集 OnHeaderEdit( ) ; //ON:メール編集+ヘッダ編集 SetFocusToEditor( ) ; //フォーカス:メッセージ作成画面へ SetFocusToView( ) ; //フォーカス:ビュー画面へ // #----------------------* クリップボード履歴設定 ClearClipboard( ) ; //クリップボードをクリア InsertStringEx( 4 , "---------" ) ; //挿入:文字列(クリップボードの文頭) ClearClipboard( ) ; //クリップボードをクリア InsertStringEx( 4 , "memo <memo_@_memo>" ) ; ClearClipboard( ) ; //クリップボードをクリア InsertStringEx( 4 , "EdTex <EdTex_@_PemSoft>" ) ; ClearClipboard( ) ; //クリップボードをクリア InsertStringEx( 4 , "EdMax <EdMax_@_PemSoft>" ) ; // #----------------------* 発信者を選択し末尾に貼り付け KeyDown( VK_END , 2 ) ; //Ctrl+Endキー SetAnchor( ) ; //アンカーの設定 InsertString( "\r\n" ) ; //改行(チェック行の追加) SetAnchor( ) ; //アンカーの設定 PasteByHistoryDialog( ) ; //履歴から貼り付け // #----------------------* 「履歴から貼り付け」のキャンセルチェック SelectAnchorArea( ) ; //アンカー間を選択 KeyDown( VK_LEFT , 0 ) ; //←キー(チェック行の直前に移動) //文字列の検索(次を検索) FindString( TRUE , FALSE , FALSE , TRUE , FALSE , FALSE , FALSE , FALSE , FALSE , "^." ) ; // #----------------------* 検索未ヒット時は、指定行skip IfStringNotFound( 15 ) ; //キャンセルされた場合はEpilogまでskip //>> ~~ // >----------------------* 設定する発信者の切り取り SelectAnchorArea( ) ; //アンカー間を選択 KeyDown( VK_LEFT , 0 ) ; //←キー(チェック行の直前へ) DeleteString( ) ; //Deleteキー(追加した改行の削除) KeyDown( VK_END , 3 ) ; //Ctrl+Shift+Endキー ClearClipboard( ) ; //クリップボードをクリア CutString( ) ; //切り取り(履歴から貼り付けた発信者) // >----------------------* ヘッダのアドレスを変更 KeyDown( VK_HOME , 2 ) ; //Ctrl+Homeキー //文字列の検索(次を検索) FindString( TRUE , TRUE , TRUE , FALSE , FALSE , FALSE , FALSE , FALSE , FALSE , "From: " ) ; KeyDown( VK_RIGHT , 0 ) ; //→キー SetAnchor( ) ; //アンカーの設定(貼り付け範囲の始点) //文字列の検索(次を検索) FindString( TRUE , TRUE , TRUE , FALSE , TRUE , FALSE , FALSE , FALSE , FALSE , "\\n" ) ; KeyDown( VK_LEFT , 0 ) ; //←キー SetAnchor( ) ; //アンカーの設定(貼り付け範囲の終点) SelectAnchorArea( ) ; //アンカー間を選択 PasteString( ) ; //貼り付け // *----------------------* Epilog SetFocusToList( ) ; //フォーカス:リスト画面へ RestoreCurrentFindCondition( ) ; //復元:検索条件 RestoreAutoFormSwitch( ) ; //復元:自動整形ON/OFF RestoreMailEditHeaderEditMode( ) ; //復元:メール編集+ヘッダ編集 // End of EdMax Macro