From cccc62990e9b3736d7b5b86acd7acf7dcd8de8c3 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Wed, 8 Feb 2012 12:26:56 +0000 Subject: Moved the route movement stuff to a branch. --- gen/net/cbaines/suma/R.java | Bin 11527 -> 11649 bytes res/menu/stop_menu.xml | 8 ++++---- src/net/cbaines/suma/BusStopActivity.java | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/gen/net/cbaines/suma/R.java b/gen/net/cbaines/suma/R.java index c18db21..ba914fb 100644 Binary files a/gen/net/cbaines/suma/R.java and b/gen/net/cbaines/suma/R.java differ diff --git a/res/menu/stop_menu.xml b/res/menu/stop_menu.xml index 408e536..c44efa2 100644 --- a/res/menu/stop_menu.xml +++ b/res/menu/stop_menu.xml @@ -1,17 +1,17 @@ - + android:title="@string/menu_previous_stop"/> - + android:title="@string/menu_next_stop"/> \ No newline at end of file diff --git a/src/net/cbaines/suma/BusStopActivity.java b/src/net/cbaines/suma/BusStopActivity.java index 6c46d03..1f99b8a 100644 --- a/src/net/cbaines/suma/BusStopActivity.java +++ b/src/net/cbaines/suma/BusStopActivity.java @@ -334,7 +334,7 @@ public class BusStopActivity extends OrmLiteBaseActivity impleme @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle item selection - if (false) { // (item.getItemId() == R.id.menu_previous_stop || item.getItemId() == R.id.menu_next_stop) { + if (item.getItemId() == R.id.menu_previous_stop || item.getItemId() == R.id.menu_next_stop) { Log.v(TAG, "Got a request for the stop movement"); Log.v(TAG, routes.size() + " routes avalible from this stop"); @@ -343,7 +343,7 @@ public class BusStopActivity extends OrmLiteBaseActivity impleme for (BusRoute route : routes) { try { - if (false) { // (item.getItemId() == R.id.menu_next_stop) { + if (item.getItemId() == R.id.menu_next_stop) { busStops.add(route.moveInRoute(this, getHelper().getBusStopDao().queryForId(busStopID), null, 1)); } else { busStops.add(route.moveInRoute(this, getHelper().getBusStopDao().queryForId(busStopID), null, -1)); -- cgit v1.2.3 From f2ac73dde202d0999e210956747a510712129027 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Wed, 8 Feb 2012 12:38:08 +0000 Subject: Basic route movement working, need to code the dialog box next... --- src/net/cbaines/suma/BusRoute.java | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/src/net/cbaines/suma/BusRoute.java b/src/net/cbaines/suma/BusRoute.java index 5af89e7..96cf0ce 100644 --- a/src/net/cbaines/suma/BusRoute.java +++ b/src/net/cbaines/suma/BusRoute.java @@ -121,20 +121,18 @@ public class BusRoute { if (forwardDirection != null) { - if (direction == null) { - return null; - } + if (direction != null) { - if (forwardDirection.equals(direction)) { + if (forwardDirection.equals(direction)) { - } else if (reverseDirection.equals(direction)) { - moveAmount = -moveAmount; - } else { - Log.e("BusRoute", "Direction (" + direction + ") doesnt match either the forward direction (" + forwardDirection + ") or reverse direction (" - + reverseDirection + ")"); - return null; + } else if (reverseDirection.equals(direction)) { + moveAmount = -moveAmount; + } else { + Log.e("BusRoute", "Direction (" + direction + ") doesnt match either the forward direction (" + forwardDirection + + ") or reverse direction (" + reverseDirection + ")"); + return null; + } } - } try { @@ -147,12 +145,12 @@ public class BusRoute { List routeStopsFound = routeStopsDao.query(routeStopsPreparedQuery); Log.v("BusRoute", "Found " + routeStopsFound.size() + " stops"); - + int stopIndex = 0; - + for (RouteStops routeStop : routeStopsFound) { if (routeStop.stop.id.equals(stop.id)) { - stopIndex = routeStop.sequence -1; + stopIndex = routeStop.sequence - 1; } } -- cgit v1.2.3 From 2b1ff25e6c6422ee0e52fe1e8e59794002d92ce0 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Wed, 8 Feb 2012 12:57:41 +0000 Subject: More stuff. --- gen/net/cbaines/suma/R.java | Bin 11649 -> 11770 bytes res/layout/bus_stop_dialog.xml | 15 +++++ src/net/cbaines/suma/BusStopDialog.java | 98 ++++++++++++++++++++++++++++++++ 3 files changed, 113 insertions(+) create mode 100644 res/layout/bus_stop_dialog.xml create mode 100644 src/net/cbaines/suma/BusStopDialog.java diff --git a/gen/net/cbaines/suma/R.java b/gen/net/cbaines/suma/R.java index ba914fb..c08b7d0 100644 Binary files a/gen/net/cbaines/suma/R.java and b/gen/net/cbaines/suma/R.java differ diff --git a/res/layout/bus_stop_dialog.xml b/res/layout/bus_stop_dialog.xml new file mode 100644 index 0000000..24148c6 --- /dev/null +++ b/res/layout/bus_stop_dialog.xml @@ -0,0 +1,15 @@ + + + + + + + \ No newline at end of file diff --git a/src/net/cbaines/suma/BusStopDialog.java b/src/net/cbaines/suma/BusStopDialog.java new file mode 100644 index 0000000..670fc96 --- /dev/null +++ b/src/net/cbaines/suma/BusStopDialog.java @@ -0,0 +1,98 @@ +/* + * Southampton University Map App + * Copyright (C) 2011 Christopher Baines + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +package net.cbaines.suma; + +import java.sql.SQLException; +import java.util.ArrayList; + +import android.app.Dialog; +import android.content.Context; +import android.util.Log; +import android.view.View; +import android.widget.AdapterView.OnItemClickListener; +import android.widget.AdapterView.OnItemLongClickListener; +import android.widget.ListView; +import android.widget.TextView; + +import com.j256.ormlite.android.apptools.OpenHelperManager; +import com.j256.ormlite.dao.Dao; + +public class BusStopDialog extends Dialog { + + private static final String TAG = "BusStopDialog"; + private ListView listItems; + + private final Context context; + + protected POIArrayAdapter adapter; + + private ArrayList busStops; + + public BusStopDialog(Context context) { + super(context); + + this.context = context; + + setContentView(R.layout.bus_stop_dialog); + setTitle("Favourite Items"); + + busStops = new ArrayList(); + + listItems = (ListView) findViewById(R.id.favouriteListItems); + + refresh(); + } + + public void refresh() { + + DatabaseHelper helper = OpenHelperManager.getHelper(context, DatabaseHelper.class); + + try { + + if (busStops.size() == 0) { + Log.e(TAG, "Error"); + } else { + listItems.post(new Runnable() { + public void run() { + adapter = new POIArrayAdapter(context, busStops); + + listItems.setVisibility(View.VISIBLE); + listItems.setAdapter(adapter); + + } + }); + + } + } catch (SQLException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + void setOnItemClickListener(OnItemClickListener item) { + listItems.setOnItemClickListener(item); + + } + + void setOnItemLongClickListener(OnItemLongClickListener item) { + listItems.setOnItemLongClickListener(item); + } + +} -- cgit v1.2.3