@@ -174,6 +174,7 @@ public void onCreate(Bundle savedInstanceState) {
174174
175175 ((TextView ) findViewById (R .id .tvF8_F15 )).setOnClickListener (this );
176176 ((TextView ) findViewById (R .id .tvF16_F23 )).setOnClickListener (this );
177+ ((TextView ) findViewById (R .id .tvF24_F27 )).setOnClickListener (this );
177178
178179 pref = PreferenceManager .getDefaultSharedPreferences (this );
179180 Settings .fullVersion = true ; //checkSig(this);
@@ -206,6 +207,7 @@ public void onCreate(Bundle savedInstanceState) {
206207
207208 displayArrow (R .id .tvF8_F15 , "down" );
208209 displayArrow (R .id .tvF16_F23 , "down" );
210+ displayArrow (R .id .tvF24_F27 , "down" );
209211
210212 activity = this ;
211213
@@ -320,6 +322,24 @@ else if(v.getId() == R.id.tvF16_F23) {
320322 mTcpWrite .getTrainButtonStateF16F23 (Settings .getCurrentTrain ().getId ());
321323 }
322324 }
325+ //click on F24-F27 banner
326+ else if (v .getId () == R .id .tvF24_F27 ) {
327+ LinearLayout l = (LinearLayout ) findViewById (R .id .llF24_F27 );
328+ if (l .getVisibility () == LinearLayout .VISIBLE ) {
329+ l .setVisibility (LinearLayout .GONE );
330+ displayArrow (R .id .tvF24_F27 , "down" );
331+ }
332+ else {
333+ if (!connected ) {
334+ return ;
335+ }
336+
337+ l .setVisibility (LinearLayout .VISIBLE );
338+ displayArrow (R .id .tvF24_F27 , "up" );
339+
340+ mTcpWrite .getTrainButtonStateF24F27 (Settings .getCurrentTrain ().getId ());
341+ }
342+ }
323343 //click on reverse button
324344 else if (v .getId () == R .id .cbReverse ) {
325345 mTcpWrite .setDir (Settings .getCurrentTrain ().getId (),((ToggleButton ) v ).isChecked ()?1 :0 );
@@ -437,7 +457,7 @@ public void onClick(DialogInterface dialog, int which) {
437457
438458 try {
439459 PackageInfo manager = getPackageManager ().getPackageInfo (getPackageName (), 0 );
440- ecosVersion .setText (manager .versionName );
460+ ecosVersion .setText (manager .versionName + " - build " + manager . versionCode );
441461 } catch (Exception e ) { }
442462
443463 return true ;
@@ -592,10 +612,11 @@ public void setStateList(boolean state) {
592612
593613 public void readSocket () {
594614
615+ String m ;
595616
596617 synchronized (lstMessage ) {
597618 while (!lstMessage .isEmpty ()) {
598- String m = (String ) lstMessage .poll ();
619+ m = (String ) lstMessage .poll ();
599620 if (m != null ) {
600621 readMessage (m );
601622 }
@@ -716,6 +737,12 @@ else if(respLine[0].equals("<REPLY get("+Settings.getCurrentTrain().getId()+", f
716737 "funcexists[17], funcexists[18], funcexists[19], funcexists[20], funcexists[21], funcexists[22], funcexists[23])>" )){
717738 parseButtonSymbol (respLine );
718739 }
740+ //train buttons name response 24-27
741+ else if (respLine [0 ].equals ("<REPLY get(" +Settings .getCurrentTrain ().getId ()+", funcexists[24], " +
742+ "funcexists[25], funcexists[26], funcexists[27])>" )){
743+ parseButtonSymbol (respLine );
744+ }
745+
719746 //train buttons response 8-15
720747 else if (respLine [0 ].equals ("<REPLY get(" +Settings .getCurrentTrain ().getId ()+",func[8],func[9],func[10],func[11]," +
721748 "func[12],func[13],func[14],func[15])>" )) {
@@ -736,6 +763,16 @@ else if(respLine[0].equals("<REPLY get("+Settings.getCurrentTrain().getId()+",fu
736763 mTcpWrite .getButtonNameF16F23 (Settings .getCurrentTrain ().getId ());
737764 }
738765 }
766+ //train buttons response 24-27
767+ else if (respLine [0 ].equals ("<REPLY get(" +Settings .getCurrentTrain ().getId ()+",func[24],func[25],func[26],func[27])>" )) {
768+
769+ parseButtons (respLine );
770+
771+ if (!Settings .protocolVersion .equals ("0.1" )) {
772+ mTcpWrite .getButtonNameF24F27 (Settings .getCurrentTrain ().getId ());
773+ }
774+ }
775+
739776 //a switching object response
740777 else {
741778 parseTrainsSymbol (respLine );
0 commit comments