Difference between revisions of "Teams Winter 2011/team1/BlackBerry/Implement Delete Option"
(Created page with '=== 7. Implement Delete Student option === 7.1. In the <code>ViewStudentApp</code> implement <code>DeleteCommandHandler</code> by adding anonymous class: <pre> deleteItem.setC…') |
|||
Line 29: | Line 29: | ||
[[Image: BB_delete2.png | 300px]]<br/> | [[Image: BB_delete2.png | 300px]]<br/> | ||
7.5. Select "'''Yes'''" Option. The dialog window comes up acknowledging that student is deleted:<br/> | 7.5. Select "'''Yes'''" Option. The dialog window comes up acknowledging that student is deleted:<br/> | ||
− | [[Image: BB_delete3.png | 300px]] | + | [[Image: BB_delete3.png | 300px]]<br/> |
+ | 7.6. Add "''Delete Student''" as option in view screen. Change the one argument constructor of the anonymous class to two argument constructor: | ||
+ | <pre> | ||
+ | InfoScreen(final Student student, final StudentList studentList) { } | ||
+ | </pre> | ||
+ | 7.7. Add <code>MenuItem</code> to this screen menu and implement <code>CommandHandler</code>: | ||
+ | <pre> | ||
+ | MenuItem deleteItem = new MenuItem(new StringProvider("Delete Student"), 400, 4); | ||
+ | deleteItem.setCommand(new Command(new CommandHandler(){ | ||
+ | public void execute(ReadOnlyCommandMetadata metadata, Object context) { | ||
+ | |||
+ | if (student != null) { | ||
+ | String[] selections = {"Yes","Cancel"}; | ||
+ | Dialog deleteDialog = new Dialog("Are you sure you want to delete " + student.getName() + "?", selections, null, 0, null); | ||
+ | |||
+ | // Display the dialog and deletes the element from the list | ||
+ | if(deleteDialog.doModal() == 0) { | ||
+ | studentList.deleteElement(student); | ||
+ | Dialog.alert(student.getName() + " has been deleted!"); | ||
+ | close(); | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | })); | ||
+ | addMenuItem(deleteItem); | ||
+ | </pre> | ||
+ | 7.8. Run the application, select a student and inside the View Screen go to the menu and select "'''Delete Student'''": <br/> | ||
+ | [[Image: BB_delete4.png | 300px]] |
Revision as of 15:02, 21 March 2011
7. Implement Delete Student option
7.1. In the ViewStudentApp
implement DeleteCommandHandler
by adding anonymous class:
deleteItem.setCommand(new Command(new CommandHandler(){ public void execute(ReadOnlyCommandMetadata metadata, Object context) { Student student = (Student) _keywordFilterField.getSelectedElement(); if (student != null) { String[] selections = {"Yes","Cancel"}; Dialog deleteDialog = new Dialog("Are you sure you want to delete " + student.getName() + "?", selections, null, 0, null); // Display the dialog and deletes the element from the list if(deleteDialog.doModal() == 0) { _studentList.deleteElement(student); Dialog.alert(student.getName() + " has been deleted!"); } } } }));
7.2. Add the deleteElement()
method to the StudentList
class:
void deleteElement(Object element) { doRemove(element); }
7.3. Run the application, select one student and select "Delete Student" from the menu:
7.4. Click "Delete Student". A dialog box pop-ups asking to confirm the student deletion:
7.5. Select "Yes" Option. The dialog window comes up acknowledging that student is deleted:
7.6. Add "Delete Student" as option in view screen. Change the one argument constructor of the anonymous class to two argument constructor:
InfoScreen(final Student student, final StudentList studentList) { }
7.7. Add MenuItem
to this screen menu and implement CommandHandler
:
MenuItem deleteItem = new MenuItem(new StringProvider("Delete Student"), 400, 4); deleteItem.setCommand(new Command(new CommandHandler(){ public void execute(ReadOnlyCommandMetadata metadata, Object context) { if (student != null) { String[] selections = {"Yes","Cancel"}; Dialog deleteDialog = new Dialog("Are you sure you want to delete " + student.getName() + "?", selections, null, 0, null); // Display the dialog and deletes the element from the list if(deleteDialog.doModal() == 0) { studentList.deleteElement(student); Dialog.alert(student.getName() + " has been deleted!"); close(); } } } })); addMenuItem(deleteItem);
7.8. Run the application, select a student and inside the View Screen go to the menu and select "Delete Student":