OSDN Git Service

Dubious script is warned instead of just canceled in actInsertCue
authornaru <bottle@mikage.to>
Thu, 12 Jun 2003 21:35:41 +0000 (21:35 +0000)
committernaru <bottle@mikage.to>
Thu, 12 Jun 2003 21:35:41 +0000 (21:35 +0000)
bottleclient/MainForm.pas

index 5c1d310..befe331 100755 (executable)
@@ -2475,8 +2475,10 @@ end;
 
 procedure TfrmSender.actInsertCueExecute(Sender: TObject);
 var InsertItem: TLogItem;
-    i, errCount: integer;
+    i, errCount, Res: integer;
     Log: TBottleLogList;
+    SkipErrors: boolean; // \83G\83\89\81[\82ð\96³\8e\8b\82µ\82Ä\82·\82×\82Ä\8dÄ\90\82·\82é\82©\82Ç\82¤\82©
+    ErrorMes: String; // \83X\83N\83\8a\83v\83g\82Ì\83G\83\89\81[\82Ì\93à\97e
 begin
   if FBottleSstp.CueCount > 0 then begin
     if MessageDlg(Format('\8c»\8dÝ\8dÄ\91\97\83L\83\85\81[\82É\93ü\82Á\82Ä\82¢\82é%d\8c\8f\82Ì\96¢\94z\91\97\83{\83g\83\8b\82ð\83N\83\8a\83A\82µ\82Ä\81A'+
@@ -2491,13 +2493,24 @@ begin
   if Log = nil then Exit;
   FBottleSSTP.OnResendCountChange := nil;
   errCount := 0;
+  SkipErrors := false;
   for i := frmLog.lvwLog.Selected.Index downto 0 do begin
     if (Log[i] as TLogItem).LogType <> ltBottle then Continue;
     InsertItem := TLogItem.Create(Log[i] as TLogItem);
     try
-      InsertItem.Script := ScriptTransForSSTP(InsertItem.Script);
-      if InsertItem.Script = '' then begin
-        raise Exception.Create('Script syntax error');
+      InsertItem.Script := ScriptTransForSSTP(InsertItem.Script, ErrorMes);
+      if ErrorMes <> '' then
+      begin
+        Res := MessageDlg('\83X\83N\83\8a\83v\83g\82É\96â\91è\82ª\82 \82é\89Â\94\\90«\82ª\82 \82è\82Ü\82·\81B' +
+          '\8dÄ\90\82µ\82Ü\82·\82©?'#13#10 + ErrorMes, mtWarning,
+          mbYesNoCancel, 0);
+        if Res = mrNo then
+          raise Exception.Create('Script Syntax Error')
+        else if Res = mrCancel then
+        begin
+          InsertItem.Free;
+          Break;
+        end;
       end;
       if InsertItem.Ghost = '' then begin
         if ChannelList.Channel[InsertItem.Channel] <> nil then