11package com .firstbuild .androidapp .paragon ;
22
33
4+ import android .app .Activity ;
45import android .app .Fragment ;
56import android .os .Bundle ;
67import android .text .Html ;
1011import android .widget .SeekBar ;
1112import android .widget .TextView ;
1213
13- import com .firstbuild . androidapp . ParagonValues ;
14+ import com .afollestad . materialdialogs . MaterialDialog ;
1415import com .firstbuild .androidapp .R ;
1516import com .firstbuild .androidapp .paragon .dataModel .RecipeManager ;
16- import com .firstbuild .commonframework .bleManager .BleManager ;
17-
18- import java .nio .ByteBuffer ;
1917
2018/**
2119 * A simple {@link Fragment} subclass.
@@ -36,17 +34,23 @@ public class SettingsFragment extends Fragment {
3634 private float setThickness ;
3735 private int setDoneness ;
3836 private float setTargetTemp = 0.0f ;
39- private int setTargetTimeMin = 0 ;
40- private int setTargetTimeMax = 0 ;
37+ private float setTargetTimeHour = 0 ;
38+ private float setTargetTimeMax = 0 ;
4139
4240 private TextView textSetTimeMin ;
4341 private TextView textSetTimeMax ;
4442 private TextView textSetTemp ;
43+ private ParagonMainActivity attached = null ;
4544
4645 public SettingsFragment () {
4746 // Required empty public constructor
4847 }
4948
49+ @ Override
50+ public void onAttach (Activity activity ) {
51+ super .onAttach (activity );
52+ attached = (ParagonMainActivity )activity ;
53+ }
5054
5155 @ Override
5256 public View onCreateView (LayoutInflater inflater , ViewGroup container ,
@@ -91,7 +95,7 @@ public void onStopTrackingTouch(SeekBar seekBar) {
9195 public void onProgressChanged (SeekBar seekBar , int progress , boolean fromUser ) {
9296 String selectedValue = getResources ().getStringArray (R .array .string_doneness )[progress ];
9397
94- setThickness = progress ;
98+ setDoneness = progress ;
9599 textDoneness .setText (selectedValue );
96100
97101 calculateTimeTemp ();
@@ -112,8 +116,8 @@ public void onStopTrackingTouch(SeekBar seekBar) {
112116 view .findViewById (R .id .btn_continue ).setOnClickListener (new View .OnClickListener () {
113117 @ Override
114118 public void onClick (View v ) {
115- RecipeManager .getInstance ().getCurrentStage ().setTime (setTargetTimeMin );
116- RecipeManager .getInstance ().getCurrentStage ().setMaxTime (setTargetTimeMax );
119+ RecipeManager .getInstance ().getCurrentStage ().setTime (( int )( setTargetTimeHour * 60 ) );
120+ RecipeManager .getInstance ().getCurrentStage ().setMaxTime (( int )( setTargetTimeMax * 60 ) );
117121 RecipeManager .getInstance ().getCurrentStage ().setTemp ((int ) setTargetTemp );
118122 RecipeManager .getInstance ().sendCurrentStages ();
119123
@@ -145,230 +149,110 @@ private void initRecipeSetting() {
145149
146150 }
147151
152+ /**
153+ * This table for Round
154+ Top Round
155+ Bottom Round
156+ Blade (Flat Iron)
157+ Cubed Flank Skirt Tip
158+ */
148159 private void calculateTimeTemp () {
149- ParagonMainActivity activity = (ParagonMainActivity ) getActivity ();
150-
151160
152161 switch (setDoneness ) {
153162 case DONENESS_R :
154- setTargetTemp = 134.5f ;
155-
156- if (setThickness <= 0.2 ) {
157- setTargetTimeMin = 60 ;
158- }
159- else if (0.2 < setThickness && setThickness <= 0.4 ) {
160- setTargetTimeMin = 60 + 15 ;
161- }
162- else if (0.4 < setThickness && setThickness <= 0.6 ) {
163- setTargetTimeMin = 60 + 30 ;
164-
165- }
166- else if (0.6 < setThickness && setThickness <= 0.8 ) {
167- setTargetTimeMin = 60 + 45 ;
168-
169- }
170- else if (0.8 < setThickness && setThickness <= 1.2 ) {
171- setTargetTimeMin = 60 * 2 ;
172- }
173- else if (1.2 < setThickness && setThickness <= 1.4 ) {
174- setTargetTimeMin = 60 * 2 + 15 ;
175- }
176- else if (1.2 < setThickness && setThickness <= 1.6 ) {
177- setTargetTimeMin = 60 * 2 + 30 ;
178- }
179- else if (1.2 < setThickness && setThickness <= 2.0 ) {
180- setTargetTimeMin = 60 * 3 + 7 ;
181- }
182- else if (1.2 < setThickness && setThickness <= 2.15 ) {
183- setTargetTimeMin = 60 * 3 + 45 ;
184- }
185- else if (1.2 < setThickness && setThickness <= 2.35 ) {
186- setTargetTimeMin = 60 * 4 + 15 ;
187- }
188- else if (1.2 < setThickness && setThickness <= 2.5 ) {
189- setTargetTimeMin = 60 * 4 + 45 ;
190- }
191- else if (1.2 < setThickness && setThickness <= 2.75 ) {
192- setTargetTimeMin = 60 * 5 + 15 ;
193- }
194-
163+ setTargetTemp = 0 ;
164+ setTargetTimeHour = 0 ;
165+ setTargetTimeMax = 0 ;
195166 break ;
196167
197168 case DONENESS_MR :
198- setTargetTemp = 143.5f ;
199-
200- if (setThickness <= 0.2 ) {
201- setTargetTimeMin = 25 ;
202- }
203- else if (0.2 < setThickness && setThickness <= 0.4 ) {
204- setTargetTimeMin = 30 ;
205- }
206- else if (0.4 < setThickness && setThickness <= 0.6 ) {
207- setTargetTimeMin = 45 ;
208- }
209- else if (0.6 < setThickness && setThickness <= 0.8 ) {
210- setTargetTimeMin = 55 ;
211- }
212- else if (0.8 < setThickness && setThickness <= 1.2 ) {
213- setTargetTimeMin = 60 * 30 ;
214- }
215- else if (1.2 < setThickness && setThickness <= 1.4 ) {
216- setTargetTimeMin = 60 * 30 ;
217- }
218- else if (1.2 < setThickness && setThickness <= 1.6 ) {
219- setTargetTimeMin = 60 * 45 ;
220- }
221- else if (1.2 < setThickness && setThickness <= 2.0 ) {
222- setTargetTimeMin = 60 * 2 + 31 ;
223- }
224- else if (1.2 < setThickness && setThickness <= 2.15 ) {
225- setTargetTimeMin = 60 * 2 + 45 ;
226- }
227- else if (1.2 < setThickness && setThickness <= 2.35 ) {
228- setTargetTimeMin = 60 * 3 ;
229- }
230- else if (1.2 < setThickness && setThickness <= 2.5 ) {
231- setTargetTimeMin = 60 * 3 + 15 ;
232- }
233- else if (1.2 < setThickness && setThickness <= 2.75 ) {
234- setTargetTimeMin = 60 * 3 + 45 ;
235- }
236-
169+ setTargetTemp = 0 ;
170+ setTargetTimeHour = 0 ;
171+ setTargetTimeMax = 0 ;
237172 break ;
238173
239174 case DONENESS_M :
240- setTargetTemp = 143.5f ;
175+ setTargetTemp = 140 ;
241176
242- if (setThickness <= 0.2 ) {
243- setTargetTimeMin = 25 ;
244- }
245- else if (0.2 < setThickness && setThickness <= 0.4 ) {
246- setTargetTimeMin = 30 ;
247- }
248- else if (0.4 < setThickness && setThickness <= 0.6 ) {
249- setTargetTimeMin = 45 ;
250- }
251- else if (0.6 < setThickness && setThickness <= 0.8 ) {
252- setTargetTimeMin = 55 ;
253- }
254- else if (0.8 < setThickness && setThickness <= 1.2 ) {
255- setTargetTimeMin = 60 * 30 ;
256- }
257- else if (1.2 < setThickness && setThickness <= 1.4 ) {
258- setTargetTimeMin = 60 * 30 ;
259- }
260- else if (1.2 < setThickness && setThickness <= 1.6 ) {
261- setTargetTimeMin = 60 * 45 ;
262- }
263- else if (1.2 < setThickness && setThickness <= 2.0 ) {
264- setTargetTimeMin = 60 * 2 + 31 ;
265- }
266- else if (1.2 < setThickness && setThickness <= 2.15 ) {
267- setTargetTimeMin = 60 * 2 + 45 ;
177+ if (setThickness <= 0.75 ) {
178+ setTargetTimeHour = 6 ;
179+ setTargetTimeMax = 12 ;
268180 }
269- else if (1.2 < setThickness && setThickness <= 2.35 ) {
270- setTargetTimeMin = 60 * 3 ;
181+ else if (0.75 < setThickness && setThickness <= 1.25 ) {
182+ setTargetTimeHour = 8 ;
183+ setTargetTimeMax = 24 ;
271184 }
272- else if (1.2 < setThickness && setThickness <= 2.5 ) {
273- setTargetTimeMin = 60 * 3 + 15 ;
274- }
275- else if (1.2 < setThickness && setThickness <= 2.75 ) {
276- setTargetTimeMin = 60 * 3 + 45 ;
185+ else { //if (1.25 < setThickness && setThickness <= 2)
186+ setTargetTimeHour = 12 ;
187+ setTargetTimeMax = 30 ;
277188 }
278189 break ;
279190
280191 case DONENESS_MW :
281- setTargetTemp = 143.5f ;
192+ setTargetTemp = 150 ;
282193
283- if (setThickness <= 0.2 ) {
284- setTargetTimeMin = 25 ;
285- }
286- else if (0.2 < setThickness && setThickness <= 0.4 ) {
287- setTargetTimeMin = 30 ;
288- }
289- else if (0.4 < setThickness && setThickness <= 0.6 ) {
290- setTargetTimeMin = 45 ;
291- }
292- else if (0.6 < setThickness && setThickness <= 0.8 ) {
293- setTargetTimeMin = 55 ;
294- }
295- else if (0.8 < setThickness && setThickness <= 1.2 ) {
296- setTargetTimeMin = 60 * 30 ;
297- }
298- else if (1.2 < setThickness && setThickness <= 1.4 ) {
299- setTargetTimeMin = 60 * 30 ;
300- }
301- else if (1.2 < setThickness && setThickness <= 1.6 ) {
302- setTargetTimeMin = 60 * 45 ;
303- }
304- else if (1.2 < setThickness && setThickness <= 2.0 ) {
305- setTargetTimeMin = 60 * 2 + 31 ;
194+ if (setThickness <= 0.75 ) {
195+ setTargetTimeHour = 6 ;
196+ setTargetTimeMax = 12 ;
306197 }
307- else if (1.2 < setThickness && setThickness <= 2.15 ) {
308- setTargetTimeMin = 60 * 2 + 45 ;
198+ else if (0.75 < setThickness && setThickness <= 1.25 ) {
199+ setTargetTimeHour = 8 ;
200+ setTargetTimeMax = 24 ;
309201 }
310- else if (1.2 < setThickness && setThickness <= 2.35 ) {
311- setTargetTimeMin = 60 * 3 ;
312- }
313- else if (1.2 < setThickness && setThickness <= 2.5 ) {
314- setTargetTimeMin = 60 * 3 + 15 ;
315- }
316- else if (1.2 < setThickness && setThickness <= 2.75 ) {
317- setTargetTimeMin = 60 * 3 + 45 ;
202+ else { //if (1.25 < setThickness && setThickness <= 2)
203+ setTargetTimeHour = 12 ;
204+ setTargetTimeMax = 30 ;
318205 }
319206 break ;
320207
321208 case DONENESS_W :
322- setTargetTemp = 143.5f ;
209+ setTargetTemp = 160 ;
323210
324- if (setThickness <= 0.2 ) {
325- setTargetTimeMin = 25 ;
326- }
327- else if (0.2 < setThickness && setThickness <= 0.4 ) {
328- setTargetTimeMin = 30 ;
329- }
330- else if (0.4 < setThickness && setThickness <= 0.6 ) {
331- setTargetTimeMin = 45 ;
332- }
333- else if (0.6 < setThickness && setThickness <= 0.8 ) {
334- setTargetTimeMin = 55 ;
335- }
336- else if (0.8 < setThickness && setThickness <= 1.2 ) {
337- setTargetTimeMin = 60 * 30 ;
338- }
339- else if (1.2 < setThickness && setThickness <= 1.4 ) {
340- setTargetTimeMin = 60 * 30 ;
341- }
342- else if (1.2 < setThickness && setThickness <= 1.6 ) {
343- setTargetTimeMin = 60 * 45 ;
344- }
345- else if (1.2 < setThickness && setThickness <= 2.0 ) {
346- setTargetTimeMin = 60 * 2 + 31 ;
211+ if (setThickness <= 0.75 ) {
212+ setTargetTimeHour = 4 ;
213+ setTargetTimeMax = 6 ;
347214 }
348- else if (1.2 < setThickness && setThickness <= 2.15 ) {
349- setTargetTimeMin = 60 * 2 + 45 ;
215+ else if (0.75 < setThickness && setThickness <= 1.25 ) {
216+ setTargetTimeHour = 6 ;
217+ setTargetTimeMax = 10 ;
350218 }
351- else if (1.2 < setThickness && setThickness <= 2.35 ) {
352- setTargetTimeMin = 60 * 3 ;
353- }
354- else if (1.2 < setThickness && setThickness <= 2.5 ) {
355- setTargetTimeMin = 60 * 3 + 15 ;
356- }
357- else if (1.2 < setThickness && setThickness <= 2.75 ) {
358- setTargetTimeMin = 60 * 3 + 45 ;
219+ else { //if (1.25 < setThickness && setThickness <= 2)
220+ setTargetTimeHour = 8 ;
221+ setTargetTimeMax = 12 ;
359222 }
360223 break ;
361224
362225 }
363226
364- textSetTemp .setText (Html .fromHtml (setTargetTemp + "<small>℉</small>" ));
365227
366- String hour = (setTargetTimeMin / 60 ) + "" ;
367- String minutes = String .format ("%02d" , setTargetTimeMin % 60 );
228+ if (setTargetTemp == 0 && setTargetTimeMax == 0 && setTargetTimeHour == 0 ){
229+
230+ textSetTemp .setText ("--" );
231+ textSetTimeMin .setText (Html .fromHtml ("--" + "<small>H : </small>" + "--" + "<small>M</small>" ));
232+ textSetTimeMax .setText (Html .fromHtml ("--" + "<small>H : </small>" + "--" + "<small>M</small>" ));
233+
234+ new MaterialDialog .Builder (attached )
235+ .content ("Not recommended setting" )
236+ .positiveText ("Ok" )
237+ .cancelable (true ).show ();
238+ }
239+ else {
240+ textSetTemp .setText (Html .fromHtml (setTargetTemp + "<small>℉</small>" ));
241+
242+ int timeH = (int ) Math .floor (setTargetTimeHour );
243+ int timeM = (int )((setTargetTimeHour - timeH )*60 );
244+
245+ String hour = timeH + "" ;
246+ String minutes = String .format ("%02d" , timeM );
247+ textSetTimeMin .setText (Html .fromHtml (hour + "<small>H : </small>" + minutes + "<small>M</small>" ));
368248
369- textSetTimeMin .setText (Html .fromHtml (hour + "<small>H : </small>" + minutes + "<small>M</small>" ));
249+ timeH = (int ) Math .floor (setTargetTimeMax );
250+ timeM = (int )((setTargetTimeMax - timeH )*60 );
370251
371- textSetTimeMax .setText (Html .fromHtml ("00<small>M</small>" ));
252+ hour = timeH + "" ;
253+ minutes = String .format ("%02d" , timeM );
254+ textSetTimeMax .setText (Html .fromHtml (hour + "<small>H : </small>" + minutes + "<small>M</small>" ));
255+ }
372256 }
373257
374258
0 commit comments