When I delete the last item in an inbox I get and "index out of range
error"
Here is my function:
Int16 DeleteFromList(Int16 ListID, Char* item)
{
FormPtr form;
ListPtr listP;
Char** items;
Int16 numItems, i, j, numSelected, rval;
form = FrmGetActiveForm();
listP = (ListPtr) FrmGetObjectPtr(form, FrmGetObjectIndex
(form, ListID));
items = (Char **) MemPtrNew(255);
numItems = LstGetNumberOfItems(listP);
numSelected = LstGetSelection(listP);
if (numSelected == noListSelection)
{
FrmCustomAlert(AlertDeleteListItem, item, NULL, NULL);
rval = -1;
} else {
//Prompt to remove selection
j = FrmCustomAlert(AlertConfirmDeleteListItem, item,
NULL, NULL);
if (j == 0)
{
// Romove selection
for (i=0; i<=numItems; i++)
{
if (i != numSelected)
{
items[j++] =
LstGetSelectionText(listP, i);
}
}
LstSetListChoices(listP, items, (numItems-1));
LstDrawList(listP);
rval = numSelected;
} else {
rval = -1;
}
}
return rval;
}
And my call:
case LeadershipDeleteButton:
if (DeleteFromList(LeadershipLeadershipList, "name") != -1);
form = FrmGetActiveForm();
listP = (ListPtr) FrmGetObjectPtr(form,
FrmGetObjectIndex(form, LeadershipLeadershipList));
DmRemoveRecord(gLeadershipDB, LstGetSelection(listP));
handled = true;
break;
Thanks!
:D
---
Dustin Davis
Shiblon Software
http://www.shiblon.com
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palmos.com/dev/support/forums/