OSDN Git Service

DataEditDialogのDialogFragment化(Ambient時に操作できない不具合を改修)
[gokigen/JoggingTimer.git] / wear / src / main / java / net / osdn / gokigen / joggingtimer / recorddetail / DetailActivity.java
index dd86d42..e732a59 100644 (file)
@@ -1,5 +1,6 @@
 package net.osdn.gokigen.joggingtimer.recorddetail;
 
+import android.app.FragmentManager;
 import android.os.Bundle;
 import android.support.v7.widget.DividerItemDecoration;
 import android.support.wear.widget.WearableLinearLayoutManager;
@@ -12,9 +13,7 @@ import android.view.MenuItem;
 import android.widget.Toast;
 
 import net.osdn.gokigen.joggingtimer.R;
-import net.osdn.gokigen.joggingtimer.storage.ITimeEntryDatabase;
 import net.osdn.gokigen.joggingtimer.utilities.CreateModelData;
-import net.osdn.gokigen.joggingtimer.utilities.CreateModelDataDialog;
 import net.osdn.gokigen.joggingtimer.utilities.DataEditDialog;
 
 
@@ -268,22 +267,36 @@ public class DetailActivity extends WearableActivity implements RecordDetailSetu
         {
             case R.id.menu_edit_title:
                 // タイトルの編集
-                DataEditDialog dialog = new DataEditDialog(this);
-                dialog.show(R.drawable.ic_android_black_24dp, "", this);
+                String title = "";
+                int iconId = R.drawable.ic_android_black_24dp;
+                RecordDetailSetup.EditIndexData data = setupper.getEditIndexData();
+                if (data != null)
+                {
+                    iconId = data.getIcon();
+                    title = data.getTitle();
+                }
+                DataEditDialog dialog = DataEditDialog.newInstance(iconId, title, this);
+                FragmentManager manager = getFragmentManager();
+                String tag = "dialog";
+                if (manager != null)
+                {
+                    dialog.show(manager, tag);
+                }
                 ret = true;
                 break;
 
-            case R.id.menu_create_model:
-                CreateModelDataDialog dialog2 = new CreateModelDataDialog(this);
-                dialog2.show(true, getString(R.string.information_time_picker), 0, setupper.getCreateModelDataCallback(ITimeEntryDatabase.DONT_USE_ID, ITimeEntryDatabase.DONT_USE_ID), 0);
-                break;
-
             case R.id.menu_set_reference:
                 // 現在のデータを基準値として設定する
                 setupper.setReferenceData();
                 ret = true;
                 break;
 
+            case R.id.menu_share_data:
+                // 現在のデータを共有する
+                setupper.shareTheData(detailAdapter);
+                ret = true;
+                break;
+
             default:
                 // 何もしない
                 break;
@@ -313,7 +326,7 @@ public class DetailActivity extends WearableActivity implements RecordDetailSetu
     {
         Log.v(TAG, "iconId : " + iconId + " title : '"+ title +"'");
         try {
-            setupper.setIndexData(title, iconId);
+            setupper.setEditIndexData(title, iconId);
             WearableRecyclerView view = findViewById(R.id.recycler_detail_view);
             view.postInvalidate();
         }
@@ -377,7 +390,6 @@ public class DetailActivity extends WearableActivity implements RecordDetailSetu
                 {
                     totalTime = record.addModifiedTime(modTime, totalTime);
                 }
-
                 detailAdapter.notifyItemChanged(index - 1);
             }
             try