From: MRSa Date: Thu, 23 May 2019 15:46:24 +0000 (+0900) Subject: フォーカスのエリアサイズを変更できるようにした。 X-Git-Url: http://git.osdn.net/view?p=gokigen%2FFujiCam.git;a=commitdiff_plain;h=56e0988a0b61ed045bbec8f41733c1fcb3612da4 フォーカスのエリアサイズを変更できるようにした。 --- diff --git a/app/src/main/java/net/osdn/gokigen/cameratest/camtest/CamTest.java b/app/src/main/java/net/osdn/gokigen/cameratest/camtest/CamTest.java index ebd44f8..6c87ce6 100644 --- a/app/src/main/java/net/osdn/gokigen/cameratest/camtest/CamTest.java +++ b/app/src/main/java/net/osdn/gokigen/cameratest/camtest/CamTest.java @@ -23,6 +23,7 @@ import net.osdn.gokigen.cameratest.fuji.statuses.IFujiStatus; import net.osdn.gokigen.cameratest.fuji.statuses.IFujiStatusNotify; import androidx.annotation.NonNull; +import androidx.preference.EditTextPreference; import androidx.preference.PreferenceManager; public class CamTest implements View.OnClickListener, View.OnTouchListener, ILiveViewImage, IFujiStatusNotify @@ -59,6 +60,25 @@ public class CamTest implements View.OnClickListener, View.OnTouchListener, ILiv SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(activity); final boolean isBothLiveView = preferences.getBoolean(IPreferencePropertyAccessor.FUJIX_DISPLAY_CAMERA_VIEW, false); + // フォーカス解像度を変えたい + String focusPoint = preferences.getString(IPreferencePropertyAccessor.FUJIX_FOCUS_XY, IPreferencePropertyAccessor.FUJIX_FOCUS_XY_DEFAULT_VALUE); + try + { + String[] focus = focusPoint.split(","); + if (focus.length == 2) + { + maxPointLimitWidth = Integer.parseInt(focus[0]); + maxPointLimitHeight = Integer.parseInt(focus[1]); + } + Log.v(TAG, "FOCUS RESOLUTION : " + maxPointLimitWidth + "," + maxPointLimitHeight); + } + catch (Exception e) + { + e.printStackTrace(); + maxPointLimitWidth = 7.0f; + maxPointLimitHeight = 7.0f; + } + showMessageText("START CONNECT"); Thread thread = new Thread(new Runnable() { @Override diff --git a/app/src/main/java/net/osdn/gokigen/cameratest/fuji/preference/FujiPreferenceFragment.java b/app/src/main/java/net/osdn/gokigen/cameratest/fuji/preference/FujiPreferenceFragment.java index 37017eb..914a0cc 100644 --- a/app/src/main/java/net/osdn/gokigen/cameratest/fuji/preference/FujiPreferenceFragment.java +++ b/app/src/main/java/net/osdn/gokigen/cameratest/fuji/preference/FujiPreferenceFragment.java @@ -8,6 +8,7 @@ import android.util.Log; import androidx.annotation.NonNull; import androidx.fragment.app.FragmentActivity; import androidx.preference.CheckBoxPreference; +import androidx.preference.EditTextPreference; import androidx.preference.ListPreference; import androidx.preference.Preference; import androidx.preference.PreferenceFragmentCompat; @@ -16,6 +17,7 @@ import androidx.preference.PreferenceManager; import net.osdn.gokigen.cameratest.IApplicationControl; import net.osdn.gokigen.cameratest.R; +import java.net.Inet4Address; import java.util.Map; public class FujiPreferenceFragment extends PreferenceFragmentCompat implements SharedPreferences.OnSharedPreferenceChangeListener @@ -75,20 +77,45 @@ public class FujiPreferenceFragment extends PreferenceFragmentCompat implements @Override public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { - setPreferencesFromResource(R.xml.preferences_fuji_x, rootKey); - - ListPreference connectionMethod = (ListPreference) findPreference(IPreferencePropertyAccessor.CONNECTION_METHOD); - connectionMethod.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { - @Override - public boolean onPreferenceChange(Preference preference, Object newValue) { - preference.setSummary(newValue + " "); - return (true); - } - }); - connectionMethod.setSummary(connectionMethod.getValue() + " "); + try + { + setPreferencesFromResource(R.xml.preferences_fuji_x, rootKey); - findPreference("exit_application").setOnPreferenceClickListener(powerOffController); + ListPreference connectionMethod = (ListPreference) findPreference(IPreferencePropertyAccessor.CONNECTION_METHOD); + connectionMethod.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { + @Override + public boolean onPreferenceChange(Preference preference, Object newValue) { + preference.setSummary(newValue + " "); + return (true); + } + }); + connectionMethod.setSummary(connectionMethod.getValue() + " "); + findPreference("exit_application").setOnPreferenceClickListener(powerOffController); + } + catch (Exception e) + { + e.printStackTrace(); + } + try + { + EditTextPreference focusResolition = (EditTextPreference) findPreference(IPreferencePropertyAccessor.FUJIX_FOCUS_XY); + String[] focus = focusResolition.getText().split(","); + if (focus.length != 2) + { + focusResolition.setText(IPreferencePropertyAccessor.FUJIX_FOCUS_XY_DEFAULT_VALUE); + } + else + { + int x = Integer.parseInt(focus[0]); + int y = Integer.parseInt(focus[1]); + focusResolition.setText(x + "," + y); + } + } + catch (Exception e) + { + e.printStackTrace(); + } } /** @@ -111,6 +138,9 @@ public class FujiPreferenceFragment extends PreferenceFragmentCompat implements if (!items.containsKey(IPreferencePropertyAccessor.FUJIX_DISPLAY_CAMERA_VIEW)) { editor.putBoolean(IPreferencePropertyAccessor.FUJIX_DISPLAY_CAMERA_VIEW, false); } + if (!items.containsKey(IPreferencePropertyAccessor.FUJIX_FOCUS_XY)) { + editor.putString(IPreferencePropertyAccessor.FUJIX_FOCUS_XY, IPreferencePropertyAccessor.FUJIX_FOCUS_XY_DEFAULT_VALUE); + } editor.apply(); } catch (Exception e) diff --git a/app/src/main/java/net/osdn/gokigen/cameratest/fuji/preference/IPreferencePropertyAccessor.java b/app/src/main/java/net/osdn/gokigen/cameratest/fuji/preference/IPreferencePropertyAccessor.java index 6005876..88f9305 100644 --- a/app/src/main/java/net/osdn/gokigen/cameratest/fuji/preference/IPreferencePropertyAccessor.java +++ b/app/src/main/java/net/osdn/gokigen/cameratest/fuji/preference/IPreferencePropertyAccessor.java @@ -10,6 +10,7 @@ public interface IPreferencePropertyAccessor String CAPTURE_BOTH_CAMERA_AND_LIVE_VIEW = "capture_both_camera_and_live_view"; String FUJIX_DISPLAY_CAMERA_VIEW = "fujix_display_camera_view"; - + String FUJIX_FOCUS_XY = "fujix_focus_xy"; + String FUJIX_FOCUS_XY_DEFAULT_VALUE = "7,7"; } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 0e21ddb..bcd1228 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -37,6 +37,9 @@ Use Camera Display Shows liveview screen both camera and smartphone. + Focus Area X,Y (default: 7,7) + Set Focus Area resolution X,Y (default: 7,7) + Special Thanks to : fuji-cam-wifi-tool diff --git a/app/src/main/res/xml/preferences_fuji_x.xml b/app/src/main/res/xml/preferences_fuji_x.xml index 2a8aa46..5bd3269 100644 --- a/app/src/main/res/xml/preferences_fuji_x.xml +++ b/app/src/main/res/xml/preferences_fuji_x.xml @@ -24,6 +24,12 @@ android:title="@string/pref_fujix_display_camera_view" android:summary="@string/pref_fujix_display_camera_view_summary"/> + +