TextDiffCtrl.patch

Abdelghani Omari, 05/04/2017 08:29 AM

Download (2.52 KB)

View differences:

DirDiff.cpp (working copy)
72 72
{
73 73
	static Color cs[] = { SColorText(), Red(), Green() };
74 74
	files.Clear();
75
	String sFind = ToLower((String)~find);
75 76
	for(int i = 0; i < list.GetCount(); i++)
76 77
	{
77 78
		int n = list[i].d;
78 79
		if(n == 0 && modified || n == 1 && removed || n == 2 && added)
79
			files.Add(list[i].a, NativePathIcon(FileExists(list[i].b) ? list[i].b : list[i].c),
80
			if(ToLower(list[i].a).Find(sFind) >= 0)
81
				files.Add(list[i].a, NativePathIcon(FileExists(list[i].b) ? list[i].b : list[i].c),
80 82
			          StdFont(), cs[list[i].d]);
81 83
	}
82 84
	info = AsString(files.GetCount()) + " files";
......
138 140
	
139 141
	files_pane.Add(   added.TopPos(3 * cy + 3 * div, bcy).LeftPosZ(2, 60));
140 142
	files_pane.Add(modified.TopPos(3 * cy + 3 * div, bcy).LeftPosZ(52, 70));
141
	files_pane.Add( removed.TopPos(3 * cy + 3 * div, bcy).LeftPosZ(132, 80));
143
	files_pane.Add( removed.TopPos(3 * cy + 3 * div, bcy).LeftPosZ(128, 80));
142 144
	
143 145
	removed = 1;
144 146
	added = 1;
145 147
	modified = 1;
148
	find.NullText(t_("Find"));
149
	clearFind.SetLabel("X");
150
	clearFind.RightPosZ(1, 16).VSizePosZ(1, 1);
151
	find.AddChild(&clearFind);
146 152
	
147 153
	files_pane.Add(info.SetAlign(ALIGN_RIGHT).TopPos(3 * cy + 3 * div, bcy).RightPos(1, 70));
148 154
	files_pane.Add(compare.TopPos(2 * cy + 2 * div, bcy).RightPos(0, bcx));
149
	files_pane.Add(files.VSizePos(3 * cy + bcy + 4 * div, 0).HSizePos());
155
	files_pane.Add(files.VSizePos(3 * cy + bcy + 4 * div, 22).HSizePos());
156
	files_pane.Add(find.HSizePosZ(4, 4).BottomPosZ(4, 19));
150 157

  
151 158
	Add(files_diff.SizePos());
152 159
	files_diff.Set(files_pane, diff);
......
161 168
	dir1 <<= THISBACK(ClearFiles);
162 169
	dir2 <<= THISBACK(ClearFiles);
163 170
	
164
	modified << [=] { ShowResult(); };
165
	removed << [=] { ShowResult(); };
166
	added << [=] { ShowResult(); };
171
	modified	<< [=] { ShowResult(); };
172
	removed		<< [=] { ShowResult(); };
173
	added		<< [=] { ShowResult(); };
174
	find		<< [=] { ShowResult(); };
175
	clearFind	<< [=] {find.Clear(); ShowResult();};
167 176
	
168 177
	files.WhenSel = THISBACK(File);
169 178

  
TextDiffCtrl.h (working copy)
226 226
	Label                      info;
227 227
	
228 228
	Option                     removed, added, modified;
229
	EditString				   find;
230
	Button					   clearFind;
229 231

  
230 232
	FrameTop<ParentCtrl>       left, right;
231 233
	EditString                 lfile, rfile;