MakeReply, QuotedSelectedRootText and etc.No.05710
ひろ さん 01/09/11 17:54
 
 秀まるおさん今日は、ひろです。
 既に返信が開かれている場合は MakeReply が、転送が開かれている場合
は、MakeForward の返り値が 0 になります。これはバグでしょうか、それ
ともヘルプには、
> 返り値(数値型)
>
>  成功すると1、失敗すると0を返します。(普通、失敗することはありえません
>が)
とありますが、ウィンドの切り替え自体は上手く言っているので、返り値が
0 なら既に開かれていると解釈して良いのでしょうか?

 またこの様な場合、QuotedSelectedRootText と QuotedSelectedRootText2
が上手く働かず、未選択の場合と同じ動きになります。
 こちらの環境は、Windows98+IE5.5+鶴亀 Ver.1.35 です。

[ ]
RE:05710 MakeReply, QuotedSelectedRootText and etc.No.05721
秀まるお さん 01/09/12 10:32
 
 ソースコードを見直したら、たしかに返信メールが既に存在していた時の
MakeReplyはFALSEで返るようです。

 せっかくなのでそういう仕様ってことにさせていただきます。

 他にFALSEが返るケースとしては、

 − メールが何も選択されてない場合。
 − 現在のメールが書き換え許可で、しかも何か書き換えた形跡がある場合。
 − 返信メールのエディタ起動で何らかの内部エラーが発生した場合。
   (例えばエディタ起動数の制限などのエラー)

 があるようです。

[ ]
RE:05710 MakeReply, QuotedSelectedRootText and etc.No.05722
秀まるお さん 01/09/12 10:33
 
 あ、ヘルプにも追加しておきます。

[ ]
RE:05721 MakeReply, QuotedSelectedRootText and etc.No.05726
ひろ さん 01/09/12 21:03
 
 秀まるおさん今日は、ひろです。
>  ソースコードを見直したら、たしかに返信メールが既に存在していた時の
> MakeReplyはFALSEで返るようです。
 了解しました。MakeReply, MakeForward については、FALSE になる
ケースを予め調べるようにします。

 さて、QuotedSelectedRootText, QuotedSelectedRootText2 の件は
どうなったでしょう。あと確認していませんが、SelectedRootText,
SelectedRootText2 も同様の問題を含んでいるのかな?

[ ]
RE:05726 MakeReply, QuotedSelectedRootText and etc.No.05734
秀まるお さん 01/09/14 17:44
 
>  さて、QuotedSelectedRootText, QuotedSelectedRootText2 の件は
> どうなったでしょう。

 QuotedSelected等は、切り替わった側のエディタが起動された時点での値を
返してしまいます。

[ ]
RE:05734 MakeReply, QuotedSelectedRootText and etc.No.05735
ひろ さん 01/09/14 19:57
 
 秀まるおさん今日は、ひろです。
>  QuotedSelected等は、切り替わった側のエディタが起動された時点での値を
> 返してしまいます。
 ということは、これは仕様ということですね。解りました。

[ ]
RE:05734 QuotedSelectedRootText etc.No.05736
ひろ さん 01/09/16 00:39
 
 秀まるおさん今日は、ひろです。
 何度もすいません。
#tmp = dllfunc("MakeReply");
message dllfuncstr("QuotedSelectedRootText");
というマクロは、返信用のエディタウィンドが既に開いていたかどうかに関
わらず、常に空になるのは仕様という認識でよろしいでしょうか?
 返信用エディタウィンドが既に開いていた場合は、
>  QuotedSelected等は、切り替わった側のエディタが起動された時点での値を
> 返してしまいます。
という事で理解できますが、エディタが起動していない場合も空なのはあま
りに不便です。

[ ]
RE:05736 QuotedSelectedRootText etc.No.05739
秀まるお さん 01/09/17 10:35
 
 QuotedSelectedRootTextは、返信メール/転送メールを起動する前に選択さ
れていた文字列を引用付きで返します。今確認した限りは正しく動作しました。

 ということで、

#tmp = dllfunc("MakeReply");
message dllfuncstr("QuotedSelectedRootText");

 というマクロは、このマクロを実行する前に何か範囲選択していれば、それ
を引用付きで返すはずです。

 返信用のエディタが既に起動していた場合はそのエディタについての物を返
してしまいますが、そうでなければ「常に空になる」ということは無いはずで
す。

[ ]
RE:05739 QuotedSelectedRootText etc.No.05743
ひろ さん 01/09/17 12:25
 
 秀まるおさん今日は、ひろです。
> #tmp = dllfunc("MakeReply");
> message dllfuncstr("QuotedSelectedRootText");
>
>  というマクロは、このマクロを実行する前に何か範囲選択していれば、それ
> を引用付きで返すはずです。
 大変失礼しました。私のミスですm(__)m。
 具体的には、直前に gettext を使っていました。

[ ]