Merge branch 'ubilabs--rcapp--feature--finishing-since' into ubilabs--rcapp--develop

This commit is contained in:
Peter Siegmund committed 2015-06-20 10:52:41 +02:00
commit 89a4f0f051
6 files changed
+51 -27

No files matched your search

@@ -24,10 +24,19 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_margin="@dimen/default_margin_half"
android:layout_marginTop="@dimen/default_margin_half"
android:text="@string/finishing_started"
android:textAppearance="?textNormal"/>
<TextView
android:id="@+id/first_vessel_since"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginBottom="@dimen/default_margin_half"
android:text="@string/finishing_started_since"
android:textAppearance="?textNormal"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -353,7 +353,8 @@
<string name="race_summary_wind_direction_value">aus %.0f°</string>
<string name="race_summary_wind_speed">Durchschnittliche Windgeschwindigkeit</string>
<string name="record_voice">Stimme aufzeichnen</string>
<string name="finishing_started">Erstes Schiff im Ziel um #TIME#</string>
<string name="finishing_started">Erstes Schiff im Ziel um %s</string>
<string name="finishing_started_since">(%s)</string>
<string name="finishing_done">Jetzt runter</string>
<string name="finished_edit">Liste bearbeiten</string>
<string name="finished_list">Zielliste</string>
@@ -370,7 +370,8 @@
<string name="race_summary_individual_recalls">Individual Recalls</string>
<string name="race_summary_time" translatable="false">%s min</string>
<string name="record_voice">Record Voice</string>
<string name="finishing_started">First vessel in finish at #TIME#</string>
<string name="finishing_started">First vessel in finish at %s</string>
<string name="finishing_started_since">(%s)</string>
<string name="finishing_done">Down now</string>
<string name="finished_recording">Recording</string>
@@ -1,8 +1,5 @@
package com.sap.sailing.racecommittee.app.ui.adapters.coursedesign;
import java.util.ArrayList;
import java.util.List;
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
@@ -10,17 +7,19 @@ import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import com.sap.sailing.domain.base.Mark;
import com.sap.sailing.racecommittee.app.R;
import com.sap.sailing.racecommittee.app.ui.utils.MarkImageHelper;
import java.util.ArrayList;
import java.util.List;
public class CourseMarkAdapter extends RecyclerView.Adapter<CourseMarkAdapter.ViewHolder> {
private Context mContext;
private List<Mark> mMarks;
private MarkImageHelper mImageHelper;
private MarkLongClick mListener;
private MarkClick mListener;
public CourseMarkAdapter(Context context, ArrayList<Mark> marks, MarkImageHelper imageHelper) {
mContext = context;
@@ -52,15 +51,15 @@ public class CourseMarkAdapter extends RecyclerView.Adapter<CourseMarkAdapter.Vi
return 0;
}
public void setListener(MarkLongClick listener) {
public void setListener(MarkClick listener) {
mListener = listener;
}
public interface MarkLongClick {
void onItemLongClick(Mark mark);
public interface MarkClick {
void onItemClick(Mark mark);
}
public class ViewHolder extends RecyclerView.ViewHolder implements View.OnLongClickListener {
public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
public TextView textView;
public ImageView imageView;
@@ -68,18 +67,16 @@ public class CourseMarkAdapter extends RecyclerView.Adapter<CourseMarkAdapter.Vi
public ViewHolder(View itemView) {
super(itemView);
itemView.setOnLongClickListener(this);
itemView.setOnClickListener(this);
textView = (TextView) itemView.findViewById(R.id.cell_text);
imageView = (ImageView) itemView.findViewById(R.id.cell_image);
}
@Override
public boolean onLongClick(View v) {
public void onClick(View v) {
if (mListener != null) {
mListener.onItemLongClick(mMarks.get(getAdapterPosition()));
return true;
mListener.onItemClick(mMarks.get(getAdapterPosition()));
}
return false;
}
}
}
@@ -36,7 +36,7 @@ import com.sap.sailing.racecommittee.app.ui.adapters.coursedesign.CourseElementA
import com.sap.sailing.racecommittee.app.ui.adapters.coursedesign.CourseElementAdapter.EventListener;
import com.sap.sailing.racecommittee.app.ui.adapters.coursedesign.CourseListDataElement;
import com.sap.sailing.racecommittee.app.ui.adapters.coursedesign.CourseMarkAdapter;
import com.sap.sailing.racecommittee.app.ui.adapters.coursedesign.CourseMarkAdapter.MarkLongClick;
import com.sap.sailing.racecommittee.app.ui.adapters.coursedesign.CourseMarkAdapter.MarkClick;
import com.sap.sailing.racecommittee.app.ui.comparators.NaturalNamedComparator;
import com.sap.sailing.racecommittee.app.ui.utils.ESSMarkImageHelper;
import com.sap.sailing.racecommittee.app.utils.BitmapHelper;
@@ -48,7 +48,7 @@ import java.util.Collection;
import java.util.Collections;
import java.util.List;
public class CourseFragmentMarks extends CourseFragment implements MarkLongClick, ElementLongClick, EventListener {
public class CourseFragmentMarks extends CourseFragment implements MarkClick, ElementLongClick, EventListener {
private RecyclerViewDragDropManager mDragDropManager;
private RecyclerViewSwipeManager mSwipeManager;
@@ -327,7 +327,7 @@ public class CourseFragmentMarks extends CourseFragment implements MarkLongClick
}
@Override
public void onItemLongClick(Mark mark) {
public void onItemClick(Mark mark) {
if (mElements.isEmpty()) {
addNewCourseElementToList(mark);
} else {
@@ -1,7 +1,5 @@
package com.sap.sailing.racecommittee.app.ui.fragments.raceinfo;
import java.text.SimpleDateFormat;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.view.LayoutInflater;
@@ -10,14 +8,21 @@ import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import com.sap.sailing.android.shared.util.ViewHolder;
import com.sap.sailing.domain.common.racelog.Flags;
import com.sap.sailing.racecommittee.app.R;
import com.sap.sailing.racecommittee.app.ui.utils.FlagsResources;
import com.sap.sailing.racecommittee.app.utils.TimeUtils;
import com.sap.sse.common.TimePoint;
import com.sap.sse.common.impl.MillisecondsTimePoint;
import java.text.SimpleDateFormat;
public class RaceFinishingFragment extends BaseFragment {
private SimpleDateFormat mDateFormat;
private TextView mFinishingSince;
public static RaceFinishingFragment newInstance() {
RaceFinishingFragment fragment = new RaceFinishingFragment();
Bundle args = new Bundle();
@@ -30,6 +35,9 @@ public class RaceFinishingFragment extends BaseFragment {
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View layout = inflater.inflate(R.layout.race_finishing, container, false);
mDateFormat = new SimpleDateFormat("HH:mm:ss", getResources().getConfiguration().locale);
mFinishingSince = ViewHolder.get(layout, R.id.first_vessel_since);
ImageView flag = ViewHolder.get(layout, R.id.flag);
if (flag != null) {
flag.setImageDrawable(FlagsResources.getFlagDrawable(getActivity(), Flags.BLUE.name(), 96));
@@ -55,11 +63,19 @@ public class RaceFinishingFragment extends BaseFragment {
if (getView() != null) {
TextView first_vessel = ViewHolder.get(getView(), R.id.first_vessel);
if (first_vessel != null && getRaceState() != null && getRaceState().getFinishingTime() != null) {
String vessel_time = getString(R.string.finishing_started);
SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss", getResources().getConfiguration().locale);
vessel_time = vessel_time.replace("#TIME#", dateFormat.format(getRaceState().getFinishingTime().asDate()));
first_vessel.setText(vessel_time);
first_vessel.setText(getString(R.string.finishing_started, mDateFormat.format(getRaceState().getFinishingTime().asDate())));
}
}
notifyTick(MillisecondsTimePoint.now());
}
@Override
public void notifyTick(TimePoint now) {
super.notifyTick(now);
if (mFinishingSince != null) {
String timeDiff = TimeUtils.formatDurationSince(now.minus(getRaceState().getFinishingTime().asMillis()).asMillis());
mFinishingSince.setText(getString(R.string.finishing_started_since, timeDiff));
}
}
}