From: naru Date: Fri, 20 Dec 2002 16:44:27 +0000 (+0000) Subject: Support synchronized session at UpdateScriptConversationNoColor X-Git-Tag: BOTTLE2-25~2 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=4cdba5f1e49b7c766630eb306bd83e18b0437fef;p=winbottle%2Fwinbottle.git Support synchronized session at UpdateScriptConversationNoColor --- diff --git a/bottleclient/LogForm.pas b/bottleclient/LogForm.pas index b8d8b25..681baa4 100755 --- a/bottleclient/LogForm.pas +++ b/bottleclient/LogForm.pas @@ -362,7 +362,7 @@ end; procedure TfrmLog.UpdateScriptConversationNoColor(const Script: String); var Scr: String; i: integer; - UnyuTalking, Talked, LastUnyuTalked: boolean; + UnyuTalking, Talked, LastUnyuTalked, InSynchronize, LastInSynchronize: boolean; begin Scr := Script; frmSender.DoTrans(Scr, [toConvertURL]); @@ -376,23 +376,25 @@ begin Talked := false; UnyuTalking := false; LastUnyuTalked := false; + InSynchronize := false; + LastInSynchronize := false; for i := 0 to SsParser.Count-1 do begin - if (SsParser[i] = '\u') and not UnyuTalking then begin - UnyuTalking := true; - end; - if (SsParser[i] = '\h') and UnyuTalking then begin - UnyuTalking := false; - end; + if SsParser[i] = '\u' then UnyuTalking := true; + if SsParser[i] = '\h' then UnyuTalking := false; + if SsParser[i] = '\_s' then InSynchronize := not InSynchronize; if SsParser.MarkUpType[i] in [mtStr, mtMeta] then begin - if not Talked then begin - if UnyuTalking then Scr := '‚¤:' else Scr := '‚³:'; + if not Talked then begin // ƒXƒNƒŠƒvƒgÅ‰‚̃ZƒŠƒt + if InSynchronize then Scr := '—¼F' + else if UnyuTalking then Scr := '‚¤:' else Scr := '‚³:'; end; - if Talked and (UnyuTalking <> LastUnyuTalked) then begin + if Talked and ((UnyuTalking <> LastUnyuTalked) or (InSynchronize <> LastInSynchronize)) then begin Scr := Scr + #13#10; - if UnyuTalking then Scr := Scr + '‚¤:' else Scr := Scr + '‚³:'; + if InSynchronize then Scr := Scr + '—¼F' + else if UnyuTalking then Scr := Scr + '‚¤:' else Scr := Scr + '‚³:'; end; Scr := Scr + SsParser[i]; Talked := true; + LastInSynchronize := InSynchronize; LastUnyuTalked := UnyuTalking; end; end;