Fujifilm X Series Remote Control for Android (Prototype)
Fujifilm Xシリーズカメラの遠隔操作アプリ for Android (プロトタイプ)
Revisão | 56e0988a0b61ed045bbec8f41733c1fcb3612da4 (tree) |
---|---|
Hora | 2019-05-24 00:46:24 |
Autor | MRSa <mrsa@myad...> |
Commiter | MRSa |
フォーカスのエリアサイズを変更できるようにした。
@@ -23,6 +23,7 @@ import net.osdn.gokigen.cameratest.fuji.statuses.IFujiStatus; | ||
23 | 23 | import net.osdn.gokigen.cameratest.fuji.statuses.IFujiStatusNotify; |
24 | 24 | |
25 | 25 | import androidx.annotation.NonNull; |
26 | +import androidx.preference.EditTextPreference; | |
26 | 27 | import androidx.preference.PreferenceManager; |
27 | 28 | |
28 | 29 | public class CamTest implements View.OnClickListener, View.OnTouchListener, ILiveViewImage, IFujiStatusNotify |
@@ -59,6 +60,25 @@ public class CamTest implements View.OnClickListener, View.OnTouchListener, ILiv | ||
59 | 60 | SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(activity); |
60 | 61 | final boolean isBothLiveView = preferences.getBoolean(IPreferencePropertyAccessor.FUJIX_DISPLAY_CAMERA_VIEW, false); |
61 | 62 | |
63 | + // フォーカス解像度を変えたい | |
64 | + String focusPoint = preferences.getString(IPreferencePropertyAccessor.FUJIX_FOCUS_XY, IPreferencePropertyAccessor.FUJIX_FOCUS_XY_DEFAULT_VALUE); | |
65 | + try | |
66 | + { | |
67 | + String[] focus = focusPoint.split(","); | |
68 | + if (focus.length == 2) | |
69 | + { | |
70 | + maxPointLimitWidth = Integer.parseInt(focus[0]); | |
71 | + maxPointLimitHeight = Integer.parseInt(focus[1]); | |
72 | + } | |
73 | + Log.v(TAG, "FOCUS RESOLUTION : " + maxPointLimitWidth + "," + maxPointLimitHeight); | |
74 | + } | |
75 | + catch (Exception e) | |
76 | + { | |
77 | + e.printStackTrace(); | |
78 | + maxPointLimitWidth = 7.0f; | |
79 | + maxPointLimitHeight = 7.0f; | |
80 | + } | |
81 | + | |
62 | 82 | showMessageText("START CONNECT"); |
63 | 83 | Thread thread = new Thread(new Runnable() { |
64 | 84 | @Override |
@@ -8,6 +8,7 @@ import android.util.Log; | ||
8 | 8 | import androidx.annotation.NonNull; |
9 | 9 | import androidx.fragment.app.FragmentActivity; |
10 | 10 | import androidx.preference.CheckBoxPreference; |
11 | +import androidx.preference.EditTextPreference; | |
11 | 12 | import androidx.preference.ListPreference; |
12 | 13 | import androidx.preference.Preference; |
13 | 14 | import androidx.preference.PreferenceFragmentCompat; |
@@ -16,6 +17,7 @@ import androidx.preference.PreferenceManager; | ||
16 | 17 | import net.osdn.gokigen.cameratest.IApplicationControl; |
17 | 18 | import net.osdn.gokigen.cameratest.R; |
18 | 19 | |
20 | +import java.net.Inet4Address; | |
19 | 21 | import java.util.Map; |
20 | 22 | |
21 | 23 | public class FujiPreferenceFragment extends PreferenceFragmentCompat implements SharedPreferences.OnSharedPreferenceChangeListener |
@@ -75,20 +77,45 @@ public class FujiPreferenceFragment extends PreferenceFragmentCompat implements | ||
75 | 77 | @Override |
76 | 78 | public void onCreatePreferences(Bundle savedInstanceState, String rootKey) |
77 | 79 | { |
78 | - setPreferencesFromResource(R.xml.preferences_fuji_x, rootKey); | |
79 | - | |
80 | - ListPreference connectionMethod = (ListPreference) findPreference(IPreferencePropertyAccessor.CONNECTION_METHOD); | |
81 | - connectionMethod.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { | |
82 | - @Override | |
83 | - public boolean onPreferenceChange(Preference preference, Object newValue) { | |
84 | - preference.setSummary(newValue + " "); | |
85 | - return (true); | |
86 | - } | |
87 | - }); | |
88 | - connectionMethod.setSummary(connectionMethod.getValue() + " "); | |
80 | + try | |
81 | + { | |
82 | + setPreferencesFromResource(R.xml.preferences_fuji_x, rootKey); | |
89 | 83 | |
90 | - findPreference("exit_application").setOnPreferenceClickListener(powerOffController); | |
84 | + ListPreference connectionMethod = (ListPreference) findPreference(IPreferencePropertyAccessor.CONNECTION_METHOD); | |
85 | + connectionMethod.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { | |
86 | + @Override | |
87 | + public boolean onPreferenceChange(Preference preference, Object newValue) { | |
88 | + preference.setSummary(newValue + " "); | |
89 | + return (true); | |
90 | + } | |
91 | + }); | |
92 | + connectionMethod.setSummary(connectionMethod.getValue() + " "); | |
91 | 93 | |
94 | + findPreference("exit_application").setOnPreferenceClickListener(powerOffController); | |
95 | + } | |
96 | + catch (Exception e) | |
97 | + { | |
98 | + e.printStackTrace(); | |
99 | + } | |
100 | + try | |
101 | + { | |
102 | + EditTextPreference focusResolition = (EditTextPreference) findPreference(IPreferencePropertyAccessor.FUJIX_FOCUS_XY); | |
103 | + String[] focus = focusResolition.getText().split(","); | |
104 | + if (focus.length != 2) | |
105 | + { | |
106 | + focusResolition.setText(IPreferencePropertyAccessor.FUJIX_FOCUS_XY_DEFAULT_VALUE); | |
107 | + } | |
108 | + else | |
109 | + { | |
110 | + int x = Integer.parseInt(focus[0]); | |
111 | + int y = Integer.parseInt(focus[1]); | |
112 | + focusResolition.setText(x + "," + y); | |
113 | + } | |
114 | + } | |
115 | + catch (Exception e) | |
116 | + { | |
117 | + e.printStackTrace(); | |
118 | + } | |
92 | 119 | } |
93 | 120 | |
94 | 121 | /** |
@@ -111,6 +138,9 @@ public class FujiPreferenceFragment extends PreferenceFragmentCompat implements | ||
111 | 138 | if (!items.containsKey(IPreferencePropertyAccessor.FUJIX_DISPLAY_CAMERA_VIEW)) { |
112 | 139 | editor.putBoolean(IPreferencePropertyAccessor.FUJIX_DISPLAY_CAMERA_VIEW, false); |
113 | 140 | } |
141 | + if (!items.containsKey(IPreferencePropertyAccessor.FUJIX_FOCUS_XY)) { | |
142 | + editor.putString(IPreferencePropertyAccessor.FUJIX_FOCUS_XY, IPreferencePropertyAccessor.FUJIX_FOCUS_XY_DEFAULT_VALUE); | |
143 | + } | |
114 | 144 | editor.apply(); |
115 | 145 | } |
116 | 146 | catch (Exception e) |
@@ -10,6 +10,7 @@ public interface IPreferencePropertyAccessor | ||
10 | 10 | String CAPTURE_BOTH_CAMERA_AND_LIVE_VIEW = "capture_both_camera_and_live_view"; |
11 | 11 | |
12 | 12 | String FUJIX_DISPLAY_CAMERA_VIEW = "fujix_display_camera_view"; |
13 | - | |
13 | + String FUJIX_FOCUS_XY = "fujix_focus_xy"; | |
14 | + String FUJIX_FOCUS_XY_DEFAULT_VALUE = "7,7"; | |
14 | 15 | |
15 | 16 | } |
@@ -37,6 +37,9 @@ | ||
37 | 37 | <string name="pref_fujix_display_camera_view">Use Camera Display</string> |
38 | 38 | <string name="pref_fujix_display_camera_view_summary">Shows liveview screen both camera and smartphone.</string> |
39 | 39 | |
40 | + <string name="pref_fujix_focus_xy">Focus Area X,Y (default: 7,7)</string> | |
41 | + <string name="pref_summary_fujix_focus_xy">Set Focus Area resolution X,Y (default: 7,7)</string> | |
42 | + | |
40 | 43 | <string name="pref_special_thanks">Special Thanks to : fuji-cam-wifi-tool</string> |
41 | 44 | |
42 | 45 |
@@ -24,6 +24,12 @@ | ||
24 | 24 | android:title="@string/pref_fujix_display_camera_view" |
25 | 25 | android:summary="@string/pref_fujix_display_camera_view_summary"/> |
26 | 26 | |
27 | + <EditTextPreference | |
28 | + android:key="fujix_focus_xy" | |
29 | + android:title="@string/pref_fujix_focus_xy" | |
30 | + android:defaultValue="7,7" | |
31 | + android:summary="@string/pref_summary_fujix_focus_xy" /> | |
32 | + | |
27 | 33 | <CheckBoxPreference |
28 | 34 | android:key="capture_both_camera_and_live_view" |
29 | 35 | android:title="@string/pref_capture_both_camera_and_live_view" /> |