From 0ced4fc3d9d94a5602ab2586938660db4fb0499c Mon Sep 17 00:00:00 2001 From: Tim Su Date: Wed, 11 Aug 2010 17:04:01 -0700 Subject: [PATCH] New sort selection activity now works, updates the task list as you'd expect. --- .../com/todoroo/andlib/sql/Order.java | 67 ++-- .../todoroo/astrid/locale/LocaleReceiver.java | 3 +- astrid/res/layout/sort_selection_dialog.xml | 11 +- .../activity/SortSelectionActivity.java | 165 +++++++++- .../astrid/activity/TaskListActivity.java | 53 +++- .../todoroo/astrid/adapter/TaskAdapter.java | 14 +- .../todoroo/astrid/service/TaskService.java | 16 +- .../todoroo/astrid/utility/Preferences.java | 25 ++ .../todoroo/astrid/widget/TasksWidget.java | 297 +++++++++--------- 9 files changed, 435 insertions(+), 216 deletions(-) diff --git a/astrid/common-src/com/todoroo/andlib/sql/Order.java b/astrid/common-src/com/todoroo/andlib/sql/Order.java index 2c411fa4d..0cb91a670 100644 --- a/astrid/common-src/com/todoroo/andlib/sql/Order.java +++ b/astrid/common-src/com/todoroo/andlib/sql/Order.java @@ -1,30 +1,37 @@ -package com.todoroo.andlib.sql; - -import static com.todoroo.andlib.sql.SqlConstants.SPACE; - -public class Order { - private final Object expression; - private final OrderType orderType; - - private Order(Object expression) { - this(expression, OrderType.ASC); - } - - private Order(Object expression, OrderType orderType) { - this.expression = expression; - this.orderType = orderType; - } - - public static Order asc(Object expression) { - return new Order(expression); - } - - public static Order desc(Object expression) { - return new Order(expression, OrderType.DESC); - } - - @Override - public String toString() { - return expression + SPACE + orderType; - } -} +package com.todoroo.andlib.sql; + +import static com.todoroo.andlib.sql.SqlConstants.SPACE; + +public class Order { + private final Object expression; + private final OrderType orderType; + + private Order(Object expression) { + this(expression, OrderType.ASC); + } + + private Order(Object expression, OrderType orderType) { + this.expression = expression; + this.orderType = orderType; + } + + public static Order asc(Object expression) { + return new Order(expression); + } + + public static Order desc(Object expression) { + return new Order(expression, OrderType.DESC); + } + + @Override + public String toString() { + return expression + SPACE + orderType; + } + + public Order reverse() { + if(orderType == OrderType.ASC) + return new Order(expression, OrderType.DESC); + else + return new Order(expression, OrderType.ASC); + } +} diff --git a/astrid/plugin-src/com/todoroo/astrid/locale/LocaleReceiver.java b/astrid/plugin-src/com/todoroo/astrid/locale/LocaleReceiver.java index 5d5a03c5c..1fd2ab5cd 100644 --- a/astrid/plugin-src/com/todoroo/astrid/locale/LocaleReceiver.java +++ b/astrid/plugin-src/com/todoroo/astrid/locale/LocaleReceiver.java @@ -70,7 +70,8 @@ public class LocaleReceiver extends BroadcastReceiver { DependencyInjectionService.getInstance().inject(this); Filter filter = new Filter(title, title, null, null); filter.sqlQuery = sql; - TodorooCursor cursor = PluginServices.getTaskService().fetchFiltered(filter, null, Task.ID); + TodorooCursor cursor = PluginServices.getTaskService().fetchFiltered( + sql, null, Task.ID); try { if(cursor.getCount() == 0) return; diff --git a/astrid/res/layout/sort_selection_dialog.xml b/astrid/res/layout/sort_selection_dialog.xml index ace8e3cca..bd8beee3f 100644 --- a/astrid/res/layout/sort_selection_dialog.xml +++ b/astrid/res/layout/sort_selection_dialog.xml @@ -2,7 +2,9 @@ + android:layout_height="wrap_content" + android:paddingLeft="10dip" + android:paddingRight="10dip"> + android:background="@drawable/edit_titlebar"/>