OSDN Git Service

スレ一覧で取得数のかわりに未取得数を表示できるようにした
authorq9_ <q9_>
Sat, 10 Jul 2004 15:45:32 +0000 (15:45 +0000)
committerq9_ <q9_>
Sat, 10 Jul 2004 15:45:32 +0000 (15:45 +0000)
Giko.pas
Option.dfm
Option.pas
Setting.pas
Sort.pas
readme/readme.txt

index 64d2f50..bc3dc45 100644 (file)
--- a/Giko.pas
+++ b/Giko.pas
@@ -2248,6 +2248,7 @@ function TGikoForm.SetThreadListItem(Board: TBoard): Integer;
 const
        COLUMN: array[0..7] of string = ('\83X\83\8c\83b\83h\96¼', '\83J\83E\83\93\83g', '\8eæ\93¾', '\90V\92\85',
                                                                                                                                         '\96¢\93Ç', '\8f\84\89ñ\97\\96ñ', '\8eæ\93¾\93ú\8e\9e', '\83X\83\8c\8dì\90¬\93ú\8e\9e');
+       COLUMN_NONACQUIREDCOUNT: string = '\96¢\8eæ\93¾';
        COLUMN_ALIGNMENT: array[0..7] of TAlignment = (taLeftJustify, taRightJustify,
                                                                                                                                                                                                 taRightJustify, taRightJustify,
                                                                                                                                                                                                 taRightJustify, taLeftJustify,
@@ -2273,6 +2274,10 @@ begin
                                ListColumn.Alignment := COLUMN_ALIGNMENT[i];
                        end;
                end;
+               if GikoSys.Setting.NonAcquiredCount then
+               begin
+                       ListView.Columns[2].Caption := COLUMN_NONACQUIREDCOUNT;
+               end;
 
                ListView.Items.Count := 0;
                ListView.Items.Clear;
@@ -2446,7 +2451,10 @@ begin
                if ThreadItem.IsLogFile then begin
                        Item.ImageIndex := ITEM_ICON_THREADLOG1;
                        Item.SubItems[0] := IntToStr(ThreadItem.AllResCount);
-                       Item.SubItems[1] := IntToStr(ThreadItem.Count);
+                       if GikoSys.Setting.NonAcquiredCount then
+                               Item.SubItems[1] := IntToStr(ThreadItem.AllResCount - ThreadItem.Count)
+                       else
+                               Item.SubItems[1] := IntToStr(ThreadItem.Count);
                        if ThreadItem.NewResCount = 0 then
                                Item.SubItems[2] := ''
                        else
@@ -2796,6 +2804,7 @@ begin
                wkBoard := TBoard( FActiveList );
                Sort.SortOrder := FSortOrder;
                Sort.SortIndex := Column.Index;
+               Sort.SortNonAcquiredCountFlag := GikoSys.Setting.NonAcquiredCount;
                wkBoard.CustomSort(ThreadItemSortProc);
                ListView.Refresh;
        end;
index 3bbee06..b24ec89 100644 (file)
@@ -697,21 +697,29 @@ object OptionDialog: TOptionDialog
         Left = 12
         Top = 8
         Width = 477
-        Height = 49
+        Height = 78
         Caption = #34920#31034#35373#23450
         TabOrder = 0
         object ThreadListIconCheckBox: TCheckBox
           Left = 12
-          Top = 20
+          Top = 24
           Width = 217
           Height = 17
           Caption = #12473#12524#12483#12489#26356#26032#12450#12452#12467#12531#12434#34920#31034#12377#12427'(&I)'
           TabOrder = 0
         end
+        object NonAcquiredCountCheckBox: TCheckBox
+          Left = 12
+          Top = 48
+          Width = 217
+          Height = 17
+          Caption = #21462#24471#25968#12398#20195#12431#12426#12395#26410#21462#24471#25968#12434#34920#31034#12377#12427
+          TabOrder = 1
+        end
       end
       object GroupBox16: TGroupBox
         Left = 12
-        Top = 64
+        Top = 90
         Width = 477
         Height = 81
         Caption = #12473#12524#20316#25104#26085#26178#34920#31034#35373#23450
@@ -735,7 +743,7 @@ object OptionDialog: TOptionDialog
       end
       object GroupBox5: TGroupBox
         Left = 12
-        Top = 152
+        Top = 175
         Width = 477
         Height = 89
         Caption = #12502#12521#12454#12470#12398#26368#22823#21270
@@ -763,7 +771,7 @@ object OptionDialog: TOptionDialog
       end
       object GroupBox17: TGroupBox
         Left = 12
-        Top = 256
+        Top = 268
         Width = 477
         Height = 65
         Caption = #12502#12521#12454#12470#12479#12502#38750#34920#31034#26178#35373#23450
index 33a33b2..c95f620 100644 (file)
@@ -115,6 +115,7 @@ type
                TabSheet3: TTabSheet;
                GroupBox9: TGroupBox;
                ThreadListIconCheckBox: TCheckBox;
+               NonAcquiredCountCheckBox: TCheckBox;
                GroupBox6: TGroupBox;
                LogDeleteMessageCheckBox: TCheckBox;
                GroupBox10: TGroupBox;
@@ -772,6 +773,7 @@ begin
 
        //\83X\83\8c\83b\83h\88ê\97\97\8dX\90V\83A\83C\83R\83\93
        ThreadListIconCheckBox.Checked := GikoSys.Setting.ListIconVisible;
+       NonAcquiredCountCheckBox.Checked := GikoSys.Setting.NonAcquiredCount;
        CreationTimeLogsCheckBox.Checked := GikoSys.Setting.CreationTimeLogs;
        FutureThreadCheckBox.Checked := GikoSys.Setting.FutureThread;
        SelectIntervalEdit.Text := IntToStr(GikoSys.Setting.SelectInterval);
@@ -986,6 +988,7 @@ begin
 
        //\83X\83\8c\83b\83h\88ê\97\97\8dX\90V\83A\83C\83R\83\93
        GikoSys.Setting.ListIconVisible := ThreadListIconCheckBox.Checked;
+       GikoSys.Setting.NonAcquiredCount := NonAcquiredCountCheckBox.Checked;
     GikoSys.Setting.CreationTimeLogs := CreationTimeLogsCheckBox.Checked;
        GikoSys.Setting.FutureThread := FutureThreadCheckBox.Checked;
        if StrToIntDef(SelectIntervalEdit.Text, 110) > 55 then
index e842dd5..3739a5d 100644 (file)
@@ -260,11 +260,13 @@ type
 
                //\83X\83\8c\83b\83h\88ê\97\97\8dX\90V\83A\83C\83R\83\93\95\\8e¦
                FListIconVisible: Boolean;
+               //\8eæ\93¾\90\94\82Å\82Í\82È\82­\96¢\8eæ\93¾\82ð\95\\8e¦\82·\82é
+               FNonAcquiredCount: Boolean;
 
         //\83X\83\8c\83b\83h\88ê\97\97\82ÅLog\82Ì\82 \82é\83X\83\8c\83b\83h\82Ì\82Ý\83X\83\8c\8dì\90¬\93ú\82ð\95\\8e¦\82·\82é\82©
         FCreationTimeLogs: Boolean;
         //\83X\83\8c\83b\83h\88ê\97\97\82Ì\83X\83\8c\90\90¬\93ú\82Å\96¢\97\88\82Ì\83X\83\8c\82Ì\90\90¬\93ú\82ð\95\\8e¦\82µ\82È\82¢
-        FFutureThread: Boolean;
+               FFutureThread: Boolean;
 
                //\8f\91\82«\8d\9e\82Ý\8e\9e\83}\83V\83\93\8e\9e\8aÔ\8eg\97p\90Ý\92è
                FUseMachineTime: Boolean;
@@ -537,6 +539,7 @@ type
                property BrowserAutoMaximize: TGikoBrowserAutoMaximize read FBrowserAutoMaximize write FBrowserAutoMaximize;
 
                property ListIconVisible: Boolean read FListIconVisible write FListIconVisible;
+               property NonAcquiredCount: Boolean read FNonAcquiredCount write FNonAcquiredCount;
                property CreationTimeLogs: Boolean read FCreationTimeLogs write FCreationTimeLogs;
                property FutureThread: Boolean read FFutureThread write FFutureThread;
 
@@ -911,7 +914,8 @@ begin
 
                //\83X\83\8c\83b\83h\88ê\97\97\8dX\90V\83A\83C\83R\83\93
                FListIconVisible := ini.ReadBool('ThreadList', 'StateIconVisible', True);
-        FCreationTimeLogs := ini.ReadBool('ThreadList', 'CreationTimeLogs', True);
+               FNonAcquiredCount := ini.ReadBool('ThreadList', 'NonAcquiredCount', False);
+               FCreationTimeLogs := ini.ReadBool('ThreadList', 'CreationTimeLogs', True);
                FFutureThread := ini.ReadBool('ThreadList', 'FutureThread', True);
                FSelectInterval := ini.ReadInteger('ThreadList', 'SelectInterval', 110);
 
@@ -1189,9 +1193,10 @@ begin
 
                //\83X\83\8c\83b\83h\88ê\97\97\8dX\90V\83A\83C\83R\83\93
                ini.WriteBool('ThreadList', 'StateIconVisible', FListIconVisible);
+               ini.WriteBool('ThreadList', 'NonAcquiredCount', FNonAcquiredCount);
                ini.WriteBool('ThreadList', 'CreationTimeLogs',FCreationTimeLogs);
                ini.WriteBool('ThreadList', 'FutureThread', FFutureThread);
-        ini.WriteInteger('ThreadList', 'SelectInterval', FSelectInterval); 
+               ini.WriteInteger('ThreadList', 'SelectInterval', FSelectInterval);
 
                //\8f\91\82«\8d\9e\82Ý\8e\9e\83}\83V\83\93\8e\9e\8d\8f\8eg\97p\90Ý\92è
                ini.WriteBool('PostTime', 'UseMachineTime', FUseMachineTime);
index 1b56834..2b44b56 100644 (file)
--- a/Sort.pas
+++ b/Sort.pas
@@ -16,6 +16,7 @@ var
        SortOrder: Boolean;
        SortIndex: Integer;
        SortNoFlag: Boolean;
+       SortNonAcquiredCountFlag: Boolean;
 
 implementation
 
@@ -73,14 +74,27 @@ begin
                                        Result := AnsiCompareText(ThreadItem1.Title, ThreadItem2.Title)
                        end;
                1: Result := CompareInt(ThreadItem1.AllResCount, ThreadItem2.AllResCount);
-               2: Result := CompareInt(ThreadItem1.Count, ThreadItem2.Count);
+               2:
+                       begin
+                               if SortNonAcquiredCountFlag then
+                                       if ThreadItem1.IsLogFile and ThreadItem2.IsLogFile then
+                                               Result := CompareInt(ThreadItem1.AllResCount - ThreadItem1.Count, ThreadItem2.AllResCount - ThreadItem2.Count)
+                                       else if ThreadItem1.IsLogFile then
+                                               Result := 1
+                                       else if ThreadItem2.IsLogFile then
+                                               Result := -1
+                                       else
+                                               Result := 0
+                               else
+                                       Result := CompareInt(ThreadItem1.Count, ThreadItem2.Count);
+                       end;
                3: Result := CompareInt(ThreadItem1.NewResCount, ThreadItem2.NewResCount);
                4: Result := 0;
                5: Result := AnsiCompareText(ThreadItem1.RoundName, ThreadItem2.RoundName);
                6: Result := CompareDateTime(ThreadItem1.RoundDate, ThreadItem2.RoundDate);
-        7: Result := CompareDateTime(ThreadItem1.CreateDate, ThreadItem2.CreateDate);
-    else
-       Result := 0;
+               7: Result := CompareDateTime(ThreadItem1.CreateDate, ThreadItem2.CreateDate);
+       else
+               Result := 0;
        end;
 
 {      if SortIndex = 0 then
index 015dc85..43ab13c 100644 (file)
@@ -103,6 +103,7 @@ Windows Server 2003 Enterprise Edition IE6
   \83\8c\83X\83G\83f\83B\83^\82Å\81A\88ø\97p\95\84\95t\82«\93\\82è\95t\82¯\82ª\82Å\82«\82é\82æ\82¤\82É\82È\82Á\82½
   \82µ\82½\82ç\82ÎJBBS\82Ì\89ß\8b\8e\83\8d\83O\82ð\8eæ\93¾\82Å\82«\82é\82æ\82¤\82É\82µ\82½\81i\88ê\95\94\95s\8bï\8d\87\82 \82è\81j
   \83\8c\83X\91\97\90M\8e\9e\82Ì\96¼\91O\97\93\82ª\81hfusianasan\81h\82©\81h\8eR\8dè\8fÂ\81h\82¾\82Æ\8cx\8d\90\83\81\83b\83Z\81[\83W\82ª\82Å\82é\82æ\82¤\82É\82È\82Á\82½\81B
+  \83X\83\8c\88ê\97\97\82Å\8eæ\93¾\90\94\82Ì\82©\82í\82è\82É\96¢\8eæ\93¾\90\94\82ð\95\\8e¦\82Å\82«\82é\82æ\82¤\82É\82µ\82½
 2004/04/19
   Version ÊÞÀ47
   \83X\83\8c\8dì\90¬\93ú\8e\9e\83J\83\89\83\80\95\9d\82Ì\8f\89\8aú\92l\82ð\90Ý\92è