From 2da936c7ddc4584509c08e39011c3f5532cb115c Mon Sep 17 00:00:00 2001 From: Arthur Coolen <coolen@astron.nl> Date: Tue, 10 Mar 2009 11:21:18 +0000 Subject: [PATCH] Bug1164: SOrt order was wrong for stationlist due to numbers 1-9 10- iso 01,02 etc --- MAC/Navigator2/panels/Hardware/Station.pnl | 29 +++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/MAC/Navigator2/panels/Hardware/Station.pnl b/MAC/Navigator2/panels/Hardware/Station.pnl index 5d11d02f7a1..3436fd82bed 100644 --- a/MAC/Navigator2/panels/Hardware/Station.pnl +++ b/MAC/Navigator2/panels/Hardware/Station.pnl @@ -85,9 +85,28 @@ void updatePositions(string dp1, float cOL, return; } - dyn_string OL=dpNames(sysName+txt+\"*.deltaX;\",\"Antenna\"); - dyn_string NB=dpNames(sysName+txt+\"*.deltaY;\",\"Antenna\"); - dyn_string H= dpNames(sysName+txt+\"*.deltaH;\",\"Antenna\"); + dyn_string unsortOL=dpNames(sysName+txt+\"*.deltaX;\",\"Antenna\"); + dyn_string unsortNB=dpNames(sysName+txt+\"*.deltaY;\",\"Antenna\"); + dyn_string unsortH= dpNames(sysName+txt+\"*.deltaH;\",\"Antenna\"); + dyn_string OL=unsortOL; + dyn_string NB=unsortNB; + dyn_string H=unsortH; + + // since we have Antenna's with 1 digit and 2 digits we need to resort the dynstrings here, otherwise we get them as: + // HBA0 HBA1 HBA10 HBA11-HBA19 HBA 2 HBA 20 etc + // + + for (int i=1; i<= dynlen(unsortOL);i++) { + string ant = strsplit(unsortOL[i],\":.\" )[2]; + int idx = substr(ant,3); + OL[idx+1]=unsortOL[i]; + NB[idx+1]=unsortNB[i]; + H[idx+1]=unsortH[i]; + } + + LOG_DEBUG(\"OL: \"+ OL); + LOG_DEBUG(\"NB: \"+ NB); + LOG_DEBUG(\"H: \"+ H); // found match, save found strings and redraw screen @@ -98,6 +117,10 @@ void updatePositions(string dp1, float cOL, dpGet(NB,antennaOffsetsNB); dpGet(H,antennaOffsetsH); + LOG_DEBUG(\"offsetsOL: \" + antennaOffsetsOL); + LOG_DEBUG(\"offsetsNB: \" + antennaOffsetsNB); + LOG_DEBUG(\"offsetsH : \" + antennaOffsetsH); + redraw(txt); } " 0 -- GitLab