OSDN Git Service

やさぐれクライアントからDelphi6の定型句バー対策を逆移植
authorC.Ponapalt <ponapalt@shillest.net>
Wed, 6 Jul 2005 05:26:38 +0000 (05:26 +0000)
committerC.Ponapalt <ponapalt@shillest.net>
Wed, 6 Jul 2005 05:26:38 +0000 (05:26 +0000)
URLを開く処理を共通化

bottleclient/LogForm.pas
bottleclient/MainForm.pas

index 42a903e..010fbd9 100755 (executable)
@@ -673,7 +673,6 @@ procedure TfrmLog.mnURLClick(Sender: TObject);
 var LogItem: TLogItem;
     URL: string;
     Urls: TStringList;
-    Command: string;
 
 begin
   if (lvwLog.Selected = nil) or (SelectedBottleLog = nil) then Exit;
@@ -682,15 +681,7 @@ begin
   try
     ExtractURLs(LogItem.Script, Urls);
     URL := Urls[(Sender as TMenuItem).Tag];
-    if Pref.BrowserExeName='' then
-    begin
-      ShellExecute(Handle, 'open', PChar(URL), nil, nil, SW_SHOW);
-    end else
-    begin
-      Command := Pref.BrowserExeName+' '+URL;
-      WinExec(PChar(Command), SW_SHOW);
-    end;
-
+    OpenBrowser(URL);
   finally
     Urls.Free;
   end;
index 71c73ce..7fbc879 100755 (executable)
@@ -407,6 +407,7 @@ function Token(const Str: String; const Delimiter: char;
   const Index: integer): String;
 
 function StringReplaceEx(const Before: String; List: THeadValue): String;
+procedure OpenBrowser(const Url: String);
 
 implementation
 
@@ -433,6 +434,18 @@ begin
   end;
 end;
 
+// \83u\83\89\83E\83U\82ÅURL\82ð\8aJ\82­\8f\88\97\9d
+procedure OpenBrowser(const Url: String);
+begin
+  if Pref.BrowserExeName='' then
+    begin
+      ShellExecute(HWND(nil), 'open', PChar(Url), nil, nil, SW_SHOW);
+    end else
+    begin
+      ShellExecute(HWND(nil), 'open', PChar(Pref.BrowserExeName), PChar(Url), nil, SW_SHOW);
+    end;
+end;
+
 // \95\8e\9a\97ñ\82ð\92u\82«\8a·\82¦\82é\83\86\81[\83e\83B\83\8a\83e\83B\8aÖ\90\94
 function StringReplaceEx(const Before: String; List: THeadValue): String;
 var
@@ -466,6 +479,7 @@ begin
   end;
 end;
 
+
 {TfrmSender}
 
 procedure TfrmSender.actConfirmExecute(Sender: TObject);
@@ -1127,10 +1141,21 @@ begin
   BuildMenu(mnPopConst, Simple);
   BuildMenu(mnPopUpConst.Items, Simple);
   BuildMenu(ConstBarMenu.Items, Simple);
-  //ConstMenuBar.Menu := nil;
-  ConstMenuBar.AutoSize := false;
-  ConstMenuBar.Width := 1000;
+
+  {$IFDEF CONDITIONALEXPRESSIONS}
+    {$IF Declared(CompilerVersion)}
+      {$IF CompilerVersion < 15.0} // Delphi6\88È\89º\82È\82ç
+        // \83\81\83j\83\85\81[\82ð\88ê\93x\8fÁ\82·
+        // \82È\82º\82©2\89ñ\96Ú\88È\8d~\82Ì\95\\8e¦\82ª\82¨\82©\82µ\82­\82È\82é\96â\91è\82Ì\8fC\90³
+        // ported from YasagureClient
+        ConstMenuBar.AutoSize := false;
+        ConstMenuBar.Menu := nil;
+      {$IFEND}
+    {$IFEND}
+  {$ENDIF}
+  
   ConstMenuBar.Menu := ConstBarMenu;
+  ConstMenuBar.Width := 1000;
   ConstMenuBar.AutoSize := true;
 end;
 
@@ -1367,17 +1392,8 @@ begin
 end;
 
 procedure TfrmSender.mnGoToHPClick(Sender: TObject);
-var
-  Command: string;
 begin
-  if Pref.BrowserExeName='' then
-    begin
-      ShellExecute(Handle, 'open', PChar(Pref.HomePage), nil, nil, SW_SHOW);
-    end else
-    begin
-      Command := Pref.BrowserExeName+' '+Pref.HomePage;
-      WinExec(PChar(Command), SW_SHOW);
-    end;
+  OpenBrowser(Pref.HomePage);
 end;
 
 procedure TfrmSender.ShowHintLabel(const Mes: String; Col: TColor);
@@ -2033,17 +2049,8 @@ begin
 end;
 
 procedure TfrmSender.mnGotoVoteClick(Sender: TObject);
-var
-  Command: string;
 begin
-  if Pref.BrowserExeName='' then
-    begin
-      ShellExecute(Handle, 'open', PChar(Pref.VotePage), nil, nil, SW_SHOW);
-    end else
-    begin
-      Command := Pref.BrowserExeName+' '+Pref.VotePage;
-      WinExec(PChar(Command), SW_SHOW);
-    end;
+  OpenBrowser(Pref.VotePage);
 end;
 
 procedure TfrmSender.tabChannelMouseMove(Sender: TObject;
@@ -2059,17 +2066,8 @@ begin
 end;
 
 procedure TfrmSender.mnGoToHelpClick(Sender: TObject);
-var
-  Command: string;
 begin
-  if Pref.BrowserExeName='' then
-    begin
-      ShellExecute(Handle, 'open', PChar(Pref.HelpPage), nil, nil, SW_SHOW);
-    end else
-    begin
-      Command := Pref.BrowserExeName+' '+Pref.HelpPage;
-      WinExec(PChar(Command), SW_SHOW);
-    end;
+  OpenBrowser(Pref.HelpPage);
 end;
 
 procedure TfrmSender.tabChannelMouseDown(Sender: TObject;