private void refreshFileList()
{
var list = new List<Widget>();
_scannerCommon.GetRootWidget().Finder.FindChild(typeof(TabStopScannerButton), list);
int count = list.Count();
if (count == 0)
{
return;
}
foreach (Widget button in list)
{
button.UserData = null;
button.SetText(String.Empty);
}
_entriesPerPage = count;
_numPages = _fileList.Count() / _entriesPerPage;
if ((_fileList.Count() % _entriesPerPage) != 0)
{
_numPages++;
}
updateButtonBar();
updateStatusBar();
if (!_fileList.Any())
{
(list[0] as TabStopScannerButton).SetTabStops(0.0f, new float[] { 100 });
list[0].SetText(Resources._TNOFILESFOUND);
return;
}
int ii = 0;
var image = new Bitmap(1, 1);
var graphics = Graphics.FromImage(image);
int tabStop = 500;
for (int jj = _pageStartIndex; jj < _fileList.Count && ii < count; ii++, jj++)
{
var tabStopScannerButton = list[ii] as TabStopScannerButton;
tabStopScannerButton.SetTabStops(0.0f, new float[] { 25, tabStop });
list[ii].UserData = _fileList[jj];
var name = _fileList[jj].Name;
var str = getMeasuredString(graphics, tabStopScannerButton.UIControl.Font, tabStop, name);
list[ii].SetText(str + "\t" + _fileList[jj].LastWriteTime.ToString(DateFormat));
}
image.Dispose();
graphics.Dispose();
}