private void GoPost(bool forward)
{
if (_curList.SelectedIndices.Count == 0 || _curPost == null)
return;
var tab = this._statuses.Tabs[this._curTab.Text];
var selectedIndex = this._curList.SelectedIndices[0];
int fIdx, toIdx, stp;
if (forward)
{
fIdx = selectedIndex + 1;
if (fIdx > tab.AllCount - 1) return;
toIdx = tab.AllCount;
stp = 1;
}
else
{
fIdx = selectedIndex - 1;
if (fIdx < 0) return;
toIdx = -1;
stp = -1;
}
string name = "";
if (_curPost.RetweetedId == null)
{
name = _curPost.ScreenName;
}
else
{
name = _curPost.RetweetedBy;
}
for (int idx = fIdx; idx != toIdx; idx += stp)
{
var post = tab[idx];
if (post.RetweetedId == null)
{
if (post.ScreenName == name)
{
SelectListItem(_curList, idx);
_curList.EnsureVisible(idx);
break;
}
}
else
{
if (post.RetweetedBy == name)
{
SelectListItem(_curList, idx);
_curList.EnsureVisible(idx);
break;
}
}
}
}