exchanged download icon and refactored code

pull/234/head
Janet Do 9 years ago
parent 3a9477bc5f
commit e9def2944f

@ -99,17 +99,23 @@ public class ListHabitsController
public void onExportCSV(List<Habit> selectedHabits) public void onExportCSV(List<Habit> selectedHabits)
{ {
List<Habit> selected = new LinkedList<>(); List<Habit> selected = new ArrayList<>();
if(selectedHabits.isEmpty()) { if(selectedHabits.isEmpty()) {
for (Habit h : habitList) selected.add(h); for (Habit h : habitList) selected.add(h);
} }
else { else {
selected = selectedHabits; selected = selectedHabits;
} }
taskRunner.execute(exportCSVFactory.create(selected, filename -> {
if (filename != null) screen.showSendFileScreen(filename); ExportCSVTask task = exportCSVFactory.create(selected, filename -> {
else screen.showMessage(R.string.could_not_export); if (filename != null){
})); screen.showSendFileScreen(filename);
}
else {
screen.showMessage(R.string.could_not_export);
}
});
taskRunner.execute(task);
} }
public void onExportDB() public void onExportDB()

@ -27,7 +27,7 @@ import org.isoron.uhabits.activities.habits.edit.*;
import org.isoron.uhabits.activities.habits.list.ListHabitsController; import org.isoron.uhabits.activities.habits.list.ListHabitsController;
import org.isoron.uhabits.models.*; import org.isoron.uhabits.models.*;
import java.util.LinkedList; import java.util.ArrayList;
import javax.inject.*; import javax.inject.*;
@ -81,12 +81,14 @@ public class ShowHabitScreen extends BaseScreen
public void showEditHabitDialog() public void showEditHabitDialog()
{ {
LinkedList<Habit> selected = new LinkedList<>(); EditHabitDialog dialog = editHabitDialogFactory.create(habit);
activity.showDialog(dialog, "editHabit");
}
public void downloadHabit(){
ArrayList<Habit> selected = new ArrayList<Habit>();
selected.add(habit); selected.add(habit);
habitController.onExportCSV(selected); habitController.onExportCSV(selected);
// EditHabitDialog dialog = editHabitDialogFactory.create(habit);
// activity.showDialog(dialog, "editHabit");
} }
public void showEditHistoryDialog() public void showEditHistoryDialog()

@ -50,6 +50,10 @@ public class ShowHabitsMenu extends BaseMenu
screen.showEditHabitDialog(); screen.showEditHabitDialog();
return true; return true;
case R.id.download:
screen.downloadHabit();
return true;
default: default:
return false; return false;
} }

Binary file not shown.

After

Width:  |  Height:  |  Size: 250 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 256 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 185 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 251 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 260 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 371 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 409 B

@ -23,7 +23,7 @@
<item <item
android:id="@+id/download" android:id="@+id/download"
android:icon="?iconArchive" android:icon="?iconDownload"
android:title="@string/download" android:title="@string/download"
app:showAsAction="ifRoom"/> app:showAsAction="ifRoom"/>

@ -38,6 +38,7 @@
<attr name="iconAdd" format="reference"/> <attr name="iconAdd" format="reference"/>
<attr name="iconArchive" format="reference"/> <attr name="iconArchive" format="reference"/>
<attr name="iconChangeColor" format="reference"/> <attr name="iconChangeColor" format="reference"/>
<attr name="iconDownload" format="reference"/>
<attr name="iconEdit" format="reference"/> <attr name="iconEdit" format="reference"/>
<attr name="iconUnarchive" format="reference"/> <attr name="iconUnarchive" format="reference"/>
<attr name="dialogIconChangeColor" format="reference"/> <attr name="dialogIconChangeColor" format="reference"/>

@ -53,6 +53,7 @@
<item name="iconAdd">@drawable/ic_action_add_dark</item> <item name="iconAdd">@drawable/ic_action_add_dark</item>
<item name="iconArchive">@drawable/ic_action_archive_dark</item> <item name="iconArchive">@drawable/ic_action_archive_dark</item>
<item name="iconEdit">@drawable/ic_action_edit_dark</item> <item name="iconEdit">@drawable/ic_action_edit_dark</item>
<item name="iconDownload">@drawable/ic_action_download_dark</item>
<item name="iconUnarchive">@drawable/ic_action_unarchive_dark</item> <item name="iconUnarchive">@drawable/ic_action_unarchive_dark</item>
<item name="iconChangeColor">@drawable/ic_action_color_dark</item> <item name="iconChangeColor">@drawable/ic_action_color_dark</item>
<item name="iconFilter">@drawable/ic_action_filter_dark</item> <item name="iconFilter">@drawable/ic_action_filter_dark</item>

@ -37,6 +37,7 @@ import org.junit.runner.*;
import org.junit.runners.*; import org.junit.runners.*;
import java.io.*; import java.io.*;
import java.util.ArrayList;
import static org.isoron.uhabits.activities.habits.list.ListHabitsScreen.*; import static org.isoron.uhabits.activities.habits.list.ListHabitsScreen.*;
import static org.mockito.Matchers.any; import static org.mockito.Matchers.any;
@ -133,7 +134,7 @@ public class ListHabitsScreenTest extends BaseUnitTest
public void testOnResult_exportCSV() public void testOnResult_exportCSV()
{ {
screen.onResult(REQUEST_SETTINGS, RESULT_EXPORT_CSV, null); screen.onResult(REQUEST_SETTINGS, RESULT_EXPORT_CSV, null);
verify(controller).onExportCSV(); verify(controller).onExportCSV(new ArrayList<Habit>() );
} }
@Test @Test

@ -49,40 +49,15 @@ public class ShowHabitsMenuTest extends BaseUnitTest
private ShowHabitScreen screen; private ShowHabitScreen screen;
private ShowHabitsMenu menu; private ShowHabitsMenu menu;
private ThemeSwitcher themeSwitcher;
private ArgumentCaptor<HabitMatcher> matcherCaptor;
@Override @Override
public void setUp() public void setUp()
{ {
super.setUp(); super.setUp();
activity = mock(ShowHabitActivity.class);
screen = mock(ShowHabitScreen.class); screen = mock(ShowHabitScreen.class);
menu = new ShowHabitsMenu(activity, screen); menu = new ShowHabitsMenu(activity, screen);
//matcherCaptor = ArgumentCaptor.forClass(HabitMatcher.class);
}
@Test
public void testOnCreate()
{
MenuItem nightModeItem = mock(MenuItem.class);
MenuItem hideArchivedItem = mock(MenuItem.class);
MenuItem hideCompletedItem = mock(MenuItem.class);
Menu androidMenu = mock(Menu.class);
when(androidMenu.findItem(R.id.actionToggleNightMode)).thenReturn(
nightModeItem);
when(androidMenu.findItem(R.id.actionHideArchived)).thenReturn(
hideArchivedItem);
when(androidMenu.findItem(R.id.actionHideCompleted)).thenReturn(
hideCompletedItem);
menu.onCreate(androidMenu);
} }
@Test @Test

Loading…
Cancel
Save