summaryrefslogtreecommitdiff
path: root/tools.pas
diff options
context:
space:
mode:
Diffstat (limited to 'tools.pas')
-rw-r--r--tools.pas22
1 files changed, 22 insertions, 0 deletions
diff --git a/tools.pas b/tools.pas
index 9bde238..8cf0b5f 100644
--- a/tools.pas
+++ b/tools.pas
@@ -47,6 +47,7 @@ type
procedure mrProper;
function add(neu: tDateiMitDatum): longint;
function gleicheNamenWie(dmd: tDateienMitDaten): boolean;
+ function istNamenObermengeVon(dmd: tDateienMitDaten): boolean; inline;
function toString: string; override;
procedure append(dmd: tDateienMitDaten);
function toMyStringList: tMyStringList;
@@ -214,6 +215,27 @@ begin
result:=true;
end;
+function tDateienMitDaten.istNamenObermengeVon(dmd: tDateienMitDaten): boolean;
+var
+ i,j: longint;
+begin
+ result:=false;
+ if count<dmd.count then // so kann das nichts werden
+ exit;
+ i:=0;
+ j:=0;
+ while (i<count) and (j<dmd.count) do
+ case vergleicheStrings(sItems[i].name,dmd.sItems[j].name) of
+ -1: inc(i); // kein Problem, wir dürfen ja auch noch weitere Namen haben
+ 0: begin // gleiche Namen sind auch ok,
+ inc(i); // dann machen wir
+ inc(j); // einfach weiter
+ end;
+ 1: exit; // dmd.sItems[j].name haben wir nicht!
+ end{of case};
+ result:=j>=dmd.count; // wenn dmd "alle" ist, hatten wir alles gefunden
+end;
+
function tDateienMitDaten.toString: string;
var
i: longint;