Skip to content
This repository has been archived by the owner on Feb 13, 2025. It is now read-only.

Commit

Permalink
Merge branch 'release/v1.1'
Browse files Browse the repository at this point in the history
* release/v1.1: (33 commits)
  Added updated APK
  Don't error for lint
  Automate the menu for version number
  Bumped version
  Added style for lightbox activity
  Added image taken date into image lightbox
  Updated readmes
  Added new actions
  Fixed issue with last water not being found correctly
  Fixed issue with models not comparing correctly
  Fixed issue with date not being set when editing a feeding
  Remove background from nutrient view
  Replaced date with new date dialog and tided up UI
  Changed date from edit text to normal text
  Set checked when saving
  Fixed issue with focus not toggling
  Added date dialog fragment and added into plant details
  Added clone fields and UI
  Added date editing for water
  Updated add button text
  ...
  • Loading branch information
7LPdWcaW committed Aug 14, 2015
2 parents 6339d7b + 3cb7492 commit 23d96a0
Show file tree
Hide file tree
Showing 35 changed files with 1,010 additions and 267 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ Water action is the same as a feeding action, sans the "nutrient" object

Action can be one of,

`TRIM`, `TOP`, `FIM`, `LST`, `LOLLIPOP`, `FLUSH`
`TRIM`, `TOP`, `FIM`, `LST`, `LOLLIPOP`, `FLUSH`, `FOLIAR_FEED`, `PESTICIDE_APPLICATION`

```
{
Expand Down
Binary file modified app/app-release.apk
Binary file not shown.
8 changes: 6 additions & 2 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,12 @@ android {
applicationId "me.anon.grow"
minSdkVersion 15
targetSdkVersion 22
versionCode 1
versionName "1.0"
versionCode 2
versionName "1.1"
}

lintOptions {
abortOnError false
}
}

Expand Down
3 changes: 2 additions & 1 deletion app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,11 @@
<activity android:name=".MainActivity" android:screenOrientation="portrait" />
<activity android:name=".AddPlantActivity" android:screenOrientation="portrait" />
<activity android:name=".AddFeedingActivity" android:screenOrientation="portrait" />
<activity android:name=".EditFeedingActivity" android:screenOrientation="portrait" />
<activity android:name=".ViewPhotosActivity" android:screenOrientation="portrait" />
<activity android:name=".EventsActivity" android:screenOrientation="portrait" />
<activity android:name=".StatisticsActivity" android:screenOrientation="portrait" />
<activity android:name=".fragment.ImageLightboxDialog" />
<activity android:name=".fragment.ImageLightboxDialog" android:theme="@style/fullscreen" />
<activity android:name=".PlantDetailsActivity" android:windowSoftInputMode="stateAlwaysHidden" android:screenOrientation="portrait" />
</application>
</manifest>
2 changes: 1 addition & 1 deletion app/src/main/assets/readme.html
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ <h3>Action object (water)</h3>
}
</pre>
<h3>Action object (other)</h3>
<p>Action can be one of, <pre>TRIM, TOP, FIM, LST, LOLLIPOP, FLUSH</pre></p>
<p>Action can be one of, <pre>TRIM, TOP, FIM, LST, LOLLIPOP, FLUSH, FOLIAR_FEED, PESTICIDE_APPLICATION</pre></p>
<pre>
{
"action": &lt;Action&gt;,
Expand Down
70 changes: 53 additions & 17 deletions app/src/main/java/me/anon/controller/adapter/ActionAdapter.java
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,13 @@
*/
public class ActionAdapter extends RecyclerView.Adapter<ActionHolder>
{
public interface OnActionDeletedListener
public interface OnActionSelectListener
{
public void onActionDeleted(Action action);
public void onActionEdit(Action action);
}

@Setter private OnActionDeletedListener onActionDeletedListener;
@Setter private OnActionSelectListener onActionSelectListener;
@Getter @Setter private List<Action> actions = new ArrayList<>();

@Override public ActionHolder onCreateViewHolder(ViewGroup viewGroup, int i)
Expand Down Expand Up @@ -99,12 +100,16 @@ public interface OnActionDeletedListener

if (((Feed)action).getPh() != null)
{
waterStr.append("PH: " + ((Feed)action).getPh() + ", ");
waterStr.append("PH: ");
waterStr.append(((Feed)action).getPh());
waterStr.append(", ");
}

if (((Feed)action).getRunoff() != null)
{
waterStr.append("Runoff: " + ((Feed)action).getRunoff() + ", ");
waterStr.append("Runoff: ");
waterStr.append(((Feed)action).getRunoff());
waterStr.append(", ");
}

summary += waterStr.toString().length() > 0 ? waterStr.toString().substring(0, waterStr.length() - 2) + "\n" : "";
Expand All @@ -113,12 +118,16 @@ public interface OnActionDeletedListener

if (((Feed)action).getPpm() != null)
{
waterStr.append("PPM: " + ((Feed)action).getPpm() + ", ");
waterStr.append("PPM: ");
waterStr.append(((Feed)action).getPpm());
waterStr.append(", ");
}

if (((Feed)action).getAmount() != null)
{
waterStr.append("Amount: " + ((Feed)action).getAmount() + "ml, ");
waterStr.append("Amount: ");
waterStr.append(((Feed)action).getAmount());
waterStr.append("ml, ");
}

summary += waterStr.toString().length() > 0 ? waterStr.toString().substring(0, waterStr.length() - 2) : "";
Expand All @@ -131,12 +140,16 @@ else if (action instanceof Water)

if (((Water)action).getPh() != null)
{
waterStr.append("PH: " + ((Water)action).getPh() + ", ");
waterStr.append("PH: ");
waterStr.append(((Water)action).getPh());
waterStr.append(", ");
}

if (((Water)action).getRunoff() != null)
{
waterStr.append("Runoff: " + ((Water)action).getRunoff() + ", ");
waterStr.append("Runoff: ");
waterStr.append(((Water)action).getRunoff());
waterStr.append(", ");
}

summary += waterStr.toString().length() > 0 ? waterStr.toString().substring(0, waterStr.length() - 2) + "\n" : "";
Expand All @@ -145,12 +158,16 @@ else if (action instanceof Water)

if (((Water)action).getPpm() != null)
{
waterStr.append("PPM: " + ((Water)action).getPpm() + ", ");
waterStr.append("PPM: ");
waterStr.append(((Water)action).getPpm());
waterStr.append(", ");
}

if (((Water)action).getAmount() != null)
{
waterStr.append("Amount: " + ((Water)action).getAmount() + "ml, ");
waterStr.append("Amount: ");
waterStr.append(((Water)action).getAmount());
waterStr.append("ml, ");
}

summary += waterStr.toString().length() > 0 ? waterStr.toString().substring(0, waterStr.length() - 2) : "";
Expand Down Expand Up @@ -183,22 +200,41 @@ else if (action instanceof StageChange)

viewHolder.itemView.setOnLongClickListener(new View.OnLongClickListener()
{
@Override public boolean onLongClick(View v)
@Override public boolean onLongClick(final View v)
{
new AlertDialog.Builder(v.getContext())
.setTitle("Delete this event?")
.setMessage("Are you sure you want to delete " + viewHolder.getName().getText())
.setPositiveButton("Yes", new DialogInterface.OnClickListener()
.setTitle("Select an option")
.setItems(new String[]{"Edit action", "Delete action"}, new DialogInterface.OnClickListener()
{
@Override public void onClick(DialogInterface dialog, int which)
{
if (onActionDeletedListener != null)
if (which == 0)
{
onActionDeletedListener.onActionDeleted(action);
if (onActionSelectListener != null)
{
onActionSelectListener.onActionEdit(action);
}
}
else if (which == 1)
{
new AlertDialog.Builder(v.getContext())
.setTitle("Delete this event?")
.setMessage("Are you sure you want to delete " + viewHolder.getName().getText())
.setPositiveButton("Yes", new DialogInterface.OnClickListener()
{
@Override public void onClick(DialogInterface dialog, int which)
{
if (onActionSelectListener != null)
{
onActionSelectListener.onActionDeleted(action);
}
}
})
.setNegativeButton("No", null)
.show();
}
}
})
.setNegativeButton("No", null)
.show();

return true;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,8 +87,7 @@ public void setPlants(List<Plant> plants)
{
lastFeed = (Feed)action;
}

if (action instanceof Water && lastWater == null)
else if (action instanceof Water && lastWater == null)
{
lastWater = (Water)action;
}
Expand Down
8 changes: 4 additions & 4 deletions app/src/main/java/me/anon/grow/AddFeedingActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import android.support.v7.app.AppCompatActivity;

import lombok.experimental.Accessors;
import me.anon.grow.fragment.AddFeedingFragment;
import me.anon.grow.fragment.FeedingFragment;
import me.anon.lib.Views;

/**
Expand All @@ -24,15 +24,15 @@ public class AddFeedingActivity extends AppCompatActivity
{
super.onCreate(savedInstanceState);

setTitle("New feeding");

setContentView(R.layout.fragment_holder);
Views.inject(this);

boolean feeding = true;
int plantIndex = -1;
if (getIntent().getExtras() != null)
{
plantIndex = getIntent().getExtras().getInt("plant_index", -1);
feeding = !getIntent().getExtras().getBoolean("water", false);
}

if (plantIndex < 0)
Expand All @@ -43,7 +43,7 @@ public class AddFeedingActivity extends AppCompatActivity

if (getFragmentManager().findFragmentByTag(TAG_FRAGMENT) == null)
{
getFragmentManager().beginTransaction().replace(R.id.fragment_holder, AddFeedingFragment.newInstance(plantIndex, feeding), TAG_FRAGMENT).commit();
getFragmentManager().beginTransaction().replace(R.id.fragment_holder, FeedingFragment.newInstance(plantIndex, -1), TAG_FRAGMENT).commit();
}
}
}
52 changes: 52 additions & 0 deletions app/src/main/java/me/anon/grow/EditFeedingActivity.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
package me.anon.grow;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;

import lombok.experimental.Accessors;
import me.anon.grow.fragment.FeedingFragment;
import me.anon.lib.Views;

/**
* // TODO: Add class description
*
* @author 7LPdWcaW
* @documentation // TODO Reference flow doc
* @project GrowTracker
*/
@Views.Injectable
@Accessors(prefix = {"m", ""}, chain = true)
public class EditFeedingActivity extends AppCompatActivity
{
private static final String TAG_FRAGMENT = "current_fragment";

@Override protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);

setTitle("Edit feeding");

setContentView(R.layout.fragment_holder);
Views.inject(this);

int plantIndex = -1;
int feedingIndex = -1;

if (getIntent().getExtras() != null)
{
plantIndex = getIntent().getExtras().getInt("plant_index", -1);
feedingIndex = getIntent().getExtras().getInt("action_index", -1);
}

if (plantIndex < 0)
{
finish();
return;
}

if (getFragmentManager().findFragmentByTag(TAG_FRAGMENT) == null)
{
getFragmentManager().beginTransaction().replace(R.id.fragment_holder, FeedingFragment.newInstance(plantIndex, feedingIndex), TAG_FRAGMENT).commit();
}
}
}
1 change: 0 additions & 1 deletion app/src/main/java/me/anon/grow/EventsActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
import android.support.v7.app.AppCompatActivity;

import lombok.experimental.Accessors;
import me.anon.grow.fragment.AddFeedingFragment;
import me.anon.grow.fragment.EventListFragment;
import me.anon.lib.Views;

Expand Down
11 changes: 10 additions & 1 deletion app/src/main/java/me/anon/grow/MainActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import android.app.AlertDialog;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.text.Html;
Expand Down Expand Up @@ -48,7 +49,15 @@ public class MainActivity extends AppCompatActivity
{
menu.add(1, 1, 1, "Readme");
menu.add(2, 2, 2, "Export data");
menu.add(3, 3, 3, "Version 0.1");
try
{
menu.add(3, 3, 3, "Version " + getPackageManager().getPackageInfo(getPackageName(), 0).versionName);
}
catch (PackageManager.NameNotFoundException e)
{
e.printStackTrace();
}

return super.onCreateOptionsMenu(menu);
}

Expand Down
30 changes: 28 additions & 2 deletions app/src/main/java/me/anon/grow/fragment/ActionDialogFragment.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
import me.anon.grow.R;
import me.anon.lib.Views;
import me.anon.model.Action;
import me.anon.model.EmptyAction;

@Views.Injectable
public class ActionDialogFragment extends DialogFragment
Expand All @@ -31,14 +32,21 @@ public static interface OnActionSelected

@Setter private OnActionSelected onActionSelected;

private EmptyAction action;

public ActionDialogFragment(){}

public ActionDialogFragment(EmptyAction action)
{
this.action = action;
}

@Override public Dialog onCreateDialog(Bundle savedInstanceState)
{
final Context context = getActivity();

AlertDialog.Builder dialog = new AlertDialog.Builder(context);
dialog.setTitle("Add action");
dialog.setTitle((action == null ? "Add" : "Edit") + " action");
View view = LayoutInflater.from(getActivity()).inflate(R.layout.action_dialog, null);

Views.inject(this, view);
Expand All @@ -48,8 +56,26 @@ public ActionDialogFragment(){}

actionsSpinner.setAdapter(new ArrayAdapter<String>(getActivity(), android.R.layout.simple_spinner_dropdown_item, actions));

if (action != null)
{
notes.setText(action.getNotes());
int selectionIndex = 0;

for (int index = 0; index < actions.length; index++)
{
String actionName = actions[index];
if (actionName.equalsIgnoreCase(action.getAction().getPrintString()))
{
selectionIndex = index;
break;
}
}

actionsSpinner.setSelection(selectionIndex);
}

dialog.setView(view);
dialog.setPositiveButton("Add", new DialogInterface.OnClickListener()
dialog.setPositiveButton(action == null ? "Add" : "Edit", new DialogInterface.OnClickListener()
{
@Override public void onClick(DialogInterface dialog, int which)
{
Expand Down
Loading

0 comments on commit 23d96a0

Please sign in to comment.