OSDN Git Service

HUTagTo01Tag implemented
authornaru <bottle@mikage.to>
Thu, 6 Mar 2003 10:07:31 +0000 (10:07 +0000)
committernaru <bottle@mikage.to>
Thu, 6 Mar 2003 10:07:31 +0000 (10:07 +0000)
bottleclient/BottleDef.pas
bottleclient/LogForm.pas
bottleclient/MainForm.pas
bottleclient/SettingForm.dfm
bottleclient/SettingForm.pas

index 6fa3eb6..b0f23f5 100755 (executable)
@@ -72,6 +72,7 @@ type
     FClearAfterSend: boolean;
     FAutoJoinChannels: TStrings;
     FFMOName: TStrings;
+    FHUTagTo01Tag: boolean;
     procedure SetColorScript(const Value: boolean);
     procedure SetColorTimeLagValue(const Value: integer);
     procedure SetDblClkInsert(const Value: boolean);
@@ -119,6 +120,7 @@ type
     procedure SetAutoJoinChannels(const Value: TStrings);
     procedure SetFMOName(const Value: TStrings);
     function GetDefaultScript: String;
+    procedure SetHUTagTo01Tag(const Value: boolean);
   public
     property NoSendGhostList: boolean read FNoSendGhostList write SetNoSendGhostList;
     property ConfirmOnExit: boolean read FConfirmOnExit write SetConfirmOnExit;
@@ -130,6 +132,7 @@ type
     property NoTransUrl: boolean read FNoTransUrl write SetNoTransUrl;
     property SilentWhenHidden: boolean read FSilentWhenHidden write SetSilentWhenHidden;
     property FixMessySurface: boolean read FFixMessySurface write SetFixMessySurface;
+    property HUTagTo01Tag: boolean read FHUTagTo01Tag write SetHUTagTo01Tag;
     property ResetIfGhostAfterSend: boolean read FResetIfGhostAfterSend write SetResetIfGhostAfterSend;
     property ClearAfterSend: boolean read FClearAfterSend write SetClearAfterSend;
     property IgnoreFrequentYenS: boolean read FIgnoreFrequentYenS write SetIgnoreFrequentYenS;
@@ -237,7 +240,8 @@ type
     toIgnoreFrequentYenS,
     toWaitScriptEnd,
     toFixMessySurface,
-    toWarnMessySurface
+    toWarnMessySurface,
+    toHUTagTo01Tag
   );
 
   TScriptTransOptions = set of TScriptTransOption;
@@ -314,6 +318,7 @@ begin
     NoTransUrl := FIni.ReadBool('System', 'NoTransUrl', false);
     SilentWhenHidden:= FIni.ReadBool('System', 'SilentWhenHidden', true);
     FixMessySurface := FIni.ReadBool('System', 'FixMessySurface', false);
+    HUTagTo01Tag := FIni.ReadBool('System', 'HUTagTo01Tag', false);
     ResetIfGhostAfterSend := FIni.ReadBool('System', 'ResetIfGhostAfterSend', false);
     ClearAfterSend := FIni.ReadBool('System', 'ClearAfterSend', false);
 
@@ -347,6 +352,7 @@ begin
         FMarkErrorColor := clRed;
       end;
     end;
+
     WhenReturn      := TReturnKeyFunction(FIni.ReadInteger('System', 'WhenReturn', 0));
     WhenShiftReturn := TReturnKeyFunction(FIni.ReadInteger('System', 'WhenShiftReturn', 0));
     WhenCtrlReturn  := TReturnKeyFunction(FIni.ReadInteger('System', 'WhenCtrlReturn', 0));
@@ -651,6 +657,7 @@ begin
   FIni.WriteBool('System', 'NoTransUrl', NoTransUrl);
   FIni.WriteBool('System', 'SilentWhenHidden', SilentWhenHidden);
   FIni.WriteBool('System', 'FixMessySurface', FixMessySurface);
+  FIni.WriteBool('System', 'HUTagTo01Tag', HUTagTo01Tag);
   FIni.WriteBool('System', 'ResetIfGhostAfterSend', ResetIfGhostAfterSend);
   FIni.WriteBool('System', 'ClearAfterSend', ClearAfterSend);
 
@@ -703,6 +710,11 @@ begin
   Result := FDefaultScript.Text;
 end;
 
+procedure TBottlePrefs.SetHUTagTo01Tag(const Value: boolean);
+begin
+  FHUTagTo01Tag := Value;
+end;
+
 { TChannelListItem }
 
 procedure TChannelListItem.SetGhost(const Value: String);
index 9a92e1b..f2476b9 100755 (executable)
@@ -303,6 +303,7 @@ begin
   if Pref.NoTransUrl then Opt := Opt + [toNoChoice];
   if Pref.IgnoreFrequentYenS then Opt := Opt + [toIgnoreFrequentYenS];
   if Pref.FixMessySurface then Opt := Opt + [toFixMessySurface];
+  if Pref.HUTagTo01Tag then Opt := Opt + [toHUTagTo01Tag];
   frmSender.DoTrans(Script, Opt);
 
   if ChannelList.Channel[Log.Channel] <> nil then
index f7e6160..b2b62c5 100755 (executable)
@@ -357,6 +357,7 @@ begin
   Script := GetScriptText;
   if Pref.IgnoreTimeCritical then Opt := [toIgnoreTimeCritical] else Opt := [];
   if Pref.NoTransUrl then Opt := Opt + [toNoChoice];
+  if Pref.HUTagTo01Tag then Opt := Opt + [toHUTagTo01Tag];
   Err := DoTrans(Script, Opt + [toConvertURL, toWarnMessySurface]);
   if Err <> '' then begin
     ShowMessage(Err);
@@ -1101,7 +1102,7 @@ end;
 
 function TfrmSender.DoTrans(var Script: String;
   Options: TScriptTransOptions): String;
-var Orig, UrlCancel: String;
+var Orig, UrlCancel, Mark: String;
     Url, UrlName: array[0..6] of String;
     i, j, u, UrlCount: integer;
     LastSurfaceH, LastSurfaceU: integer;
@@ -1154,36 +1155,31 @@ begin
         end;
       end else Script := Script + SsParser[i];
     end else begin
-      if SsParser[i] = '\h' then begin
+      Mark := SsParser[i];
+      if Mark = '\h' then begin
         UnyuTalking := false;
-        if QuickSection then begin
-          //Result := '\83N\83C\83b\83N\83Z\83N\83V\83\87\83\93\92\86\82É"\h", "\u"\82Í\8eg\82¦\82Ü\82¹\82ñ\81B';
-          //Exit;
-        end;
-      end else if SsParser[i] = '\u' then begin
+        if toHUTagTo01Tag in Options then Mark := '\0';
+      end else if Mark = '\u' then begin
         UnyuTalking := true;
-        if QuickSection then begin
-          //Result := '\83N\83C\83b\83N\83Z\83N\83V\83\87\83\93\92\86\82É"\h", "\u"\82Í\8eg\82¦\82Ü\82¹\82ñ\81B';
-          //Exit;
-        end;
-      end else if SsParser[i] = '\_q' then begin
+        if toHUTagTo01Tag in Options then Mark := '\1';
+      end else if Mark = '\_q' then begin
         QuickSection := not QuickSection;
-      end else if SsParser.Match(SsParser[i], '\s%b') > 0 then begin
+      end else if SsParser.Match(Mark, '\s%b') > 0 then begin
         if UnyuTalking then begin
-          LastSurfaceU := StrToIntDef(SsParser.GetParam(SsParser[i], 1),
+          LastSurfaceU := StrToIntDef(SsParser.GetParam(Mark, 1),
                                       LastSurfaceU);
         end else begin
-          LastSurfaceH := StrToIntDef(SsParser.GetParam(SsParser[i], 1),
+          LastSurfaceH := StrToIntDef(SsParser.GetParam(Mark, 1),
                                       LastSurfaceH);
         end;
-      end else if SsParser.Match(SsParser[i], '\s%d') > 0 then begin
+      end else if SsParser.Match(Mark, '\s%d') > 0 then begin
         if UnyuTalking then begin
-          LastSurfaceU := StrToIntDef(SsParser[i][3], LastSurfaceU);
+          LastSurfaceU := StrToIntDef(Mark[3], LastSurfaceU);
         end else begin
-          LastSurfaceH := StrToIntDef(SsParser[i][3], LastSurfaceH);
+          LastSurfaceH := StrToIntDef(Mark[3], LastSurfaceH);
         end;
       end;
-      Script := Script + SsParser[i];
+      Script := Script + Mark;
     end;
   end;
   if UrlCount > 0 then begin
@@ -1644,6 +1640,7 @@ begin
     TransOpt := [toConvertURL, toWaitScriptEnd];
   if Pref.IgnoreFrequentYenS then TransOpt := TransOpt + [toIgnoreFrequentYenS];
   if Pref.FixMessySurface then TransOpt := TransOpt + [toFixMessySurface];
+  if Pref.HUTagTo01Tag then TransOpt := TransOpt + [toHUTagTo01Tag];
   Err := DoTrans(Script, TransOpt);
   if Err <> '' then begin
     frmLog.AddCurrentSystemLog('SYSTEM', '\96â\91è\82Ì\82 \82é\89Â\94\\90«\82Ì\82 \82é\83X\83N\83\8a\83v\83g\82ª\93Í\82¢\82½\82½\82ß\81A'+
index 2b77441..1301245 100755 (executable)
@@ -27,7 +27,7 @@ object frmSetting: TfrmSetting
     Top = 8
     Width = 379
     Height = 306
-    ActivePage = tstGeneral
+    ActivePage = tstReceive
     Anchors = [akLeft, akTop, akRight, akBottom]
     TabOrder = 0
     object tstGeneral: TTabSheet
@@ -308,16 +308,19 @@ object frmSetting: TfrmSetting
           838B939E928589B982F096C282E782B382C882A21053696C656E745768656E48
           696464656E02000100080200000108001054435043436865636B426F784E6F64
           6501148354815B8374834283588D7282EA82F096DF82B70F4669784D65737379
-          5375726661636502000100080200000108000009020000010211000D54435043
-          47726F75704E6F6465010A9197904D837B8367838B034F757402000110544350
-          43436865636B426F784E6F64650128837B8367838B9197904D8CE382C9835381
-          5B8358836782F0836683748348838B836782C996DF82B7155265736574496647
-          686F7374416674657253656E6402000100080200000108001054435043436865
-          636B426F784E6F64650122837B8367838B9197904D8CE382C98358834E838A83
-          768367979382F0834E838A83410E436C656172416674657253656E6402000100
-          080200000108001054435043436865636B426F784E6F646501269197904D914F
-          82C9836083838393836C838B82C68353815B8358836782F08A6D944682B782E9
-          07436F6E6669726D020001000802000001080000090200000102110000}
+          5375726661636502000100080200000108001054435043436865636B426F784E
+          6F6465011C5C682C205C7582F05C302C205C3182C995CF8AB782B582C4935D91
+          970C4855546167546F3031546167020001000802000001080000090200000102
+          11000D5443504347726F75704E6F6465010A9197904D837B8367838B034F7574
+          0200011054435043436865636B426F784E6F64650128837B8367838B9197904D
+          8CE382C98353815B8358836782F0836683748348838B836782C996DF82B71552
+          65736574496647686F7374416674657253656E64020001000802000001080010
+          54435043436865636B426F784E6F64650122837B8367838B9197904D8CE382C9
+          8358834E838A83768367979382F0834E838A83410E436C656172416674657253
+          656E6402000100080200000108001054435043436865636B426F784E6F646501
+          269197904D914F82C9836083838393836C838B82C68353815B8358836782F08A
+          6D944682B782E907436F6E6669726D0200010008020000010800000902000001
+          02110000}
       end
     end
     object tstChannel: TTabSheet
index 216e3dc..4c0d839 100755 (executable)
@@ -117,6 +117,7 @@ begin
         (GetNodeFromKeyPath('Arrive\UrlTag\WithSelection') as TCPCRadioNode).Check;
       (GetNodeFromKeyPath('Arrive\SilentWhenHidden') as TCPCCheckBoxNode).Checked := Pref.SilentWhenHidden;
       (GetNodeFromKeyPath('Arrive\FixMessySurface') as TCPCCheckBoxNode).Checked := Pref.FixMessySurface;
+      (GetNodeFromKeyPath('Arrive\HUTagTo01Tag') as TCPCCheckBoxNode).Checked := Pref.HUTagTo01Tag;
       (GetNodeFromKeyPath('Out\ResetIfGhostAfterSend') as TCPCCheckBoxNode).Checked := Pref.ResetIfGhostAfterSend;
       (GetNodeFromKeyPath('Out\ClearAfterSend') as TCPCCheckBoxNode).Checked := Pref.ClearAfterSend;
       (GetNodeFromKeyPath('Out\Confirm') as TCPCCheckBoxNode).Checked := not Pref.NoConfirm;
@@ -171,6 +172,7 @@ begin
       Pref.NoTransUrl := (GetNodeFromKeyPath('Arrive\UrlTag\NoSelection') as TCPCRadioNode).Checked;
       Pref.SilentWhenHidden := (GetNodeFromKeyPath('Arrive\SilentWhenHidden') as TCPCCheckBoxNode).Checked;
       Pref.FixMessySurface := (GetNodeFromKeyPath('Arrive\FixMessySurface') as TCPCCheckBoxNode).Checked;
+      Pref.HUTagTo01Tag := (GetNodeFromKeyPath('Arrive\HUTagTo01Tag') as TCPCCheckBoxNode).Checked;
       Pref.ResetIfGhostAfterSend := (GetNodeFromKeyPath('Out\ResetIfGhostAfterSend') as TCPCCheckBoxNode).Checked;
       Pref.ClearAfterSend := (GetNodeFromKeyPath('Out\ClearAfterSend') as TCPCCheckBoxNode).Checked;
       Pref.NoConfirm := not (GetNodeFromKeyPath('Out\Confirm') as TCPCCheckBoxNode).Checked;