Subversion Repositories recyclebinunit

Rev

Rev 77 | Rev 86 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 77 Rev 83
Line 14... Line 14...
14
    CheckBox1: TCheckBox;
14
    CheckBox1: TCheckBox;
15
    Button2: TButton;
15
    Button2: TButton;
16
    OpenDialog1: TOpenDialog;
16
    OpenDialog1: TOpenDialog;
17
    LabeledEdit1: TLabeledEdit;
17
    LabeledEdit1: TLabeledEdit;
18
    ImageList1: TImageList;
18
    ImageList1: TImageList;
-
 
19
    CheckBox2: TCheckBox;
19
    procedure Button1Click(Sender: TObject);
20
    procedure Button1Click(Sender: TObject);
20
    procedure Button2Click(Sender: TObject);
21
    procedure Button2Click(Sender: TObject);
21
    procedure FormShow(Sender: TObject);
22
    procedure FormShow(Sender: TObject);
22
  private
23
  private
23
    localRecyclersNode: TTreeNode;
24
    localRecyclersNode: TTreeNode;
Line 71... Line 72...
71
      if drive.VolumeGUIDAvailable then
72
      if drive.VolumeGUIDAvailable then
72
        nDrive := TreeView1.Items.AddChildObject(localRecyclersNode, 'Drive '+drive.DriveLetter+': ' + GUIDToString(drive.VolumeGUID), drive)
73
        nDrive := TreeView1.Items.AddChildObject(localRecyclersNode, 'Drive '+drive.DriveLetter+': ' + GUIDToString(drive.VolumeGUID), drive)
73
      else
74
      else
74
        nDrive := TreeView1.Items.AddChildObject(localRecyclersNode, 'Drive '+drive.DriveLetter+':', drive);
75
        nDrive := TreeView1.Items.AddChildObject(localRecyclersNode, 'Drive '+drive.DriveLetter+':', drive);
75
      nDrive.ImageIndex := 6;
76
      nDrive.ImageIndex := 6;
76
      nDrive.SelectedIndex := 6;
77
      nDrive.SelectedIndex := nDrive.ImageIndex;
77
 
78
 
78
      bins.Clear;
79
      bins.Clear;
79
      if CheckBox1.Checked then
80
      if CheckBox1.Checked then
80
        drive.ListRecycleBins(bins, GetMySID)
81
        drive.ListRecycleBins(bins, GetMySID)
81
      else
82
      else
Line 84... Line 85...
84
      begin
85
      begin
85
        bin := bins.Items[iBin] as TRbRecycleBin;
86
        bin := bins.Items[iBin] as TRbRecycleBin;
86
 
87
 
87
        nBin := TreeView1.Items.AddChildObject(nDrive, bin.FileOrDirectory, bin);
88
        nBin := TreeView1.Items.AddChildObject(nDrive, bin.FileOrDirectory, bin);
88
        nBin.ImageIndex := 4;
89
        nBin.ImageIndex := 4;
89
        nBin.SelectedIndex := 4;
90
        nBin.SelectedIndex := nBin.ImageIndex;
90
 
91
 
91
        items.Clear;
92
        items.Clear;
92
        bin.ListItems(items);
93
        bin.ListItems(items);
93
        for iItem := 0 to items.Count - 1 do
94
        for iItem := 0 to items.Count - 1 do
94
        begin
95
        begin
95
          item := items.Items[iItem] as TRbRecycleBinItem;
96
          item := items.Items[iItem] as TRbRecycleBinItem;
-
 
97
 
-
 
98
          if not FileExists(item.PhysicalFile) and CheckBox2.Checked then continue;
-
 
99
 
96
          nItem := TreeView1.Items.AddChildObject(nBin, item.Source, bin);
100
          nItem := TreeView1.Items.AddChildObject(nBin, item.Source, bin);
-
 
101
 
-
 
102
          if FileExists(item.PhysicalFile) then
97
          nItem.ImageIndex := 0;
103
            nItem.ImageIndex := 0
-
 
104
          else
98
          nItem.SelectedIndex := 0;
105
            nItem.ImageIndex := 8;
-
 
106
          nItem.SelectedIndex := nItem.ImageIndex;
99
        end;
107
        end;
100
      end;
108
      end;
101
    end;
109
    end;
102
  finally
110
  finally
103
    drives.Free;
111
    drives.Free;
Line 129... Line 137...
129
    items.Clear;
137
    items.Clear;
130
    bin.ListItems(items);
138
    bin.ListItems(items);
131
    for iItem := 0 to items.Count - 1 do
139
    for iItem := 0 to items.Count - 1 do
132
    begin
140
    begin
133
      item := items.Items[iItem] as TRbRecycleBinItem;
141
      item := items.Items[iItem] as TRbRecycleBinItem;
-
 
142
 
-
 
143
      if not FileExists(item.PhysicalFile) and CheckBox2.Checked then continue;
-
 
144
 
134
      nItem := TreeView1.Items.AddChildObject(nBin, item.Source, bin);
145
      nItem := TreeView1.Items.AddChildObject(nBin, item.Source, bin);
-
 
146
 
-
 
147
      if FileExists(item.PhysicalFile) then
135
      nItem.ImageIndex := 0;
148
        nItem.ImageIndex := 0
-
 
149
      else
136
      nItem.SelectedIndex := 0;
150
        nItem.ImageIndex := 8;
-
 
151
      nItem.SelectedIndex := nItem.ImageIndex;
137
    end;
152
    end;
138
  finally
153
  finally
139
    items.Free;
154
    items.Free;
140
  end;
155
  end;
141
 
156
 
Line 144... Line 159...
144
 
159
 
145
procedure TRecyclerListingMainForm.FormShow(Sender: TObject);
160
procedure TRecyclerListingMainForm.FormShow(Sender: TObject);
146
begin
161
begin
147
  localRecyclersNode := TreeView1.Items.Add(nil, 'Local recyclers');
162
  localRecyclersNode := TreeView1.Items.Add(nil, 'Local recyclers');
148
  localRecyclersNode.ImageIndex := 2;
163
  localRecyclersNode.ImageIndex := 2;
149
  localRecyclersNode.SelectedIndex := 2;
164
  localRecyclersNode.SelectedIndex := localRecyclersNode.ImageIndex;
150
 
165
 
151
  individualRecyclersNode := TreeView1.Items.Add(nil, 'Manually added recycle bins');
166
  individualRecyclersNode := TreeView1.Items.Add(nil, 'Manually added recycle bins');
152
  individualRecyclersNode.ImageIndex := 2;
167
  individualRecyclersNode.ImageIndex := 2;
153
  individualRecyclersNode.SelectedIndex := 2;
168
  individualRecyclersNode.SelectedIndex := individualRecyclersNode.ImageIndex;
154
end;
169
end;
155
 
170
 
156
end.
171
end.