| 2545 |
i, j, idx : Integer; |
i, j, idx : Integer; |
| 2546 |
favItem : TFavoriteThreadItem; |
favItem : TFavoriteThreadItem; |
| 2547 |
newBrowser : TBrowserRecord; |
newBrowser : TBrowserRecord; |
| 2548 |
|
ins : Integer; |
| 2549 |
begin |
begin |
| 2550 |
|
|
| 2551 |
Result := nil; |
Result := nil; |
| 2585 |
end; |
end; |
| 2586 |
end; |
end; |
| 2587 |
idx := BrowserTab.TabIndex; |
idx := BrowserTab.TabIndex; |
| 2588 |
if GikoSys.Setting.BrowserTabAppend = gtaFirst then begin |
newBrowser := TBrowserRecord.Create; |
| 2589 |
newBrowser := TBrowserRecord.Create; |
// 一番古いブラウザを開放する |
| 2590 |
// 一番古いブラウザを開放する |
ReleaseOldestBrowser; |
| 2591 |
ReleaseOldestBrowser; |
newBrowser.Browser := TWebBrowser(FBrowsers[BROWSER_COUNT - 1]); |
| 2592 |
newBrowser.Browser := TWebBrowser(FBrowsers[BROWSER_COUNT - 1]); |
FBrowsers.Move(BROWSER_COUNT - 1, 0); |
| 2593 |
FBrowsers.Move(BROWSER_COUNT - 1, 0); |
newBrowser.thread := ThreadItem; |
| 2594 |
//newBrowser.Browser.Navigate(BLANK_HTML); |
newBrowser.Repaint := true; |
|
newBrowser.thread := ThreadItem; |
|
|
newBrowser.Repaint := true; |
|
|
// newBrowser.OnlyHundred := GikoSys.OnlyAHundredRes; |
|
| 2595 |
|
|
| 2596 |
|
if GikoSys.Setting.BrowserTabAppend = gtaFirst then begin |
| 2597 |
BrowserTab.Tabs.InsertObject(0, GikoSys.GetShortName(ThreadItem.Title, 20), newBrowser); |
BrowserTab.Tabs.InsertObject(0, GikoSys.GetShortName(ThreadItem.Title, 20), newBrowser); |
| 2598 |
if (not GikoSys.Setting.BrowserTabVisible) and (BrowserTab.Tabs.Count > 1) then begin |
if (not GikoSys.Setting.BrowserTabVisible) and (BrowserTab.Tabs.Count > 1) then begin |
| 2599 |
DeleteTab( TBrowserRecord( BrowserTab.Tabs.Objects[ 1 ] ) ); |
DeleteTab( TBrowserRecord( BrowserTab.Tabs.Objects[ 1 ] ) ); |
| 2603 |
if ActiveTab then begin |
if ActiveTab then begin |
| 2604 |
BrowserTab.TabIndex := 0; |
BrowserTab.TabIndex := 0; |
| 2605 |
end; |
end; |
| 2606 |
|
end else if GikoSys.Setting.BrowserTabAppend = gtaLast then begin |
|
end else begin |
|
|
newBrowser := TBrowserRecord.Create; |
|
|
// 一番古いブラウザを開放する |
|
|
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; |
|
|
|
|
| 2607 |
i := BrowserTab.Tabs.AddObject(GikoSys.GetShortName(ThreadItem.Title, 20), newBrowser); |
i := BrowserTab.Tabs.AddObject(GikoSys.GetShortName(ThreadItem.Title, 20), newBrowser); |
| 2608 |
if (not GikoSys.Setting.BrowserTabVisible) and (BrowserTab.Tabs.Count > 1) then begin |
if (not GikoSys.Setting.BrowserTabVisible) and (BrowserTab.Tabs.Count > 1) then begin |
| 2609 |
DeleteTab( TBrowserRecord( BrowserTab.Tabs.Objects[ 0 ] ) ); |
DeleteTab( TBrowserRecord( BrowserTab.Tabs.Objects[ 0 ] ) ); |
| 2616 |
else |
else |
| 2617 |
BrowserTab.TabIndex := i; |
BrowserTab.TabIndex := i; |
| 2618 |
end; |
end; |
| 2619 |
end; |
end else begin |
| 2620 |
|
// タブ位置を取得 |
| 2621 |
|
ins := -1; |
| 2622 |
|
for i := BrowserTab.Tabs.Count - 1 downto 0 do begin |
| 2623 |
|
if TBrowserRecord(BrowserTab.Tabs.Objects[i]).Browser = |
| 2624 |
|
TWebBrowser(FBrowsers[1]) then begin |
| 2625 |
|
ins := i; |
| 2626 |
|
break; |
| 2627 |
|
end; |
| 2628 |
|
end; |
| 2629 |
|
if GikoSys.Setting.BrowserTabAppend = gtaRight then begin |
| 2630 |
|
Inc(ins); |
| 2631 |
|
end; |
| 2632 |
|
// タブが無いときなど対策 |
| 2633 |
|
if (ins < 0) then begin |
| 2634 |
|
ins := 0; |
| 2635 |
|
end; |
| 2636 |
|
BrowserTab.Tabs.InsertObject(ins, GikoSys.GetShortName(ThreadItem.Title, 20), newBrowser); |
| 2637 |
|
if (not GikoSys.Setting.BrowserTabVisible) and (BrowserTab.Tabs.Count > 1) then begin |
| 2638 |
|
if GikoSys.Setting.BrowserTabAppend = gtaRight then begin |
| 2639 |
|
DeleteTab( TBrowserRecord( BrowserTab.Tabs.Objects[ 0 ] ) ); |
| 2640 |
|
end else begin |
| 2641 |
|
DeleteTab( TBrowserRecord( BrowserTab.Tabs.Objects[ 1 ] ) ); |
| 2642 |
|
end; |
| 2643 |
|
end; |
| 2644 |
|
//end; |
| 2645 |
|
BrowserTab.Repaint; |
| 2646 |
|
if ActiveTab then begin |
| 2647 |
|
if (not GikoSys.Setting.BrowserTabVisible) and (BrowserTab.Tabs.Count > 0) then |
| 2648 |
|
BrowserTab.TabIndex := 0 |
| 2649 |
|
else |
| 2650 |
|
BrowserTab.TabIndex := ins; |
| 2651 |
|
end; |
| 2652 |
|
end; |
| 2653 |
Result := newBrowser; |
Result := newBrowser; |
| 2654 |
if(ActiveTab) or (idx = -1) then begin |
if(ActiveTab) or (idx = -1) then begin |
| 2655 |
BrowserTab.OnChange(nil); |
BrowserTab.OnChange(nil); |