|
秀まるおさん今日は、Iranoan です。
おそらく仕様だと思うのですが、「優先度:高」のマークについての報告です。
このマークをマーク代わりにも使えるように、末尾のマクロを使っています。
(まだ抜けている条件があるかもしれませんが...)
そこで、このマクロを「送信済み」「受信」メールにおいて、エディタ・
ウィンドウで実行した時に、実行した時に「タイトル・バー」先頭の [高] は
切り替わるものの、アイコンは最初に開いた状態のまま付いたまま、もしくは
付かないままです。
こちらの環境は、WindowsXP+IE7.0+秀丸メール Ver. 5.16beta13 です。
//-------------------- メールの「優先度:高」を toggle switch ------------------
loaddll "tkinfo.dll";
#type = dllfunc("MailType");
if( #type == -1)goto End;
if( dllfunc("IsTuruKameMain") ){
if( !dllfunc("BeginEditMail") )goto DllError;
#openMail = 1;
}
else{
#openMail = 0;
#x = x;
#y = y;
if( #type != 3 && #type != 4 ){
if(!dllfunc( "SetHighPriority", (dllfunc( "IsHighPriority")^1)))
goto DllError;
}
//if( (!readonly) & updated )goto End;
if( #type == 4 ){
if( !dllfunc( "SetMailFlag", "send", 0 ) )goto DllError;
}
if( readonly ){
if( !dllfunc("EnableEdit") )goto DllError;
}
}
##result = dllfunc( "GetMailFlag", "priority1" );
##altered = dllfunc( "GetMailFlag", "altered" );
if( ##result ){
##tmp = dllfunc( "DeleteHeader","Priority" );
##tmp = dllfunc( "DeleteHeader","X-Priority");
##tmp = dllfunc( "DeleteHeader","Importance");
}
else{
#head = dllfunc("HeaderView");
$tmp = dllfuncstr("SetHeader","Priority","urgent");
#tmp = dllfunc("SwitchHeaderView",#head);
}
if( #openMail ){
if( !dllfunc( "SaveEditMail", 0, 1 ) )goto DllError;
}
else{
save;
moveto #x,#y;
if( #type == 4 ){
if( !dllfunc( "SetMailFlag", "send", 1 ) )goto DllError;
if( !dllfunc( "SetMailFlag", "sent", 1 ) )goto DllError;
}
}
goto End;
DllError:
message "DLL 関数失敗";
End:
#tmp = dllfunc( "SetMailFlag", "altered", ##altered);
freedll;
endmacro;
|
|