CtrlLib: ArrayCtrl VirtualCount vs IsLineEnabled fix

git-svn-id: svn://ultimatepp.org/upp/trunk@1567 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
cxl 2009-09-09 08:26:20 +00:00
parent 21b934bd2d
commit 40ada17a2a
2 changed files with 9 additions and 4 deletions

View file

@ -1306,7 +1306,12 @@ void ArrayCtrl::Select(int i, bool sel)
void ArrayCtrl::EnableLine(int i, bool en)
{
array[i].enabled = en;
array.At(i).enabled = en;
}
bool ArrayCtrl::IsLineEnabled(int i) const
{
return i < 0 ? false : i < array.GetCount() ? array[i].enabled : true;
}
void ArrayCtrl::Select(int i, int count, bool sel)
@ -1360,7 +1365,7 @@ void ArrayCtrl::CenterCursor() {
int ArrayCtrl::FindEnabled(int i, int dir)
{
ASSERT(dir == -1 || dir == 1);
while(i >= 0 && i < array.GetCount()) {
while(i >= 0 && i < GetCount()) {
if(IsLineEnabled(i))
return i;
i += dir;