{ Private \90é\8c¾ }
FChkItem: TObject;
FRegItem: TThreadItem;
- FCancel: Boolean;
+ FCancel: Boolean;
procedure SetCategoryList;
procedure SetBoardList(Item: TListItem);
procedure CheckItem(Item: TObject);
begin
inherited Create(AOwner);
FChkItem := ChkItem;
- FCancel := false;
+ FCancel := false;
end;
procedure TSearchDialog.FormCreate(Sender: TObject);
procedure TSearchDialog.SetCategoryList;
var
- i, j: integer;
+ i, j, k: integer;
Item: TListItem;
+ bbs : TBBS;
begin
Item := CategoryListView.Items.Add;
Item.Caption := '\81i\82·\82×\82Ä\81j';
Item.Data := nil;
- for i := 0 to BBS2ch.Count - 1 do begin
- Item := CategoryListView.Items.Add;
- Item.Caption := BBS2ch.Items[i].Title;
- Item.Data := BBS2ch.Items[i];
- for j := 0 to BBS2ch.Items[i].Count - 1 do
- BBS2ch.Items[i].Items[j].BoolData := False;
+ for k := 0 to Length( BBSs ) - 1 do begin
+ bbs := BBSs[ k ];
+ for i := 0 to bbs.Count - 1 do begin
+ Item := CategoryListView.Items.Add;
+ Item.Caption := bbs.Items[i].Title;
+ Item.Data := bbs.Items[i];
+ for j := 0 to bbs.Items[i].Count - 1 do
+ bbs.Items[i].Items[j].BoolData := False;
+ end;
end;
end;
procedure TSearchDialog.SetBoardList(Item: TListItem);
var
- i, j: Integer;
+ i, j, k: Integer;
NewItem: TListItem;
Category: TCategory;
+ bbs : TBBS;
begin
BoardListView.Clear;
if Item.Data = nil then begin
- for i := 0 to BBS2ch.Count - 1 do begin
- Category := BBS2ch.Items[i];
- for j := 0 to Category.Count - 1 do begin
- NewItem := BoardListView.Items.Add;
- NewItem.Caption := Category.Items[j].Title;
- NewItem.Checked := Category.Items[j].BoolData;
- NewItem.Data := Category.Items[j];
+ for k := 0 to Length( BBSs ) - 1 do begin
+ bbs := BBSs[ k ];
+ for i := 0 to bbs.Count - 1 do begin
+ Category := bbs.Items[i];
+ for j := 0 to Category.Count - 1 do begin
+ NewItem := BoardListView.Items.Add;
+ NewItem.Caption := Category.Items[j].Title;
+ NewItem.Checked := Category.Items[j].BoolData;
+ NewItem.Data := Category.Items[j];
+ end;
end;
end;
end else if TObject(Item.Data) is TCategory then begin
procedure TSearchDialog.OkBottonClick(Sender: TObject);
var
- i, j, k: Integer;
+ i, j, k, l: Integer;
Category: TCategory;
Board: TBoard;
ThreadItem: TThreadItem;
Reg: TGrep;
Filter: string;
oldText: string;
+ bbs : TBBS;
begin
// grep \93à\82Å\83C\83x\83\93\83g\82ª\8fE\82¦\82Ä\82µ\82Ü\82¤\82Ì\82Å\81A\91\80\8dì\82Å\82«\82È\82¢\82æ\82¤\82É\82·\82é
AllSelectButton.Enabled := False;
AllReleaseButton.Enabled := False;
OkBotton.Enabled := False;
- CancelBotton.Enabled := true;
+ CancelBotton.Enabled := true;
FCancel := false;
CategoryListView.Enabled := False;
// \83T\83C\83g\82Ì\92\86\82Ì (\91±\82)
try
- for i := 0 to BBS2ch.Count - 1 do begin
- // \83J\83e\83S\83\8a\82Ì\92\86\82Ì (\91±\82)
- Category := BBS2ch.Items[i];
- for j := 0 to Category.Count - 1 do begin
- // \94Â\82Ì\92\86\82Ì (\91±\82)
- Board := Category.Items[j];
- if not Board.IsThreadDatRead then
- GikoSys.ReadSubjectFile(Board);
- if Board.BoolData then begin
- for k := 0 to Board.Count - 1 do begin
- // \8cÂ\81X\82Ì\83X\83\8c\83b\83h\82Ì (\91±\82)
- ThreadItem := Board.Items[k];
- if FileExists( ThreadItem.GetThreadFileName ) then begin
- // \83\8d\83O\82ª\91¶\8dÝ\82·\82é
- try
- // \8c\9f\8dõ
- // \81¦\8c©\82Â\82©\82Á\82½\82ç OnMatch \82É\94ò\82Ô
- FRegItem := ThreadItem;
- Reg.GrepByRegExp( ThreadItem.GetThreadFileName )
- except
+ // \8cf\8e¦\94Â\82Ì\92\86\82Ì (\91±\82)
+ for l := 0 to Length( BBSs ) - 1 do begin
+ bbs := BBSs[ l ];
+ for i := 0 to bbs.Count - 1 do begin
+ // \83J\83e\83S\83\8a\82Ì\92\86\82Ì (\91±\82)
+ Category := bbs.Items[i];
+ for j := 0 to Category.Count - 1 do begin
+ // \94Â\82Ì\92\86\82Ì (\91±\82)
+ Board := Category.Items[j];
+ if not Board.IsThreadDatRead then
+ GikoSys.ReadSubjectFile(Board);
+ if Board.BoolData then begin
+ for k := 0 to Board.Count - 1 do begin
+ // \8cÂ\81X\82Ì\83X\83\8c\83b\83h\82Ì (\91±\82)
+ ThreadItem := Board.Items[k];
+ if FileExists( ThreadItem.GetThreadFileName ) then begin
+ // \83\8d\83O\82ª\91¶\8dÝ\82·\82é
+ try
+ // \8c\9f\8dõ
+ // \81¦\8c©\82Â\82©\82Á\82½\82ç OnMatch \82É\94ò\82Ô
+ FRegItem := ThreadItem;
+ Reg.GrepByRegExp( ThreadItem.GetThreadFileName )
+ except
+ end;
end;
end;
+ Application.ProcessMessages;
+ if FCancel then raise Exception.Create('\83\8d\83O\8c\9f\8dõ\82ð\92\86\8e~\82µ\82Ü\82·');
end;
- Application.ProcessMessages;
- if FCancel then raise Exception.Create('\83\8d\83O\8c\9f\8dõ\82ð\92\86\8e~\82µ\82Ü\82·');
end;
end;
end;
AllReleaseButton.Enabled := True;
OkBotton.Enabled := True;
CategoryListView.Enabled := True;
- CancelBotton.Enabled := false;
- end;
+ CancelBotton.Enabled := false;
+ end;
end;
procedure TSearchDialog.BoardListViewDblClick(Sender: TObject);
begin
//Self.Close;
- FCancel := true;
+ FCancel := true;
end;