OSDN Git Service

最新100レスのみ表示をすべてのレスを表示、レス絞込みと同じグループに入れ、排他的に扱われるようにした。
authoryoffy <yoffy>
Mon, 2 Aug 2004 12:48:19 +0000 (12:48 +0000)
committeryoffy <yoffy>
Mon, 2 Aug 2004 12:48:19 +0000 (12:48 +0000)
Giko.dfm
Giko.pas
ToolBarUtil.pas

index 4c440f8..9fd819f 100644 (file)
--- a/Giko.dfm
+++ b/Giko.dfm
@@ -1,6 +1,6 @@
 object GikoForm: TGikoForm
-  Left = 246
-  Top = 186
+  Left = -69
+  Top = 288
   HorzScrollBar.Visible = False
   VertScrollBar.Visible = False
   AutoScroll = False
@@ -712,57 +712,57 @@ object GikoForm: TGikoForm
                 Action = SelectResAction
                 Style = tbsCheck
               end
-              object ToolButton16: TToolButton
+              object AHundredResButton: TToolButton
                 Left = 216
                 Top = 0
+                Action = OnlyAHundredRes
+                Style = tbsCheck
+              end
+              object ToolButton16: TToolButton
+                Left = 241
+                Top = 0
                 Width = 8
                 Caption = 'ToolButton16'
                 ImageIndex = 13
                 Style = tbsSeparator
               end
               object EditorButton: TToolButton
-                Left = 224
+                Left = 249
                 Top = 0
                 Action = EditorAction
               end
               object ToolButton11: TToolButton
-                Left = 249
+                Left = 274
                 Top = 0
                 Width = 8
                 Style = tbsSeparator
               end
               object IEButton: TToolButton
-                Left = 257
+                Left = 282
                 Top = 0
                 Action = IEAction
                 DropdownMenu = BrowserPopupMenu
                 Style = tbsDropDown
               end
               object ToolButton5: TToolButton
-                Left = 293
+                Left = 318
                 Top = 0
                 Width = 8
                 Style = tbsSeparator
               end
               object ItemReloadButton: TToolButton
-                Left = 301
+                Left = 326
                 Top = 0
                 Action = ItemReloadAction
               end
               object ToolButton20: TToolButton
-                Left = 326
+                Left = 351
                 Top = 0
                 Width = 8
                 Caption = 'ToolButton20'
                 ImageIndex = 29
                 Style = tbsSeparator
               end
-              object AHundredResButton: TToolButton
-                Left = 334
-                Top = 0
-                Action = OnlyAHundredRes
-                Style = tbsCheck
-              end
               object UpBoardButton: TToolButton
                 Left = 359
                 Top = 0
@@ -10262,6 +10262,7 @@ object GikoForm: TGikoForm
       Category = #12473#12524#12483#12489
       AutoCheck = True
       Caption = #26368#26032'100'#12524#12473#12398#12415#34920#31034
+      GroupIndex = 2
       Hint = #26368#26032'100'#12524#12473#12398#12415#34920#31034
       ImageIndex = 38
       OnExecute = OnlyAHundredResExecute
index 7579353..2c9ad9c 100644 (file)
--- a/Giko.pas
+++ b/Giko.pas
@@ -3544,7 +3544,8 @@ begin
                        Self.Caption := CAPTION_NAME + ' - [' + ThreadTitle + ']';
                        //Thread.Repaint\82Í\81A\83X\83L\83\93\93\99\82Ì\90Ý\92è\82ð\95Ï\8dX\82µ\82½\82Æ\82«\81AThread\82ð\83_\83E\83\93\83\8d\81[\83h\82µ\82½\82Æ\82«
                        //\90V\8bK\82ÉThread\82ð\8aJ\82¢\82½\82Æ\82«\82É\90^\82É\82È\82Á\82Ä\82¢\82é\81B
-                       if(Thread.Repaint) or (Thread.OnlyHundred <> GikoSys.OnlyAHundredRes)then begin
+//                     if(Thread.Repaint) or (Thread.OnlyHundred <> GikoSys.OnlyAHundredRes)then begin
+                       if Thread.Repaint then begin
                                //Thread.LastSize := ThreadItem.Size;
                                Thread.Repaint := false;
                                try
@@ -6120,8 +6121,8 @@ begin
                                FBrowsers.Move(BROWSER_COUNT - 1, 0);
                        end;
                        TOleControl(TBrowserRecord(BrowserTab.Tabs.Objects[idx]).Browser).BringToFront;
-                       GikoSys.OnlyAHundredRes := TBrowserRecord(BrowserTab.Tabs.Objects[idx]).OnlyHundred;
-                       OnlyAHundredRes.Checked := TBrowserRecord(BrowserTab.Tabs.Objects[idx]).OnlyHundred;
+//                     GikoSys.OnlyAHundredRes := TBrowserRecord(BrowserTab.Tabs.Objects[idx]).OnlyHundred;
+//                     OnlyAHundredRes.Checked := TBrowserRecord(BrowserTab.Tabs.Objects[idx]).OnlyHundred;
                        SetContent(TBrowserRecord(BrowserTab.Tabs.Objects[idx]));
 
                        if (GikoSys.Setting.URLDisplay) and (GetActiveContent <> nil) then
@@ -8593,7 +8594,11 @@ var
        ThreadItem : TThreadItem;
        FilterList : TStringList;
        i, idx : Integer;
+       lastStatus      : Integer;
 begin
+       if Length( SelectComboBox.Text ) > 0 then lastStatus := 1
+       else if GikoSys.OnlyAHundredRes then lastStatus := 2
+       else lastStatus := 0;
        Dlg := TListSelectDialog.Create(Self);
        try
                Dlg.SelectComboBox.Items.Assign(GikoSys.Setting.SelectTextList);
@@ -8601,12 +8606,17 @@ begin
                Dlg.ShowModal;
                if Dlg.ModalResult = mrOK then begin
                        if Length( Dlg.SelectComboBox.Text ) = 0 then begin
-                               // \8bó\93ü\97Í\82Å OK \82Í\91S\83\8c\83X\95\\8e¦\82Æ\93¯\88Ó\8b`
-                               AllResAction.Execute;
+                               // \8bó\93ü\97Í\82Å OK \82Í\83L\83\83\83\93\83Z\83\8b\82Æ\93¯\88Ó\8b`
+                               case lastStatus of
+                               0:      AllResAction.Execute;
+                               1:      AllResAction.Execute;
+                               2:      OnlyAHundredRes.Execute;
+                               end;
                        end else begin
                                // \83{\83^\83\93\82Ì\8dX\90V
                                AllResAction.Checked := False;
                                SelectResAction.Checked := True;
+                               OnlyAHundredRes.Checked := False;
 
                                // \8dÅ\8cã\82É\90Ý\92è\82µ\82½\82à\82Ì\82ð\8ao\82¦\82Ä\82¨\82­
                                FSelectResWord := Dlg.SelectComboBox.Text;
@@ -8646,10 +8656,17 @@ begin
                                if ThreadItem <> nil then
                                        InsertBrowserTab( ThreadItem, True );
                        end;
-               end else if Length( FSelectResWord ) > 0 then begin
+               end else begin
+                       // \83L\83\83\83\93\83Z\83\8b
+                       case lastStatus of
+                       0:      AllResAction.Execute;
+                       2:      OnlyAHundredRes.Execute;
+                       end;
                        // \83{\83^\83\93\82Ì\8dX\90V
-                       AllResAction.Checked := False;
-                       SelectResAction.Checked := True;
+//                     AllResAction.Checked := False;
+//                     SelectResAction.Checked := True;
+//                     OnlyAHundredRes.Checked := False;
+//                     GikoSys.OnlyAHundredRes := OnlyAHundredRes.Checked;
                end;
        finally
                Dlg.Release;
@@ -8680,8 +8697,11 @@ begin
        // \83{\83^\83\93\82Ì\8dX\90V
        AllResAction.Checked := True;
        SelectResAction.Checked := False;
+       OnlyAHundredRes.Checked := False;
+
+       if (Length( FSelectResWord ) > 0) or GikoSys.OnlyAHundredRes then begin
+               GikoSys.OnlyAHundredRes := OnlyAHundredRes.Checked;
 
-       if Length( FSelectResWord ) > 0 then begin
                // \83t\83B\83\8b\83^\95\8e\9a\97ñ\82ð\8bó\82É\82·\82é
                FilterList := TStringList.Create;
                try
@@ -9674,14 +9694,39 @@ begin
 end;
 
 procedure TGikoForm.OnlyAHundredResExecute(Sender: TObject);
+var
+       ThreadItem : TThreadItem;
+       FilterList : TStringList;
+       i: Integer;
 begin
-       if (FActiveContent <> nil) and (FActiveContent.FBrowser.Busy) then begin
-               AHundredResButton.Down := not AHundredResButton.Down;
-               Exit; 
-       end;
-       GikoSys.OnlyAHundredRes := OnlyAHundredRes.Checked;
-       if FActiveContent <> nil then begin
-               SetContent(FActiveContent);
+       if (FActiveContent <> nil) and (FActiveContent.FBrowser <> nil)
+               and (FActiveContent.FBrowser.Busy) then Exit;
+
+       // \95\\8e¦\82Ì\8dX\90V
+       AllResAction.Checked := False;
+       SelectResAction.Checked := False;
+       OnlyAHundredRes.Checked := True;
+
+       if (Length( FSelectResWord ) > 0) or (not GikoSys.OnlyAHundredRes) then begin
+               // \83t\83B\83\8b\83^\95\8e\9a\97ñ\82ð\8bó\82É\82·\82é
+               FilterList := TStringList.Create;
+               try
+                       GikoSys.FSelectResFilter.LoadFromStringList( FilterList );
+                       GikoSys.FSelectResFilter.Reverse := False;
+               finally
+                       FilterList.Destroy;
+               end;
+
+               FSelectResWord := '';
+               GikoSys.OnlyAHundredRes := OnlyAHundredRes.Checked;
+
+               // \83X\83\8c\83b\83h\82ð\8dÄ\95`\89æ
+               for i := BrowserTab.Tabs.Count - 1 downto 0 do begin
+                       TBrowserRecord(BrowserTab.Tabs.Objects[i]).Repaint := true;
+               end;
+               ThreadItem := GetActiveContent;
+               if ThreadItem <> nil then
+                       InsertBrowserTab( ThreadItem, True );
        end;
 end;
 
index 5aa50ee..02b08e3 100644 (file)
@@ -48,13 +48,13 @@ const
                                                                                                                                                                        '',
                                                                                                                                                                        'AllResAction',
                                                                                                                                                                        'SelectResAction',
+                                                                                                                                                                       'OnlyAHundredRes',
                                                                                                                                                                        '',
                                                                                                                                                                        'EditorAction',
                                                                                                                                                                        '',
                                                                                                                                                                        'IEAction',
                                                                                                                                                                        '',
                                                                                                                                                                        'ItemReloadAction',
-                                                                                                                                                                       'OnlyAHundredRes',
                                                                                                                                                                        'UpBoardAction'
                                                                                                                                                                        );
 
@@ -92,7 +92,7 @@ const
                                                                                                                                                                        'ListNumberVisibleAction',
                                                                                                                                                                        'AllResAction',
                                                                                                                                                                        'SelectResAction',
-                                                                                    'OnlyAHundredRes'
+                                          'OnlyAHundredRes'
                                                                                                                                                                        );
 
        //\83{\83^\83\93\82Ì\83X\83^\83C\83\8b\82ª"tbsDropDown"\83{\83^\83\93\82Ì\83A\83N\83V\83\87\83\93