Develop and Download Open Source Software

Browse CVS Repository

Diff of /gikonavigoeson/gikonavi/NewBoard.pas

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.29 by h677, Thu Feb 21 16:20:19 2008 UTC revision 1.30 by h677, Sat Mar 29 02:25:23 2008 UTC
# Line 42  type Line 42  type
42                  procedure SetIgnoreCategory(b: boolean);                  procedure SetIgnoreCategory(b: boolean);
43                  procedure EditIgnoreList(Sender: TObject);                  procedure EditIgnoreList(Sender: TObject);
44                  procedure UpdateIgnoreList(Sender: TObject);                  procedure UpdateIgnoreList(Sender: TObject);
45            function CheckDeleteItem(ini: TMemIniFile): Boolean;
46          public          public
47                  { Public 宣言 }                  { Public 宣言 }
48          class procedure InitHTTPClient(client : TIdHTTP);          class procedure InitHTTPClient(client : TIdHTTP);
# Line 301  begin Line 302  begin
302                                          end;                                          end;
303                                  end;                                  end;
304                          end;                          end;
305                // カテゴリ/板が減っただけだとChangeフラグがたたないときの対策
306                if not Change then begin
307                    Change := CheckDeleteItem(ini);
308                end;
309                  finally                  finally
310                          if Change then                          if Change then
311                                  ini.UpdateFile;                                  ini.UpdateFile;
# Line 321  begin Line 326  begin
326          end;          end;
327          Result := Change;          Result := Change;
328  end;  end;
329    //! 削除カテゴリ/板チェック
330    function TNewBoardDialog.CheckDeleteItem(ini: TMemIniFile): Boolean;
331    var
332            URL: string;
333            Title: string;
334            orgini: TMemIniFile;
335        orgStrings, newStrings: TStringList;
336        i: Integer;
337    begin
338        orgini := TMemIniFile.Create(GikoSys.GetBoardFileName);
339        orgStrings := TStringList.Create;
340        newStrings := TStringList.Create;
341        try
342            ini.ReadSections(newStrings);
343            orgini.ReadSections(orgStrings);
344            if (newStrings.Count <> orgStrings.Count) then begin
345                //カテゴリ追加は、板が追加になるのでチェックしなくてもいい
346                //カテゴリの削除チェック
347                for i := 0 to orgStrings.Count - 1 do begin
348                    if (newStrings.IndexOf(orgStrings[i]) = -1) then begin
349                        MessageMemo.Lines.Add('カテゴリ削除「' + orgStrings[i] + '」');
350                    end;
351                end;
352                Result := True;
353            end else begin
354                // 板の数チェック
355                ini.GetStrings(newStrings);
356                orgini.GetStrings(orgStrings);
357                if (newStrings.Count <> orgStrings.Count) then begin
358                    // 板の削除チェック
359                    for i := 0 to orgStrings.Count - 1 do begin
360                        if (newStrings.IndexOf(orgStrings[i]) = -1) then begin
361                            Title := Copy(orgStrings[i], 1 , AnsiPos('=',orgStrings[i]) - 1);
362                            URL := Copy(orgStrings[i],
363                                AnsiPos('=',orgStrings[i]) + 1, Length(orgStrings[i]));
364                            MessageMemo.Lines.Add('板削除「' + Title + '(' + URL +')」');
365                        end;
366                    end;
367                    Result := True;
368                end;
369            end;
370        finally
371            orgStrings.Free;
372            newStrings.Free;
373            orgini.Free;
374        end;
375    end;
376  procedure TNewBoardDialog.FormCreate(Sender: TObject);  procedure TNewBoardDialog.FormCreate(Sender: TObject);
377  begin  begin
378          StopButton.Enabled := False;          StopButton.Enabled := False;

Legend:
Removed from v.1.29  
changed lines
  Added in v.1.30

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26