OSDN Git Service

タブの追加位置に、現在タブの右/左を追加
authorh677 <h677>
Sun, 11 Mar 2007 12:03:30 +0000 (12:03 +0000)
committerh677 <h677>
Sun, 11 Mar 2007 12:03:30 +0000 (12:03 +0000)
Giko.pas
GikoDataModule.pas
Option.dfm
Setting.pas

index bb37dc7..38f6653 100644 (file)
--- a/Giko.pas
+++ b/Giko.pas
@@ -2545,6 +2545,7 @@ var
        i, j, idx               : Integer;
        favItem                 : TFavoriteThreadItem;
        newBrowser      : TBrowserRecord;
+    ins : Integer;
 begin
 
        Result := nil;
@@ -2584,17 +2585,15 @@ begin
                        end;
                end;
                idx := BrowserTab.TabIndex;
-               if GikoSys.Setting.BrowserTabAppend = gtaFirst then begin
-                       newBrowser := TBrowserRecord.Create;
-            // \88ê\94Ô\8cÃ\82¢\83u\83\89\83E\83U\82ð\8aJ\95ú\82·\82é
-            ReleaseOldestBrowser;
-                       newBrowser.Browser := TWebBrowser(FBrowsers[BROWSER_COUNT - 1]);
-                       FBrowsers.Move(BROWSER_COUNT - 1, 0);
-                       //newBrowser.Browser.Navigate(BLANK_HTML);
-                       newBrowser.thread := ThreadItem;
-                       newBrowser.Repaint := true;
-//                     newBrowser.OnlyHundred := GikoSys.OnlyAHundredRes;
+        newBrowser := TBrowserRecord.Create;
+        // \88ê\94Ô\8cÃ\82¢\83u\83\89\83E\83U\82ð\8aJ\95ú\82·\82é
+        ReleaseOldestBrowser;
+        newBrowser.Browser := TWebBrowser(FBrowsers[BROWSER_COUNT - 1]);
+        FBrowsers.Move(BROWSER_COUNT - 1, 0);
+        newBrowser.thread := ThreadItem;
+        newBrowser.Repaint := true;
 
+               if GikoSys.Setting.BrowserTabAppend = gtaFirst then begin
                        BrowserTab.Tabs.InsertObject(0, GikoSys.GetShortName(ThreadItem.Title, 20), newBrowser);
                        if (not GikoSys.Setting.BrowserTabVisible) and (BrowserTab.Tabs.Count > 1) then begin
                                DeleteTab( TBrowserRecord( BrowserTab.Tabs.Objects[ 1 ] ) );
@@ -2604,18 +2603,7 @@ begin
                        if ActiveTab then begin
                                BrowserTab.TabIndex := 0;
                        end;
-
-               end else begin
-                       newBrowser := TBrowserRecord.Create;
-            // \88ê\94Ô\8cÃ\82¢\83u\83\89\83E\83U\82ð\8aJ\95ú\82·\82é
-            ReleaseOldestBrowser;
-                       newBrowser.Browser := TWebBrowser(FBrowsers[BROWSER_COUNT - 1]);
-                       FBrowsers.Move(BROWSER_COUNT - 1, 0);
-                       //newBrowser.Browser.Navigate(BLANK_HTML);
-                       newBrowser.thread := ThreadItem;
-//                     newBrowser.OnlyHundred := GikoSys.OnlyAHundredRes;
-                       newBrowser.Repaint := true;
-
+               end else if GikoSys.Setting.BrowserTabAppend = gtaLast then begin
                        i := BrowserTab.Tabs.AddObject(GikoSys.GetShortName(ThreadItem.Title, 20), newBrowser);
                        if (not GikoSys.Setting.BrowserTabVisible) and (BrowserTab.Tabs.Count > 1) then begin
                                DeleteTab( TBrowserRecord( BrowserTab.Tabs.Objects[ 0 ] ) );
@@ -2628,7 +2616,40 @@ begin
                                else
                                        BrowserTab.TabIndex := i;
                        end;
-               end;
+               end else begin
+            // \83^\83u\88Ê\92u\82ð\8eæ\93¾
+            ins := -1;
+            for i := BrowserTab.Tabs.Count - 1 downto 0 do begin
+            if TBrowserRecord(BrowserTab.Tabs.Objects[i]).Browser =
+                    TWebBrowser(FBrowsers[1]) then begin
+                    ins := i;
+                    break;
+                end;
+            end;
+            if GikoSys.Setting.BrowserTabAppend = gtaRight then begin
+                Inc(ins);
+                   end;
+            // \83^\83u\82ª\96³\82¢\82Æ\82«\82È\82Ç\91Î\8dô
+            if (ins < 0) then begin
+                ins := 0;
+            end;
+                       BrowserTab.Tabs.InsertObject(ins, GikoSys.GetShortName(ThreadItem.Title, 20), newBrowser);
+                       if (not GikoSys.Setting.BrowserTabVisible) and (BrowserTab.Tabs.Count > 1) then begin
+                if GikoSys.Setting.BrowserTabAppend = gtaRight then begin
+                               DeleteTab( TBrowserRecord( BrowserTab.Tabs.Objects[ 0 ] ) );
+                end else begin
+                    DeleteTab( TBrowserRecord( BrowserTab.Tabs.Objects[ 1 ] ) );
+                end;
+                       end;
+                       //end;
+                       BrowserTab.Repaint;
+                       if ActiveTab then begin
+                               if (not GikoSys.Setting.BrowserTabVisible) and (BrowserTab.Tabs.Count > 0) then
+                                       BrowserTab.TabIndex := 0
+                               else
+                                       BrowserTab.TabIndex := ins;
+                       end;
+        end;
                Result := newBrowser;
                if(ActiveTab) or (idx = -1) then begin
                        BrowserTab.OnChange(nil);
index 90ed480..8b62166 100644 (file)
@@ -2246,7 +2246,7 @@ begin
         try
             bound    := AStringList.Count - 1;
             if bound > -1 then begin
-                GikoSys.Setting.BrowserTabAppend := gtpLast;
+                GikoSys.Setting.BrowserTabAppend := gtaLast;
                 for i := 0 to bound do begin
                     item := BBSsFindThreadFromURL( AStringList[ i ] );
                     if item <> nil then
index 40c6af0..e1b4d08 100644 (file)
@@ -61,9 +61,9 @@ object OptionDialog: TOptionDialog
     Top = 4
     Width = 509
     Height = 389
-    ActivePage = TabSheet4
+    ActivePage = TabSheet1
     MultiLine = True
-    TabIndex = 7
+    TabIndex = 5
     TabOrder = 3
     OnChange = OptionTabChange
     object ConnectSheet: TTabSheet
@@ -253,7 +253,7 @@ object OptionDialog: TOptionDialog
           Top = 43
           Width = 417
           Height = 20
-          ItemHeight = 0
+          ItemHeight = 12
           TabOrder = 0
           Text = 'BoardURLComboBox'
         end
@@ -978,10 +978,12 @@ object OptionDialog: TOptionDialog
         Width = 477
         Height = 49
         Caption = #12473#12524#12483#12489#12398#12479#12502#36861#21152#20301#32622'(&D)'
-        Columns = 2
+        Columns = 4
         Items.Strings = (
           #19968#30058#22987#12417
-          #19968#30058#26368#24460)
+          #19968#30058#26368#24460
+          #29694#22312#12398#21491
+          #29694#22312#12398#24038)
         TabOrder = 3
       end
       object GroupBox8: TGroupBox
index c02fd64..2b8bff2 100644 (file)
@@ -15,7 +15,7 @@ const
 
 type
        TGikoTabPosition = (gtpTop, gtpBottom);                                                         // \83^\83u\88Ê\92u
-       TGikoTabAppend = (gtaFirst, gtpLast);                                                                   // \83^\83u\92Ç\89Á\88Ê\92u
+       TGikoTabAppend = (gtaFirst, gtaLast, gtaRight, gtaLeft);                                                                        // \83^\83u\92Ç\89Á\88Ê\92u
        TGikoTabStyle = (gtsTab, gtsButton, gtsFlat);                                   // \83^\83u\83X\83^\83C\83\8b
        TGikoListOrientation = (gloHorizontal, gloVertical);    // \83\8a\83X\83g\90\82\92¼\81E\90\85\95½
        TGikoListState = (glsMax, glsNormal, glsMin);                                   // \83\8a\83X\83g\83T\83C\83Y\8fó\91Ô