/[projects]/dao/DelphiScanner/Components/tpsystools_4.04/examples/CBuilder/exenumfu.cpp
ViewVC logotype

Annotation of /dao/DelphiScanner/Components/tpsystools_4.04/examples/CBuilder/exenumfu.cpp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2671 - (hide annotations) (download)
Tue Aug 25 18:15:15 2015 UTC (8 years, 10 months ago) by torben
File size: 3720 byte(s)
Added tpsystools component
1 torben 2671 // ***** BEGIN LICENSE BLOCK *****
2     // * Version: MPL 1.1
3     // *
4     // * The contents of this file are subject to the Mozilla Public License Version
5     // * 1.1 (the "License"); you may not use this file except in compliance with
6     // * the License. You may obtain a copy of the License at
7     // * http://www.mozilla.org/MPL/
8     // *
9     // * Software distributed under the License is distributed on an "AS IS" basis,
10     // * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
11     // * for the specific language governing rights and limitations under the
12     // * License.
13     // *
14     // * The Original Code is TurboPower SysTools
15     // *
16     // * The Initial Developer of the Original Code is
17     // * TurboPower Software
18     // *
19     // * Portions created by the Initial Developer are Copyright (C) 1996-2002
20     // * the Initial Developer. All Rights Reserved.
21     // *
22     // * Contributor(s):
23     // *
24     // * ***** END LICENSE BLOCK *****
25     //---------------------------------------------------------------------------
26     #include <vcl.h>
27     #pragma hdrstop
28    
29     #include "exenumfu.h"
30     //---------------------------------------------------------------------------
31     #pragma package(smart_init)
32     #pragma resource "*.dfm"
33     TForm1 *Form1;
34     //---------------------------------------------------------------------------
35     __fastcall TForm1::TForm1(TComponent* Owner)
36     : TForm(Owner)
37     {
38     }
39     //---------------------------------------------------------------------------
40     bool __fastcall ProcessAll(const Sysutils::TSearchRec &SR, bool ForInclusion,
41     bool &Abort)
42     {
43     Abort = false;
44     if (StopIt) {
45     Abort = true;
46     return false;
47     }
48     else {
49     Application->ProcessMessages();
50     return true;
51     }
52     }
53     //---------------------------------------------------------------------------
54     bool __fastcall TextFilesOnly(const Sysutils::TSearchRec &SR, bool ForInclusion,
55     bool &Abort)
56     {
57     bool Rslt;
58     Abort = false;
59     if (StopIt) {
60     Abort = true;
61     return false;
62     }
63     else {
64     Application->ProcessMessages();
65    
66     if (ForInclusion) {
67     Rslt = false;
68     String S = SR.Name;
69     if ((UpperCase(ExtractFileExt(S)) == ".TXT") ||
70     ((SR.Attr && faDirectory) > 0)) {
71     Rslt = true;
72     }
73     return Rslt;
74     }
75     else {
76     return true;
77     }
78     }
79     }
80     //---------------------------------------------------------------------------
81     void __fastcall TForm1::Button2Click(TObject *Sender)
82     {
83     StopIt = true;
84     }
85     //---------------------------------------------------------------------------
86    
87     void __fastcall TForm1::FormCreate(TObject *Sender)
88     {
89     AList = new TStringList;
90     Edit1->Text = "C:\\";
91     }
92     //---------------------------------------------------------------------------
93    
94     void __fastcall TForm1::FormDestroy(TObject *Sender)
95     {
96     delete AList;
97     }
98     //---------------------------------------------------------------------------
99    
100     void __fastcall TForm1::Button1Click(TObject *Sender)
101     {
102     AList->Clear();
103     ListBox1->Clear();
104    
105     Screen->Cursor = crHourGlass;
106     StopIt = false;
107    
108     if (!CheckBox2->Checked) {
109     EnumerateFiles(Edit1->Text, AList, CheckBox1->Checked, ProcessAll);
110     ListBox1->Items = AList;
111     } else {
112     EnumerateFiles(Edit1->Text, AList, CheckBox1->Checked, TextFilesOnly);
113     /*by its nature, EnumerateFiles also returns directory names*/
114     /*remove those from the list - leaving only the text files*/
115     for (long int I = 0; I < AList->Count; I++) {
116     if (UpperCase(ExtractFileExt(AList->Strings[I])) == ".TXT") {
117     ListBox1->Items->Add(AList->Strings[I]);
118     }
119     }
120     }
121    
122     Screen->Cursor = crDefault;
123     ListBox1->Update();
124    
125     }
126     //---------------------------------------------------------------------------
127    

  ViewVC Help
Powered by ViewVC 1.1.20