/** * Performs actions after specific Route is selected. * * @param ae - Route Object Tag value (String) */ public void selectRouteAction(ItemEvent ae) { Item item = (Item) ((JComboBox) ae.getSource()).getSelectedItem(); String routeTag = item.getId(); Vector<Item> busDirectionItems = null; mainView.enableRefresh(false); try { busDirectionItems = mainModel.getBusDirectionItems(routeTag); if (busDirectionItems.size() > 0) { // Clear Out Bus Stops Table mainView.clearStops(); // Populate Directions Combobox updateMapDirections(busDirectionItems); // Populate Directions Hash Map mainModel.setDirectionsMap(routeTag); // Draw Route on map drawMapRoute(routeTag); } else { mainView.enableRouteDirections(false); } } catch (ServiceUnavailableException e) { mainView.notifyAndExit(MainView.NEXTBUS_SERVICE_UNAVAILABLE); } catch (NullPointerException npe) { resetAll(); // npe.printStackTrace(); } }
/** * Accepts Item Vector List of all the Bus Directions. Populates Bus Directions ComboBox with * provided Bus Directions List. * * @param busDirectionItems Item Vector List */ private void updateMapDirections(Vector<Item> busDirectionItems) { mainView.clearDirections(); mainView.enableRouteDirections(true); mainView.enableRefresh(true); Iterator<Item> itr = busDirectionItems.iterator(); while (itr.hasNext()) { mainView.addRouteDirectionItem((Item) itr.next()); } }
/** Action performed when Search By Address Radio Button is selected */ public void rdBusRouteAction() { resetAll(); mainView.enableAddressSearch(false); mainView.enableRouteDirections(false); mainView.enableRoute(true); mainView.enableRefresh(false); mainView.updateStatus(MainView.DEFAULT_STATUS); String[] tableColumns = BUS_ROUTE_COLUMNS; mainView.setTableColumns(tableColumns); }
/** Action performed when Search By Address Radio Button is selected */ public void rdSearchAddressAction() { resetAll(); mainView.enableRoute(false); mainView.enableRouteDirections(false); mainView.enableAddressSearch(true); mainView.enableRefresh(false); mainView.updateStatus(MainView.DEFAULT_STATUS); String[] tableColumns = SEARCH_ADDRESS_COLUMNS; mainView.setTableColumns(tableColumns); }
/** Clears Bus Route and Stop information from Map and Table */ private void resetAll() { mainView.clearStops(); mainView.clearDirections(); mainView.enableRouteDirections(false); mainView.resetMapViewer(); }