@@ -64,6 +64,8 @@ public class Dashboard_chart extends AppCompatActivity {
64
64
boolean flag = false ;
65
65
boolean once = true ; //for deleting the (0, 0) input.
66
66
67
+ boolean lightFlag ;
68
+
67
69
@ Override
68
70
protected void onCreate (Bundle savedInstanceState ) {
69
71
//load saved theme state
@@ -72,9 +74,11 @@ protected void onCreate(Bundle savedInstanceState) {
72
74
if (sharedPref .loadDarkModeState ()==true ){
73
75
setTheme (R .style .darkTheme );
74
76
spinnerTextColor = "#FFFFFF" ;
77
+ lightFlag = false ;
75
78
}else {
76
79
setTheme (R .style .AppTheme );
77
80
spinnerTextColor = "#000000" ;
81
+ lightFlag = true ;
78
82
}
79
83
super .onCreate (savedInstanceState );
80
84
setContentView (R .layout .activity_dashboard_chart );
@@ -109,7 +113,7 @@ protected void onCreate(Bundle savedInstanceState) {
109
113
@ Override
110
114
public void onItemSelected (AdapterView <?> adapterView , View view , int i , long l ) {
111
115
toDisplay = adapterView .getItemAtPosition (i ).toString ();
112
- reDesignChart (lineDataSet , toDisplay );
116
+ reDesignChart (lineDataSet , toDisplay , 0f );
113
117
((TextView ) view ).setTextColor (Color .parseColor (spinnerTextColor ));
114
118
}
115
119
@@ -164,6 +168,12 @@ public void onNothingSelected(AdapterView<?> adapterView) {
164
168
mChart .getXAxis ().setDrawGridLines (true );
165
169
mChart .setDrawBorders (true );
166
170
171
+ if (lightFlag ){
172
+ mChart .setBackgroundColor (Color .WHITE );
173
+ l .setTextColor (Color .BLACK );
174
+ xl .setTextColor (Color .BLACK );
175
+ leftAxis .setTextColor (Color .BLACK );
176
+ }
167
177
168
178
Thread t = new Thread (){
169
179
public void run (){
@@ -264,6 +274,7 @@ public void onReceive(Context context, Intent intent) {
264
274
// mChart.setVisibleYRange(30, AxisDependency.LEFT);
265
275
// move to the latest entry
266
276
mChart .moveViewToX (lineData .getEntryCount ());
277
+ reDesignChart (lineDataSet , toDisplay , value );
267
278
}
268
279
269
280
}else {
@@ -273,7 +284,7 @@ public void onReceive(Context context, Intent intent) {
273
284
once = true ;
274
285
lineDataSet = new LineDataSet (data , toDisplay );
275
286
data .add (new Entry (lineDataSet .getEntryCount (), value ));
276
- reDesignChart (lineDataSet , toDisplay );
287
+ reDesignChart (lineDataSet , toDisplay , value );
277
288
lineData .clearValues ();
278
289
lineData .addDataSet (lineDataSet );
279
290
mChart .setData (lineData );
@@ -292,82 +303,109 @@ public void onReceive(Context context, Intent intent) {
292
303
}
293
304
};
294
305
295
- protected void reDesignChart (LineDataSet toChange , String str ){
306
+ protected void reDesignChart (LineDataSet toChange , String str , float value ){
296
307
toChange .setAxisDependency (YAxis .AxisDependency .LEFT );
297
308
toChange .setLineWidth (1f );
298
309
toChange .setHighlightEnabled (false );
299
310
toChange .setDrawValues (false );
300
311
toChange .setDrawCircles (false );
312
+ float axisMax ;
313
+ float axisMin ;
314
+
301
315
switch (str ){
302
316
case "ENGINE COOLANT TEMP" :
303
- leftAxis .setAxisMaximum (100f );
304
- leftAxis .setAxisMinimum (-40f );
317
+ axisMax = value + 50f ;
318
+ axisMin = value - 50f ;
319
+ leftAxis .setAxisMaximum (axisMax );
320
+ leftAxis .setAxisMinimum (axisMin );
305
321
lineDataSet .setColor (getResources ().getColor (R .color .debug_red ));
306
322
lineDataSet .notifyDataSetChanged ();
307
323
BTPIDs = "05 " ;
308
324
break ;
309
325
case "VEHICLE SPEED" :
310
- leftAxis .setAxisMaximum (255f );
311
- leftAxis .setAxisMinimum (0f );
326
+ axisMax = value + 100f ;
327
+ axisMin = 0f ;
328
+ leftAxis .setAxisMaximum (axisMax );
329
+ leftAxis .setAxisMinimum (axisMin );
312
330
lineDataSet .setColor (getResources ().getColor (R .color .debug_blue ));
313
331
lineDataSet .notifyDataSetChanged ();
314
332
BTPIDs = "0D " ;
315
333
break ;
316
334
case "ENGINE RPM" :
317
- leftAxis .setAxisMaximum (10000f );
318
- leftAxis .setAxisMinimum (0f );
335
+ axisMax = value + 5000f ;
336
+ axisMin = 0f ;
337
+ leftAxis .setAxisMaximum (axisMax );
338
+ leftAxis .setAxisMinimum (axisMin );
319
339
lineDataSet .setColor (getResources ().getColor (R .color .debug_green ));
320
340
lineDataSet .notifyDataSetChanged ();
321
341
BTPIDs = "0C " ;
322
342
break ;
323
343
324
344
case "MAF SENSOR" :
325
- leftAxis .setAxisMinimum (0f );
326
- leftAxis .setAxisMaximum (100f );
345
+ axisMax = value + 50f ;
346
+ axisMin = 0f ;
347
+ leftAxis .setAxisMaximum (axisMax );
348
+ leftAxis .setAxisMinimum (axisMin );
327
349
lineDataSet .setColor (getResources ().getColor (R .color .LightCyan ));
328
350
lineDataSet .notifyDataSetChanged ();
329
351
BTPIDs = "10 " ;
330
352
break ;
331
353
case "ENGINE OIL TEMPERATURE" :
332
- leftAxis .setAxisMinimum (-50f );
333
- leftAxis .setAxisMaximum (210f );
354
+ axisMax = value + 50f ;
355
+ axisMin = value - 50f ;
356
+ leftAxis .setAxisMaximum (axisMax );
357
+ leftAxis .setAxisMinimum (axisMin );
334
358
BTPIDs = "5C " ;
335
359
break ;
336
360
case "INTAKE AIR TEMPERATURE" :
337
- leftAxis .setAxisMinimum (-50f );
338
- leftAxis .setAxisMaximum (100f );
361
+ axisMax = value + 50f ;
362
+ axisMin = value - 50f ;
363
+ leftAxis .setAxisMaximum (axisMax );
364
+ leftAxis .setAxisMinimum (axisMin );
339
365
BTPIDs = "0F " ;
340
366
break ;
341
367
case "THROTTLE POSITION" :
342
- leftAxis .setAxisMinimum (0f );
343
- leftAxis .setAxisMaximum (100f );
368
+ axisMax = value + 50f ;
369
+ axisMin = 0f ;
370
+ leftAxis .setAxisMaximum (axisMax );
371
+ leftAxis .setAxisMinimum (axisMin );
344
372
BTPIDs = "11 " ;
345
373
break ;
346
374
case "ABSOLUTE ENGINE LOAD" :
347
- leftAxis .setAxisMinimum (0f );
348
- leftAxis .setAxisMaximum (100f );
375
+ axisMax = value + 50f ;
376
+ axisMin = 0f ;
377
+ leftAxis .setAxisMaximum (axisMax );
378
+ leftAxis .setAxisMinimum (axisMin );
349
379
BTPIDs = "43 " ;
350
380
break ;
351
381
case "CALCULATED ENGINE LOAD" :
352
- leftAxis .setAxisMinimum (0f );
353
- leftAxis .setAxisMaximum (100f );
382
+ axisMax = value + 50f ;
383
+ axisMin = 0f ;
384
+ leftAxis .setAxisMaximum (axisMax );
385
+ leftAxis .setAxisMinimum (axisMin );
354
386
BTPIDs = "04 " ;
355
387
break ;
356
388
case "DEMAND ENGINE TORQUE" :
357
- leftAxis .setAxisMinimum (-125f );
358
- leftAxis .setAxisMaximum (130f );
389
+ axisMax = value + 100f ;
390
+ axisMin = value - 100f ;
391
+ leftAxis .setAxisMaximum (axisMax );
392
+ leftAxis .setAxisMinimum (axisMin );
359
393
lineDataSet .setColor (getResources ().getColor (R .color .Orchid ));
360
394
BTPIDs = "61 " ;
361
395
break ;
362
396
case "FUEL PRESSURE" :
363
- leftAxis .setAxisMaximum (765f );
364
- leftAxis .setAxisMinimum (0f );
397
+ axisMax = value + 500 ;
398
+ axisMin = 0f ;
399
+ leftAxis .setAxisMaximum (axisMax );
400
+ leftAxis .setAxisMinimum (axisMin );
365
401
lineDataSet .setColor (getResources ().getColor (R .color .AntiqueWhite ));
366
402
BTPIDs = "0A " ;
367
403
break ;
368
404
case "ACTUAL ENGINE TORQUE" :
369
- leftAxis .setAxisMinimum (-125f );
370
- leftAxis .setAxisMaximum (130f );
405
+ axisMax = value + 100 ;
406
+ axisMin = value - 100f ;
407
+ leftAxis .setAxisMaximum (axisMax );
408
+ leftAxis .setAxisMinimum (axisMin );
371
409
lineDataSet .setColor (getResources ().getColor (R .color .debug_green ));
372
410
BTPIDs = "62 " ;
373
411
break ;
0 commit comments