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;

View file

@ -404,8 +404,8 @@ public:
void EnableLine(int i, bool e);
void DisableLine(int i) { EnableLine(i, false); }
bool IsLineEnabled(int i) const { return array[i].enabled; }
bool IsLineDisabled(int i) const { return !array[i].enabled; }
bool IsLineEnabled(int i) const;
bool IsLineDisabled(int i) const { return IsLineEnabled(i); }
Vector<Value> ReadRow(int i) const; // deprecated name
Vector<Value> GetLine(int i) const { return ReadRow(i); }