package net.osdn.gokigen.joggingtimer.stopwatch;
import android.Manifest;
+import android.annotation.SuppressLint;
import android.content.SharedPreferences;
import android.content.pm.PackageManager;
import android.database.Cursor;
import android.os.Vibrator;
-import android.preference.PreferenceManager;
-import android.support.v4.app.ActivityCompat;
-import android.support.v4.content.ContextCompat;
-import android.support.wearable.activity.WearableActivity;
import android.util.Log;
import android.widget.ImageButton;
import android.widget.ListView;
import static android.content.Context.VIBRATOR_SERVICE;
+import static net.osdn.gokigen.joggingtimer.utilities.SelectReferenceViewModeDialog.PREF_KEY_DISPLAY_LAPGRAPHIC;
+import static net.osdn.gokigen.joggingtimer.utilities.SelectReferenceViewModeDialog.PREF_KEY_REFERENCE_TIME_SELECTION;
+
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.core.app.ActivityCompat;
+import androidx.core.content.ContextCompat;
+import androidx.preference.PreferenceManager;
+
/**
*
*
private final String TAG = toString();
private final String PREF_KEY_TIMER_STARTED = "TMR_START";
private final String PREF_KEY_TIMER_INDEXID = "TMR_INDEX";
- private final String PREF_KEY_DISPLAY_LAPGRAPHIC = "DISP_LAPGRPH";
private SharedPreferences preferences = null;
private final ButtonClickListener clickListener = new ButtonClickListener();
}
@Override
- public void setup(WearableActivity activity, IClickCallback callback, IDatabaseReloadCallback dbCallback)
+ public void setup(AppCompatActivity activity, IClickCallback callback, IDatabaseReloadCallback dbCallback)
{
this.preferences = PreferenceManager.getDefaultSharedPreferences(activity);
this.dbCallback = dbCallback;
*
*
*/
- private void setupPermissions(WearableActivity activity)
+ private void setupPermissions(AppCompatActivity activity)
{
if ((ContextCompat.checkSelfPermission(activity, Manifest.permission.VIBRATE) != PackageManager.PERMISSION_GRANTED) ||
(ContextCompat.checkSelfPermission(activity, Manifest.permission.WAKE_LOCK) != PackageManager.PERMISSION_GRANTED)) {
*
*
*/
- private void setupHardwares(WearableActivity activity)
+ private void setupHardwares(AppCompatActivity activity)
{
// バイブレータをつかまえる
vibrator = (Vibrator) activity.getSystemService(VIBRATOR_SERVICE);
- //// パワーマネージャをつかまえる
+ // パワーマネージャをつかまえる
//powerManager = (PowerManager) activity.getSystemService(POWER_SERVICE);
}
*
*
*/
- private void setupScreen(WearableActivity activity)
+ private void setupScreen(AppCompatActivity activity)
{
TextView mTextView = activity.findViewById(R.id.text);
if (mTextView != null)
* データベースのセットアップ
*/
@Override
- public void setupDatabase(final WearableActivity activity, final boolean isInitialize)
+ public void setupDatabase(final AppCompatActivity activity, final boolean isInitialize)
{
database = new TimeEntryDatabaseFactory(activity, this).getEntryDatabase();
- Thread thread = new Thread(new Runnable() {
- @Override
- public void run() {
- try
- {
- if (isInitialize)
- {
- // 既存のデータベースを消去する場合、、、
- TimeEntryDatabaseFactory.deleteDatabase(activity);
- }
- database.prepare();
- }
- catch (Exception e)
+ Thread thread = new Thread(() -> {
+ try
+ {
+ if (isInitialize)
{
- e.printStackTrace();
+ // 既存のデータベースを消去する場合、、、
+ TimeEntryDatabaseFactory.deleteDatabase(activity);
}
+ database.prepare();
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
}
});
thread.start();
/**
* リスナのセットアップ
*/
- private void setupListeners(WearableActivity activity, IClickCallback callback)
+ private void setupListeners(AppCompatActivity activity, IClickCallback callback)
{
try
{
ListView lap = activity.findViewById(R.id.laptime_list_area);
//lap.setOnClickListener(clickListener);
lap.setOnLongClickListener(clickListener);
+ //lap.setOnTouchListener(clickListener);
LapTimeGraphView graphView = activity.findViewById(R.id.graph_area);
graphView.setOnTouchListener(clickListener);
graphView.setOnClickListener(clickListener);
graphView.setOnLongClickListener(clickListener);
+
}
catch (Exception e)
{
private void closeDatabase()
{
Log.v(TAG, "closeDatabase()");
- Thread thread = new Thread(new Runnable() {
- @Override
- public void run() {
- // DBのクローズ実行
- if (isReadyDatabase)
+ Thread thread = new Thread(() -> {
+ // DBのクローズ実行
+ if (isReadyDatabase)
+ {
+ isReadyDatabase = false;
+ try
+ {
+ Log.v(TAG, "closeDatabase() EXECUTE...");
+ database.close();
+ }
+ catch (Exception e)
{
- isReadyDatabase = false;
- try
- {
- Log.v(TAG, "closeDatabase() EXECUTE...");
- database.close();
- }
- catch (Exception e)
- {
- e.printStackTrace();
- }
+ e.printStackTrace();
}
}
});
*
*/
@Override
- public void exitApplication(WearableActivity activity)
+ public void exitApplication(AppCompatActivity activity)
{
Log.v(TAG, "exitApplication()");
closeDatabase();
return;
}
- Thread thread = new Thread(new Runnable() {
- @Override
- public void run() {
- vibrator.vibrate(duration);
- }
- });
+ Thread thread = new Thread(() -> vibrator.vibrate(duration));
thread.start();
}
catch (Exception e)
}
}
-
@Override
public void addTimeStamp(long count, long lapTime, long diffTime)
{
}
@Override
+ public int getReferenceTimerSelection()
+ {
+ try
+ {
+ return (preferences.getInt(PREF_KEY_REFERENCE_TIME_SELECTION, 0));
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ }
+ return (0);
+ }
+
+ @Override
+ public void setReferenceTimerSelection(int id)
+ {
+ try
+ {
+ SharedPreferences.Editor editor = preferences.edit();
+ editor.putInt(PREF_KEY_REFERENCE_TIME_SELECTION, id);
+ editor.apply();
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ }
+ }
+
+ @Override
public void setupReferenceData()
{
try
}
}
+ @SuppressLint("Range")
@Override
public void prepareFinished(boolean isReady)
{
}
}
+ @SuppressLint("Range")
private void loadReferenceData()
{
// load reference data
try
{
+ int id = getReferenceTimerSelection();
ArrayList<Long> refList = null;
- Cursor cursor = database.getAllReferenceDetailData();
+ Cursor cursor = database.getAllReferenceDetailData(id);
if (cursor != null)
{
refList = new ArrayList<>();
refList.add(cursor.getLong(cursor.getColumnIndex(TimeEntryData.EntryData.COLUMN_NAME_TIME_ENTRY)));
}
}
- dbCallback.referenceDataIsReloaded(refList);
+ dbCallback.referenceDataIsReloaded(id, refList);
}
catch (Exception e)
{
}
}
-
@Override
public void createIndex(final String title, final long startTime)
{
final String memo = "";
final int icon = 0;
Log.v(TAG, "createIndex() " + title + " " + startTime);
- Thread thread = new Thread(new Runnable() {
- @Override
- public void run()
+ Thread thread = new Thread(() -> {
+ if (isReadyDatabase)
{
- if (isReadyDatabase)
+ try
{
- try
- {
- database.createIndexData(title, memo, icon, startTime);
- }
- catch (Exception e)
- {
- e.printStackTrace();
- }
+ database.createIndexData(title, memo, icon, startTime);
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
}
}
});
public void appendTimeData(final long elapsedTime)
{
Log.v(TAG, "appendTimeData() " + " " + elapsedTime);
- Thread thread = new Thread(new Runnable() {
- @Override
- public void run()
+ Thread thread = new Thread(() -> {
+ if (isReadyDatabase)
{
- if (isReadyDatabase)
+ try
{
- try
- {
- database.appendTimeData(recordingIndexId, elapsedTime);
- }
- catch (Exception e)
- {
- e.printStackTrace();
- }
+ database.appendTimeData(recordingIndexId, elapsedTime);
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
}
}
});
public void finishTimeData(final long startTime, final long endTime)
{
Log.v(TAG, "finishTimeData() " + startTime + " " + endTime);
- Thread thread = new Thread(new Runnable() {
- @Override
- public void run()
+ Thread thread = new Thread(() -> {
+ if (isReadyDatabase)
{
- if (isReadyDatabase)
+ try
{
- try
- {
- database.finishTimeData(recordingIndexId, startTime, endTime);
- }
- catch (Exception e)
- {
- e.printStackTrace();
- }
+ database.finishTimeData(recordingIndexId, startTime, endTime);
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
}
}
});