From b4590a9f0e6287761141758aa69ce780003d1024 Mon Sep 17 00:00:00 2001 From: 21AQN01 <122401921+21AQN01@users.noreply.github.com> Date: Sun, 24 Mar 2024 10:18:43 -0400 Subject: [PATCH 1/3] green line layout complete --- .../CTC_Maintenance.cpython-39.pyc | Bin 3140 -> 3051 bytes CTC/__pycache__/CTC_Testbench.cpython-39.pyc | Bin 1960 -> 1871 bytes CTC/__pycache__/CTC_UI.cpython-39.pyc | Bin 9078 -> 8989 bytes CTC/__pycache__/OccupiedBlocks.cpython-39.pyc | Bin 2121 -> 2032 bytes CTC/__pycache__/Schedule.cpython-39.pyc | Bin 2440 -> 2351 bytes CTC/__pycache__/TempData.cpython-39.pyc | Bin 1199 -> 1110 bytes CTC/__pycache__/Throughput.cpython-39.pyc | Bin 1278 -> 1189 bytes PLC_Files/__pycache__/Parser.cpython-39.pyc | Bin 1817 -> 1728 bytes PLC_Files/__pycache__/__init__.cpython-39.pyc | Bin 251 -> 162 bytes Track_Model/Track_Model.ui | 3576 +++++++++++++++++ .../__pycache__/TrackModel.cpython-39.pyc | Bin 16357 -> 16268 bytes .../__pycache__/Block.cpython-39.pyc | Bin 859 -> 770 bytes .../__pycache__/__init__.cpython-39.pyc | Bin 257 -> 168 bytes .../TrackController_HW.cpython-39.pyc | Bin 7337 -> 7248 bytes .../TrackController_HW_TB.cpython-39.pyc | Bin 4587 -> 4498 bytes .../__pycache__/readTrackFile.cpython-39.pyc | Bin 1596 -> 1507 bytes .../__pycache__/WaysideSWandTB.cpython-39.pyc | Bin 14416 -> 14323 bytes __pycache__/Main_UI.cpython-39.pyc | Bin 2236 -> 2147 bytes 18 files changed, 3576 insertions(+) diff --git a/CTC/__pycache__/CTC_Maintenance.cpython-39.pyc b/CTC/__pycache__/CTC_Maintenance.cpython-39.pyc index 686d85d3f13940097d213e48b94bdc55ff8ecc96..812f2e8cb442eac72038623c71bf1b0087b90d96 100644 GIT binary patch delta 67 zcmX>i@micak(ZZ?0SI>0|KG?xiBZ!d*(xTqIJKxaCNVFgur$U$FV&?evn(~nB|o_| VH#M)MIL1A*#G^E6vpkb37XbP?7ZU&g delta 157 zcmaDYenf&hk(ZZ?0SFSW{@utuiLriRvQ0|KG@cfl1RX*(xTqIJKxaCNVFgur$U$FV&?evn(~nB|o_| VH#M)MIL1A*#G^E6b1btr3jp*h7i9nd delta 157 zcmX@lw}PKLk(ZZ?0SFSW{@uuZfvJ9evQ0|KG^Hfm72y*(xTqIJKxaCNVFgur$U$FV&?evn(~nB|o_| VH#M)MIL1A*#G^E6vn`jUBmfbV7rFod delta 157 zcmbR1_RWnuk(ZZ?0SMOI`@4~Q184n=WUH9a;?$zz7$bw6%$ykiyi}K>%(7GkU4_s* zAYD|PSyHKxpQaFySyED*R9cjt5#y4dT$-DjS5h1k;29DER2f`Ql$n>VU}Ruq665OZ zs$ghnVgM4ZEG|jSEmlxd2q?p@PVH@k(ZZ?0SM~){%qt9VbpX_wu%WYPAw{qNzBVAERFHcOLZyAEK7}X$xklL VP0cGQj&aW{@hDB&{E#t&4FKj47oGqB delta 157 zcmeyse^P)uk(ZZ?0SFSW{@utO!dSl`*(xTqIJKxa#>gNiGbhGBFV&?evn*9XS0OYH zNEa1nmQ*U_rzr$vmXs7Hl@_IE#JJ=qm*%GCl@!MWc!q=kRR$LnW#*+T7#SFu#JD=U zDi|7?7=VN;i%U{-ixt!q0*dmpQj<#*T=UX1^HNj6sx?A_96g!+f;BgHFlMj;08$$> A+yDRo diff --git a/CTC/__pycache__/Schedule.cpython-39.pyc b/CTC/__pycache__/Schedule.cpython-39.pyc index dd8d201ac614066eed7de1435957ba8ba54852f7..cc0d3022a28886e669835edffb602045ea34170a 100644 GIT binary patch delta 67 zcmeAWUN6L*$ji&c00eb?e>QT*Gio{}Tg8MHrxq2*B<5ulmd5z!rMeVlmZiqHe#1D29RSC!7iRzf delta 157 zcmZ24)FI5B$ji&c00fCw|8C@tXRM!IV`Pw%nG@rmm+DfKS(d7xs}Pz8 zq>G9(ODYxe(-Z0|KG?h&8+E|Y!wq)oLW>IlbDxLSQ_J>m+DfKS(X~(lAm0f Vo0?Zr9OIr@;!&Ekc?B~&BLLC?7P0^U delta 157 zcmcb{v7VDVk(ZZ?0SFSW{@ute&0Ie#*(xTqIJKxa#>gNiGbhGBFV&?evn*9XS0OYH zNEa1nmQ*U_rzr$vmXs7Hl@_IE#JJ=qm*%GCl@!MWc!q=kRR$LnW#*+T7#SFu#JD=U zDi|7?7=VN;i%U{-ixt!q0*dmpQj<#*T=UX1^HNj6sx?A_96g!+f;Bh$GqW=S00%uX AzyJUM diff --git a/CTC/__pycache__/Throughput.cpython-39.pyc b/CTC/__pycache__/Throughput.cpython-39.pyc index 9ffa89f2988208641b9fb8b812c2904319cc03c9..bcf39db19495f571a2aa4763151f0712f1512706 100644 GIT binary patch delta 67 zcmeyzxs;PTk(ZZ?0SM~){%qt9X4G^}wu%WYPAw{qNzBVAERFHcOLZyAEK7}X$xklL VP0cGQj&aW{@hDB&{D4u8835c87bpM# delta 157 zcmZ3=`Hz!3k(ZZ?0SFSW{@utO%ve7s*(xTqIJKxa#>gNiGbhGBFV&?evn*9XS0OYH zNEa1nmQ*U_rzr$vmXs7Hl@_IE#JJ=qm*%GCl@!MWc!q=kRR$LnW#*+T7#SFu#JD=U zDi|7?7=VN;i%U{-ixt!q0*dmpQj<#*T=UX1^HNj6sx?A_96g!+f;Bg{Gs-ao067mc AW&i*H diff --git a/PLC_Files/__pycache__/Parser.cpython-39.pyc b/PLC_Files/__pycache__/Parser.cpython-39.pyc index cf6f9a263db06e54712825dd6d1dc0ed16ef10f1..7310e6c3aa3b9d1ca2e15aea0420d71da2a51261 100644 GIT binary patch delta 67 zcmbQqcYv2Wk(ZZ?0SK10|JleL&8X>`Y!wq)oLW>IlbDxLSQ_J>m+DfKS(X~(lAm0f Vo0?Zr9OIr@;!&Ek`30jPD*)5+7cT$+ delta 157 zcmX@WJClz)k(ZZ?0SFSW{@utO%~(G#*(xTqIJKxa#>gNiGbhGBFV&?evn*9XS0OYH zNEa1nmQ*U_rzr$vmXs7Hl@_IE#JJ=qm*%GCl@!MWc!q=kRR$LnW#*+T7#SFu#JD=U zDi|7?7=VN;i%U{-ixt!q0*dmpQj<#*T=UX1^HNj6sx?A_96g!+f;BhyGa9l202i4v AOaK4? diff --git a/PLC_Files/__pycache__/__init__.cpython-39.pyc b/PLC_Files/__pycache__/__init__.cpython-39.pyc index 90a15f4f75151001287477fe0de8db4d5d2a3e0f..cb65abc644f19651c0a68c0481445888fd45a2af 100644 GIT binary patch delta 64 zcmey(xQLNEk(ZZ?0SK10|Cz{bqv@V(6%$&VT2vg9n3qvl8sndr>Qa + + + + 330 + 30 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + A + + + + + + 340 + 50 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + A + + + + + + 350 + 70 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + A + + + + + + 370 + 80 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + B + + + + + + 390 + 90 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + B + + + + + + 410 + 90 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + B + + + + + + 430 + 90 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 440 + 70 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 80 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + E + + + + + + 50 + 20 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + E + + + + + + 40 + 40 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + E + + + + + + 430 + 50 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 290 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + D + + + + + + 170 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + D + + + + + + 250 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + D + + + + + + 120 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + E + + + + + + 360 + 20 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 330 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 400 + 30 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 210 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + D + + + + + + 40 + 60 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 80 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 120 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 100 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 180 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 200 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 160 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 140 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 260 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + G + + + + + + 40 + 280 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + G + + + + + + 40 + 240 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + G + + + + + + 40 + 220 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + G + + + + + + 40 + 300 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + H + + + + + + 60 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + H + + + + + + 80 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + H + + + + + + 100 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 120 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 140 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 160 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 180 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 200 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 220 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 240 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 260 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 280 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 440 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 340 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 320 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 420 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 360 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 400 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 480 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 380 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 300 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 460 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 500 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 520 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 540 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + J + + + + + + 560 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + J + + + + + + 580 + 320 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + J + + + + + + 600 + 330 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + J + + + + + + 600 + 350 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + J + + + + + + 600 + 370 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 390 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 410 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 430 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 450 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 470 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 490 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + L + + + + + + 600 + 510 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + L + + + + + + 590 + 540 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + L + + + + + + 560 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + L + + + + + + 510 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + L + + + + + + 470 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + M + + + + + + 440 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + M + + + + + + 410 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + M + + + + + + 380 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 350 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 330 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 270 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 290 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 310 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 250 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 230 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + O + + + + + + 210 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + O + + + + + + 190 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + O + + + + + + 170 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 160 + 540 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 150 + 520 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 150 + 500 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 150 + 480 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 160 + 460 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 180 + 450 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 200 + 460 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 200 + 480 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 210 + 500 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Q + + + + + + 220 + 520 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Q + + + + + + 230 + 540 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Q + + + + + + 390 + 540 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + R + + + + + + 410 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + S + + + + + + 430 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + S + + + + + + 460 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + S + + + + + + 480 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + T + + + + + + 510 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + T + + + + + + 530 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + T + + + + + + 550 + 520 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + T + + + + + + 560 + 500 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + T + + + + + + 570 + 480 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 460 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 440 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 420 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 380 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 400 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 360 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 560 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 540 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 520 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 460 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 480 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 500 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 360 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 80 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 140 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 340 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 220 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 400 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 420 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 200 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 160 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 120 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 240 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 60 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 180 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 320 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 260 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 300 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 100 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 440 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 380 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 280 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 40 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 20 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 0 + 330 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + X + + + + + + 0 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + X + + + + + + 0 + 290 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + X + + + + + + 0 + 270 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Y + + + + + + 0 + 250 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Y + + + + + + 0 + 230 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Y + + + + + + 20 + 210 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Z + + diff --git a/Track_Model/__pycache__/TrackModel.cpython-39.pyc b/Track_Model/__pycache__/TrackModel.cpython-39.pyc index ab5f9c5ca953eabb2ac1b939bb741aff8fcad3b6..6e8715c5fc878bcf66736823f137250dfeb0c265 100644 GIT binary patch delta 1262 zcmZY9X-pGA6bEnzTRfT?QSd;q604%+0NU3EUhRtWt+`I z2k4*A51C)vGRk+|Z{_T{Y$x|jH*xm+%k+;jb&V7}xFDDG4_Fh97uZSWWK z2+f$fY~H-Ze1(1oZ6KF&H0q7$F=-*omuiL_f00j9zm7T|%8Jycs0%EzS|7%1!G2H! z_5q?2i^aMdVLV6yd%#|>3siueblK8mszfNpR8juKZI*moa}WepPy}q?kQx@f*1&3L zlX;|CIe9S~T&Sn*WB76EnUZ8atzT$HCBWqZUPjYwiIJy}8R3<4^8#72uOJx6Qsi7; zwwIrwjkd9oEu!q^il@T3MU=A~re1Rj04O4}&8h9Eis~ho}Qw0~f$Wa0%R? z1##n6mLY5h7NCL#&he*7!O9#OL+opn*KBZFrk&p9!?ntsffzz))Q=YF$T2{$|*!n^6JGlEr9x6{Hl(>G`3a8VTtYnb>_ zoaq)ikyz1J65IKsw3RYv?ly^8{aNESeXgBa5~IlGTH7~KJXZe@R!;4%J$)tdu>B?D zc71jVW~)1rk{El7?xyZ!H+wCj&S8VpMYGD8^iMB|o_L5|ZvY3uX0Qcp1=tra2Uvr@ z0q?+j@Bw@TJ>U~?;Rm3!*%EuMw$2{TO!de*Kpj1p6J09$b`q}FfDVugL>uQJx&bmk yJ4gqjzs1Wf`kNzn5s24Z{0oTou0jsIs~MC$f01U8isgWQ#>J8+3!O~fl#*X@1!;o- delta 1414 zcmZ|PYitx%6bEo_y9Mf|5ewKxV|Gl}whN)zE`7&BR5pghKARo`@bb7Hg-S!_RP6w z?mX_fGm`!}?d>cmxNDC1P2T?dgx8vv9*;LfJ1mu3(NIv=^k|EruHxE&sw`7F4Drt` z%^p+1G)QQ4N{nvqaK!BAB+{8(72tgH$mJ!si# zpQV&4t=xQCjoV7tNN9$t%Ifm=wU4aMZEg!VN9X-oP#DR3d~G<~%r}Ueb91@c6`{k6 zfAL0gI$B*%mzgpm&aQjU%w?9-^uSqm->4|#I{|?#cm=#niqGeN5n&Ll1UtY>;Cb)@ z*iLcZ5$^~>S(Bkf%5%P692?*n;0G2c1Ftz}lwJ?Z(uw?qPVGa@Y(5w1Krw%lGNtte z6XL+lvuv&<`DXgEw5IAUWD0dH(PPInBiV1qEG=Pl>iif67FsFIj`#d`);Kr2*|hcE~0bb1MnU= z1x|wt^!u{=AKi@bB=CWEz48LN1L6=7*z zk1o2!%~y4Gpwre&gJ+2aH{OG_ck{b6E?NrNvknj5V(bRBgxc73IviTZQuJ4-(tib$ z%htGx=o*lX^AVyC!A@#f?ic0u@|)@FNHFj@_zZjkJ_R=ffw|M?|8L`AJePkV{@gsZ zFKG`(JeqFCMXnm>rNr)f>i$aJB6j9Ck}5Ub7jz`!o7IqK~HAI;!_tI|-8Mbjo6Ut`#7>|?!yTLF>gDqey z*an^j--6rVJMcaD0sIJlBKP4TcGFqkxPW=bkO_f3WUY8mm3>}<<8B~3K7mNKeGj4w jU>!IK+JM{-y@=#~Fc6&r^6Mc#E^<3$kh@HOuAqMa9HNEq diff --git a/Track_Resources/__pycache__/Block.cpython-39.pyc b/Track_Resources/__pycache__/Block.cpython-39.pyc index b6fe78f47c03fd11742559fab24362437008196b..fae5b30fbca5fbd4ab3246679d32bfbbf1e6ac04 100644 GIT binary patch delta 66 zcmcc3*2Ko0$ji&c00g`1|8L}e&Zy~?Y!wq)oLW>IlbDxLSQ_J>m+DfKS(X~(lAm0f Uo0?Zr9OIr@;!&D3xrFIC0N2zP;{X5v delta 156 zcmZo-yUoU($ji&c00e99{oTm@oUwj!vQ0W_k_)Sq?Nr diff --git a/Track_Resources/__pycache__/__init__.cpython-39.pyc b/Track_Resources/__pycache__/__init__.cpython-39.pyc index 84f0e939448516d06b88c659ffaf96cb5c42a2fd..5624d7e9aafdb89f732c8345bc91d7c36c2ed213 100644 GIT binary patch delta 64 zcmZo&l%*!Y&jq%S*bt%d$OO0{KPcF?( S%_}L6anCIAC{3Dp(gFa3<`!=N delta 154 zcmZ3%*vQ14$ji&c00e)wUY^KpQ@p_^U^c(Qd7aIH9~?MJ(>N2H76EW0056nGTi_G diff --git a/Wayside_HW/__pycache__/TrackController_HW.cpython-39.pyc b/Wayside_HW/__pycache__/TrackController_HW.cpython-39.pyc index 6762bcfbf7d3b9db430bf8bf62c30d85430c38e8..d2bd0edd99aebd23cc0124ad8a1f75e8425791c0 100644 GIT binary patch delta 1701 zcmaJ?&rcIU7-dDEbX!_VX)RRbmw}2FPy@&hKPAL#phGUD2P!>yMQ#bOlg)Et->6;`rom2AbB&)L6 zOj@1IuN2p+o=Q?Dud5kx24OeawFlk&YR!9p0I!b$1gfb6$0ra3wU>`u+?GClu9L?s zeT^sgCJp-(w=GdAp;;MGr&2^&BS~6|yaogtfM#3Cn zX(w=&t(i1affAZ#RLB?1v5<5SVF=+6 zfMy4~5p^>|A}K;t+JqB+gcgKWgm&(Flb`>!>&d#5N$7 zd<&;os0^GONs0i*2Eu*4#g~pjsroFA&+%{0t~HYkbOzPy8ObIWH{gekGzfC=lLufD$jR4-AiWTbFjh? zza1~l#9MK~OuUWX_5Lmxq>y+S;D3?JRK@0Is=|($Y6l4Xgs(BO!xwHDMd1VZOk|T2 zc{P=zX?0UHQve#37kpmX&@p`5M~6yFYH>+qgTUJndk^XGvuvkCA@JrdO&J%@HL>0> zaA*`jJBaTPy^=k6vjzbk*a~_Y!G+Mze>8Ok(L0SGECOiucwEUO7*j|l6OS7j`Y2Mm o`DF78w`SX*x$E$h$7wECdX;g>KLY|FA0;bTivR!s delta 1809 zcma)7&u<$=6z;|(vE$fvoH%ZNK$jqrxJ?}=G9+mzkUCCmTGEhpi?p(^-1QJI*?6Ow zF(oJe4-5xRNafTLBvdRo=fI6hMLm@jC&UF#6(@vL#Cx+&vyHY0OZ$2D%{TA+=FRi? zr^UNV;c6t(cM3i;zdpGa{vx30;;TSf(c3=kDfO=^Ec46f!I+h&6h$(}B4trP)tMtH7H zj2&1MLS9^a6G|>%dM8+|)r#mo6`&Ik(EBWtag7+oRYqk}Pd;2bAfALizx1rNqqQ;H zFq(TNsa>{gW9NApX4?<@?kF=^%!UU>Uqg5uVHm)PfL)F6TSTi9!s!`^iQD}{EvFYI z*6ap%y5GYuI)v&f^kST%3%OYUSwoP@DB!CsEv@71i6+GQ9!kmkaVLBc86C-cgHt#B zBy-3)mK?`d*?cE9JBky2l4Bx0^iRtpg~S3tD(W`h|4^05{ZyqLKUM6MU*KU_qf?4F zNIZ^tDh#o;zeOgV5QoE2-%_sv#j|e}U;P}sgcE)au>Jn%lsYLsNdC}zR-YDu@Lx4J z;Xn%cIZ&VH0DlF4!E;=Lg!ul<*4s-EOLgIO(WtF7dEKUPh0Bggx!tM{P+}0c+&$Bt zMiPY)y4Xn)!X(-rfgAFiOzU2Tk)s6ely~u;BP{z4Q0Y|w=LNh++&ZT)*o!cSFpn^R zFpDrKJ{z4%UBThI08XS*F{~R8Yww6iQePo7u5h+-~CAS+SH- z>Ott$xp@$8q6bBC@aV;R@8eM~;(t)*P1AO*-NVQ1yzhPAoA=(Y!pnl;m}csj{C>Xp z^U2uIHNm&_y0t{E*-IgX&~}3MlgO?GbOF4l)L!V2Xq5&mv==>gCu;Q`Cdyjzq7-PP zNdzE6^L~dst}}p3@)pMSp~yd;d~c4+e=7+Yye{!a1C^l(JeK!qDxt{V4m__at`28p zOeBa;9RLe?nDI^nbp1zvIk{f$=bXjZBtiv2d0als|D9aFtN00V!V4ITN`lZCea3_l zb}4o1-bD%(1){2GIdu6FAfj9a5}o_`$-?(gbB6>rWXTtU&a6R~y&Jhpa(WD+HB zNy1^p9N$b4ZJd8kl}7Qg!URgF9E1B`0er#;CG)j0T%AVO843N8MRqR>Jya2KBmTqq zJcBuwzS~i3cO%=vDb@&yx=ujWjvVLCsjW%%Tn&r^yM`HcU58Ou?Lio~>TQ@0G`V5l zPFo`-nE^M^%JjW}-gZ59&s%9TnC7{3E3amY3nWy-l~!Deze&FuQp=#`tJ*z^x zb74M@#~i{e!W_bNgc}IwBnY$FB)$`dg!+E78PhHxrP%wB(X`CL_V(BEOSbYCchbMr delta 874 zcmZXS&rcIU6vtiL?N7EXV#O%fLF|vUt+Xq~1fvN;Lm&!`Z9O!5uCR0&|5AhuC7&V%hop>yiBY;jLN9x@HcTSx{rEWsBTf}ZhEAC_BwklZ;%mc0ypQ*!)UjgSa4|!1$Q8(`0>Xf6 sfJwj&z)e5~Fb#MBcnDYkJYwb4_0-vgxedYWpp}v&UvzZ;w#G~U0UAcYasU7T diff --git a/Wayside_HW/__pycache__/readTrackFile.cpython-39.pyc b/Wayside_HW/__pycache__/readTrackFile.cpython-39.pyc index 7e19b1e959c128b883edea0253ccb1af643c8430..c71d614d12295888c09c2c900661ed610005e1cd 100644 GIT binary patch delta 349 zcmYLFy-EW?5H`7s(OeR%NWel68=G{Bq!Bfsf*Octp`6HOGv?OZpF4YsmDuQCR{Tn4AiN+(;xwC}g<%rv-6F zHB&gb6N-nvg;fI&t(p&RoXHja;VxIG+_!@c2BhaptwLRImd+Q~&6#U;*)V||yhkdg pD4Y7Z)ZSRKwT3SlA6@nU(_C`E)^tBvwBNDZ|3Cd?b={m@{RXXcdh7rI delta 412 zcmYLFJx>Bb5Ebr-1`dgdAJIa$FhmLs5GpzZ3K9bZj>64Z9LI9Ey7!UYMMFi5g^BI{ z2P+HhP5cYiS7>47UobJciyEhxd2i;;yky=ok4DDMX44BY?p{70GSA5w)FT^Hs09e2&0A7zDCXhWQkPW6;H%v*Cogp4AAQiH`!#tZvIR zrLrGU9JrudELW^%y$MRCN>R0^j3b|cJm}JJ^AtH8Gy@k02+ietX0O(2_X}c6J29Ys zTTo?TA6QtXE3(8Io3c0=GP)`{scK?F+@!#o68yjU2N~iiwfhZ)w1;v4 diff --git a/Wayside_SW/__pycache__/WaysideSWandTB.cpython-39.pyc b/Wayside_SW/__pycache__/WaysideSWandTB.cpython-39.pyc index f17435c76c7b9fb3cee2157b31e6fe52ceb3c5df..b5d07748f28a599fd57d4246ce393e0935731f3a 100644 GIT binary patch delta 3389 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 RZx&k-E5Zl=x{JBk{{Um9L-YUu diff --git a/__pycache__/Main_UI.cpython-39.pyc b/__pycache__/Main_UI.cpython-39.pyc index 093800e350dce8a33315a85ca23f36c7673c77d6..f40d25a6aed1a0aeed30c396fc45bd82f8599b67 100644 GIT binary patch delta 67 zcmdlZ_*j5Dk(ZZ?0SI2U{olxafmzcg*(xTqIJKxaCNVFgur$U$FV&?evn(~nB|o_| VH#M)MIL1A*#G^E6b1X|d3jhgv7t;U$ delta 157 zcmaDXut$(Pk(ZZ?0SE*i|J}%afw_KavQ Date: Mon, 25 Mar 2024 13:58:39 -0400 Subject: [PATCH 2/3] green layout 2 --- MainSimulation.py | 6 +- MainUI.ui | 6 +- Main_UI.py | 2 + Track_Model/Track Layout.tmx | 30 - Track_Model/Track.tsx | 4 - Track_Model/TrackModel.py | 165 +- Track_Model/Track_Layout..tmj | 60 - Track_Model/Track_Layout.json | 60 - Track_Model/Track_Model.ui | 9251 +++++++---------- Track_Model/Track_Model_test.ui | 7062 +++++++++++++ Track_Model/Track_Model_with_red.ui | 7105 +++++++++++++ .../__pycache__/TrackModel.cpython-39.pyc | Bin 16268 -> 14255 bytes .../__pycache__/WaysideSWandTB.cpython-39.pyc | Bin 14323 -> 15802 bytes __pycache__/Main_UI.cpython-39.pyc | Bin 2147 -> 2147 bytes 14 files changed, 17724 insertions(+), 6027 deletions(-) delete mode 100644 Track_Model/Track Layout.tmx delete mode 100644 Track_Model/Track.tsx delete mode 100644 Track_Model/Track_Layout..tmj delete mode 100644 Track_Model/Track_Layout.json create mode 100644 Track_Model/Track_Model_test.ui create mode 100644 Track_Model/Track_Model_with_red.ui diff --git a/MainSimulation.py b/MainSimulation.py index 85f20538..3a1526c9 100644 --- a/MainSimulation.py +++ b/MainSimulation.py @@ -21,7 +21,6 @@ import Track_Model from Track_Model.TrackModel import * - #Utility function to initialize clock def clock(): global time @@ -62,6 +61,10 @@ def clock(): #Wayside to Track Model +"""Track Model Signals""" + +#Track Model to CTC +MainWindow.TrackModelWindow.SendTicketsales.connect(MainWindow.CTCwindow.recieveTicketSales) """Clock Initialization""" #Initializing Qtimer for clock @@ -70,6 +73,7 @@ def clock(): timer0.setInterval(100) #Interval in ms timer0.timeout.connect(clock) timer0.start() +QtWidgets.QApplication.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling) sys.exit(UI_window.exec_()) diff --git a/MainUI.ui b/MainUI.ui index a74133d2..73372deb 100644 --- a/MainUI.ui +++ b/MainUI.ui @@ -6,8 +6,8 @@ 0 0 - 386 - 384 + 400 + 394 @@ -133,7 +133,7 @@ - + 110 diff --git a/Main_UI.py b/Main_UI.py index b10bc22e..27962979 100644 --- a/Main_UI.py +++ b/Main_UI.py @@ -24,6 +24,8 @@ import Track_Model from Track_Model.TrackModel import * + + class Main_UI(QtWidgets.QMainWindow): def __init__(self): super(Main_UI, self).__init__() diff --git a/Track_Model/Track Layout.tmx b/Track_Model/Track Layout.tmx deleted file mode 100644 index 067ed5c5..00000000 --- a/Track_Model/Track Layout.tmx +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,472,472, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,472,472,0,0,469, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,472,472,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,472,472,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,472,472,0,0,0,0,0,0,0,0,0,0,0,0, -469,472,472,0,472,472,0,472,472,0,472,472,0,472,472,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,472,472,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,472,472,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,472,472,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,472,472,0,0,469, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,472,472, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 - - - diff --git a/Track_Model/Track.tsx b/Track_Model/Track.tsx deleted file mode 100644 index 23cc84fc..00000000 --- a/Track_Model/Track.tsx +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/Track_Model/TrackModel.py b/Track_Model/TrackModel.py index cf768180..34b2e51b 100644 --- a/Track_Model/TrackModel.py +++ b/Track_Model/TrackModel.py @@ -10,9 +10,9 @@ sys.path.append(project_root) # import libraries -from PyQt5.QtWidgets import QApplication, QLCDNumber, QMainWindow, QFileDialog, QVBoxLayout, QComboBox, QHBoxLayout, QWidget, QLabel, QPushButton, QSizePolicy -from PyQt5 import uic -from PyQt5.QtCore import Qt +from PyQt5.QtWidgets import QApplication,QLCDNumber, QGroupBox,QMainWindow, QFileDialog, QVBoxLayout, QComboBox, QHBoxLayout, QWidget, QLabel, QPushButton, QSizePolicy +from PyQt5 import uic,QtCore +from PyQt5.QtCore import Qt,QAbstractTableModel from PyQt5.QtCore import QTimer, QTime from Track_Resources.Block import Block from PyQt5 import QtCore as qtc @@ -29,21 +29,22 @@ class TrackModelMain(QMainWindow): # Define a signal to emit the grade to testBench UI grade_signal = pyqtSignal(float) #Adding a signal to update information based on block selection: - block_selected_signal = pyqtSignal(str) # Add this at the beginning of the class + block_selected_signal = pyqtSignal(str) getSpecialBlocks = pyqtSignal(list) #sendOccupancies = pyqtSignal(list) + #send ticket sales to ctc SendTicketsales = pyqtSignal(list) def __init__(self): super().__init__() self.blockStates = {} - # Load the track model straight from the UI file using uic uic.loadUi("Track_Model/Track_Model.ui", self) - self.clock_in.display("09:22") + + # Connect Upload Track Layout button to make upload file self.pushButton.clicked.connect(self.upload_track_layout) @@ -52,42 +53,37 @@ def __init__(self): self.block_in_2.setEnabled(False) - #self.generateTickets() - - # Connect button to method - # If clicked, then connect to UI - self.offButton_1.clicked.connect(self.toggle_button_state) - self.offButton_2.clicked.connect(self.toggle_button_state_2) - self.offButton_3.clicked.connect(self.toggle_button_state_3) - - # Set default state for toggle button (default color should be red and "OFF") on all 3 buttons - self.offButton_1.setText("OFF") - self.offButton_1.setStyleSheet("background-color: rgb(195, 16, 40);") - - self.offButton_2.setText("OFF") - self.offButton_2.setStyleSheet("background-color: rgb(195, 16, 40);") - - self.offButton_3.setText("OFF") - self.offButton_3.setStyleSheet("background-color: rgb(195, 16, 40);") + self.generateTickets() # Instantiate the Data class self.data = Data() + # Connect the comboBox to the function + self.green_line.hide() + self.green_fault.hide() + #self.red_line.hide() + self.line_select.currentIndexChanged.connect(self.on_line_select_changed) + + def on_line_select_changed(self): + # Check the selected option and show the corresponding group box + selected_option = self.line_select.currentText() + if selected_option == "Green Line": + self.green_line.show() + self.green_fault.show() + elif selected_option == "Select Line": + self.green_line.hide() + # elif selected_option == "Red Line": + # self.red_line.show() + # self.green.hide() + + def generateTickets(self): # Generate a random number between 1 and 74 for ticket sales random_number = random.randint(1, 74) #Output the random numberto ticket sales block info self.ticket_out.setText(str(random_number)) - self.SendTicketsales.emit(random_number) - - - - #send to CTC - def send_tickets(self): - pass - - def send_boarding(self): - pass + self.SendTicketsales.emit([random_number]) + #set temperature def set_temp(self, temp): @@ -132,61 +128,6 @@ def update_main_dropdown(self, selected_text): # update the dropdown in your main UI self.block_in_1.setCurrentText(selected_text) - #This toggles the button of the failures - def toggle_button_state(self): - # Toggle button state and color button for broken rail - if self.offButton_1.text() == "OFF": - self.offButton_1.setText("ON") - self.offButton_1.setStyleSheet("background-color: green;") - else: - self.offButton_1.setText("OFF") - self.offButton_1.setStyleSheet("background-color: rgb(195, 16, 40);") - - def toggle_button_state_tb(self, bool1): - # Toggle button state and color button for block broken rail but used from tb to main - if bool1.lower() in ["yes", "true", "on", "1"]: - self.offButton_1.setText("ON") - self.offButton_1.setStyleSheet("background-color: green;") - elif bool1.lower() in ["no", "false", "off", "0"]: - self.offButton_1.setText("OFF") - self.offButton_1.setStyleSheet("background-color: rgb(195, 16, 40);") - - def toggle_button_state_2(self): - # Toggle button state and color button for track circuit failure - if self.offButton_2.text() == "OFF": - self.offButton_2.setText("ON") - self.offButton_2.setStyleSheet("background-color: green;") - else: - self.offButton_2.setText("OFF") - self.offButton_2.setStyleSheet("background-color: rgb(195, 16, 40);") - - def toggle_button_state_2_tb(self, bool1): - # Toggle button state and color button for block track circuit failure but used from tb to main - if bool1.lower() in ["yes", "true", "on", "1"]: - self.offButton_2.setText("ON") - self.offButton_2.setStyleSheet("background-color: green;") - elif bool1.lower() in ["no", "false", "off", "0"]: - self.offButton_2.setText("OFF") - self.offButton_2.setStyleSheet("background-color: rgb(195, 16, 40);") - - def toggle_button_state_3(self): - # toggle button state and color button for power failure - if self.offButton_3.text() == "OFF": - self.offButton_3.setText("ON") - self.offButton_3.setStyleSheet("background-color: green;") - else: - self.offButton_3.setText("OFF") - self.offButton_3.setStyleSheet("background-color: rgb(195, 16, 40);") - - def toggle_button_state_3_tb(self, bool1): - # Toggle button state and color button for power_failure but used from tb to main - if bool1.lower() in ["yes", "true", "on", "1"]: - self.offButton_3.setText("ON") - self.offButton_3.setStyleSheet("background-color: green;") - elif bool1.lower() in ["no", "false", "off", "0"]: - self.offButton_3.setText("OFF") - self.offButton_3.setStyleSheet("background-color: rgb(195, 16, 40);") - def toggle_light_state_tb(self, bool1): # Toggle the state and color of the light button if bool1.lower() == "green": @@ -271,9 +212,6 @@ def update_block_info(self, block_text): # Emit screen change based on block selection self.block_selected_signal.emit(block_text) - - # After updating the UI, restore the state of toggle buttons for the selected block - #self.restore_block_state(block_text) #Updates block in failure based on block selection def update_block_in_2_based_on_block_in_1(self): @@ -312,6 +250,10 @@ class TrackModel_tb(QMainWindow): # Change signal to emit an int for ticket sales ticket_sales_signal = pyqtSignal(int) + + #signal to from get speed + Wayside_speed = pyqtSignal(Block) + Wayside_authority = pyqtSignal(Block) def __init__(self): super().__init__() @@ -472,20 +414,14 @@ def __init__(self): self.infra = None self.cumm_elevation = None - def set_heater(self): + def set_heater(self): #based on set temp pass # read Excel files from DataFrame def read_excel(self, filename): - #current_selection = self.line_select.currentText() - # Use an if statement to check the current selection and set the filename accordingly - #if num == 1: self.df = pd.read_excel("Track_Resources/Blue_Line_Block_Info.xlsx") - #elif num == 2: - # self.df = pd.read_excel("Track_Resources/red_line.xlsx") - #else: - # pass + self.df = pd.read_csv("Track_Resources/Blue_Line_Block_Info.csv") #extract data from DataFrame of the Excel and assign to variables self.elevation_data = self.df.set_index('Block Number')['ELEVATION (M)'].to_dict() @@ -612,31 +548,22 @@ def set_occupancies(self): def send_occupancies(self): pass - -# class Communicate(QObject): -# #object signals (mainly for failures inputs button) -# broken_rail_input_signal = pyqtSignal(str) -# track_input_signal = pyqtSignal(str) -# power_input_signal = pyqtSignal(str) -# ticket_sales_signal = pyqtSignal(int) -# light_input_signal = pyqtSignal(str) -# switch_input_signal = pyqtSignal(str) -# cross_input_signal = pyqtSignal(str) -# dropdown_broken_signal = pyqtSignal(str) +# class for fault table per block +class TrackFaultTable(QAbstractTableModel): + def __init__(self, data=None): + super().__init__() + self._data = [] + + # Call Main window if __name__ == "__main__": + app = QApplication(sys.argv) + window = TrackModelMain() window_2 = TrackModel_tb() - #Create an instance of Communicate - #communicator = Communicate() - - # connect the signal from window_2 to the slot in window - window_2.broken_rail_input_signal.connect(window.toggle_button_state_tb) - window_2.track_input_signal.connect(window.toggle_button_state_2_tb) - window_2.power_input_signal.connect(window.toggle_button_state_3_tb) window_2.dropdown_broken_signal.connect(window.update_main_dropdown) @@ -649,10 +576,6 @@ def send_occupancies(self): # Connect TrackModelMain's method to emit the grade to TestBench's slot to update the grade label window.grade_signal.connect(window_2.update_grade_label) - #window.SendTicketsales.connect("CTC/CTC_UI.py".MainWindow.update_grade_label) - - - window.block_selected_signal.connect(window_2.update_on_block_selection) window.show() window_2.show() diff --git a/Track_Model/Track_Layout..tmj b/Track_Model/Track_Layout..tmj deleted file mode 100644 index 0f49df81..00000000 --- a/Track_Model/Track_Layout..tmj +++ /dev/null @@ -1,60 +0,0 @@ -{ "compressionlevel":-1, - "height":20, - "infinite":false, - "layers":[ - { - "data":[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 472, 472, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 472, 472, 0, 0, 469, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 472, 472, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 472, 472, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 472, 472, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 469, 472, 472, 0, 472, 472, 0, 472, 472, 0, 472, 472, 0, 472, 472, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 472, 472, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 472, 472, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 472, 472, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 472, 472, 0, 0, 469, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 472, 472, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], - "height":20, - "id":1, - "name":"Tile Layer 1", - "opacity":1, - "type":"tilelayer", - "visible":true, - "width":30, - "x":0, - "y":0 - }], - "nextlayerid":2, - "nextobjectid":1, - "orientation":"orthogonal", - "renderorder":"right-down", - "tiledversion":"1.10.2", - "tileheight":32, - "tilesets":[ - { - "columns":31, - "firstgid":1, - "image":"..\/..\/..\/..\/..\/Downloads\/Blue_rectangle.png", - "imageheight":1000, - "imagewidth":1000, - "margin":0, - "name":"Blue_rectangle", - "spacing":0, - "tilecount":961, - "tileheight":32, - "tilewidth":32 - }], - "tilewidth":32, - "type":"map", - "version":"1.10", - "width":30 -} \ No newline at end of file diff --git a/Track_Model/Track_Layout.json b/Track_Model/Track_Layout.json deleted file mode 100644 index 8ad963d6..00000000 --- a/Track_Model/Track_Layout.json +++ /dev/null @@ -1,60 +0,0 @@ -{ "compressionlevel":-1, - "height":20, - "infinite":false, - "layers":[ - { - "data":[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 474, 0, 474, 0, 474, 0, 474, 0, 474, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 474, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], - "height":20, - "id":1, - "name":"Tile Layer 1", - "opacity":1, - "type":"tilelayer", - "visible":true, - "width":30, - "x":0, - "y":0 - }], - "nextlayerid":2, - "nextobjectid":1, - "orientation":"orthogonal", - "renderorder":"right-down", - "tiledversion":"1.10.2", - "tileheight":32, - "tilesets":[ - { - "columns":31, - "firstgid":1, - "image":"..\/..\/..\/..\/..\/Downloads\/Blue_rectangle.png", - "imageheight":1000, - "imagewidth":1000, - "margin":0, - "name":"Blue_rectangle", - "spacing":0, - "tilecount":961, - "tileheight":32, - "tilewidth":32 - }], - "tilewidth":32, - "type":"map", - "version":"1.10", - "width":30 -} \ No newline at end of file diff --git a/Track_Model/Track_Model.ui b/Track_Model/Track_Model.ui index 9d180393..2e088f57 100644 --- a/Track_Model/Track_Model.ui +++ b/Track_Model/Track_Model.ui @@ -6,3427 +6,1196 @@ 0 0 - 1017 - 1091 + 1016 + 1099 - - - 10 - 0 - - MainWindow - background-color: rgb(233, 247, 255); + background-color: rgb(233, 247, 255); + - - - - 450 - 20 - 191 - 41 - - - - false - - - background-color : rgb(38, 207, 4) - - - Upload Track Layout - - - - 974868-200.png974868-200.png - - - - - - 10 - 870 - 631 - 161 - - - - QGroupBox { - background-color: white; -} - - - - Failure Modes - - - - - - background-color: white; - - - - - Select Block - - - - - F16 - - - - - A1 - - - - - A2 - - - - - A3 - - - - - A4 - - - - - A5 - - - - - B6 - - - - - B7 - - - - - B8 - - - - - B9 - - - - - B10 - - - - - C11 - - - - - C12 - - - - - C13 - - - - - C14 - - - - - C15 - - - - - - - - background-color: rgb(white); - - - QFrame::Box - - - Broken Rail - - - - - - - - 0 - 0 - - - - - 221 - 23 - - - - background-color: rgb(white); - - - OFF - - - - - - - - 0 - 0 - - - - background-color: rgb(white); - - - QFrame::Box - - - Track Circuit Failure - - - - - - - - 0 - 0 - - - - - 221 - 23 - - - - background-color: rgb(white); - - - OFF - - - - - - - background-color: rgb(white); - - - QFrame::Box - - - Power Failure - - - - - - - - 0 - 0 - - - - - 221 - 23 - - - - background-color: rgb(white); - - - OFF - - - - - - - - - 670 - 130 - 311 - 511 - - - - QGroupBox { - background-color: white; -} - - - - Block Data - - - - - - - 0 - 0 - - - - - 64 - 25 - - - - background-color: rgb(white); - - - QFrame::Box - - - OFF - - - - - - - background-color: rgb(white); - - - QFrame::NoFrame - - - Underground: - - - - - - - background-color: rgb(white); - - - QFrame::Box - - - No - - - - - - - background-color: rgb(white); - - - QFrame::Box - - - -0.82021 - - - - - - - background-color: rgb(white); - - - QFrame::NoFrame - - - Occupied: - - - - - - - background-color: rgb(white); - - - QFrame::Box - - - 164.042 - - - - - - - background-color: rgb(white); - - - QFrame::Box - - - 80 - - - - - - - background-color: rgb(white); - - - QFrame::NoFrame - - - Railway Crossings: - - - - - - - background-color: rgb(white); - - - QFrame::NoFrame - - - Block Grade (%): - - - - - - - background-color: rgb(white); - - - QFrame::Box - - - F - - - - - - - background-color: rgb(white); - - - QFrame::NoFrame - - - Elevation (ft): - - - - - - - background-color: rgb(white); - - - QFrame::NoFrame - - - Temperature (°F): - - - - - - - background-color: rgb(white); - - - QFrame::Box - - - -0.5 - - - - - - - background-color: rgb(white); - - - QFrame::Box - - - 0.00 - - - - - - - - 0 - 0 - - - - - 64 - 25 - - - - background-color: rgb(white); - - - QFrame::Box - - - No - - - - - - - background-color: rgb(white); - - - QFrame::NoFrame - - - Block Number: - - - - - - - background-color: rgb(white); - - - QFrame::NoFrame - - - Section: - - - - - - - background-color: rgb(white); - - - QFrame::Box - - - 16 - - - - - - - background-color: rgb(white); - - - QFrame::Box - - - - - - - - - - background-color: rgb(white); - - - QFrame::NoFrame - - - Block Length (ft): - - - - - - - background-color: rgb(white); - - - QFrame::Box - - - 24.8548 - - - - - - - background-color: rgb(white); - - - QFrame::NoFrame - - - Speed Limit (mph): - - - - - - - background-color: rgb(white); - - - QFrame::NoFrame - - - Track Heaters: - - - - - - - background-color: rgb(white); - - - QFrame::NoFrame - - - Cummulative Elevation (ft): - - - - - - + - 670 - 660 - 311 - 201 + 0 + 10 + 1011 + 1041 - - QGroupBox { - background-color: white; -} - - - - Station Data + + 1 - - - - - background-color: rgb(white); - - - QFrame::NoFrame - - - Station Name: - - - - - - - background-color: rgb(white); - - - QFrame::Box - - - - - - - - - - background-color: rgb(white); - - - QFrame::NoFrame - - - Ticket Sales: - - - - - - - background-color: rgb(white); - - - QFrame::Box - - - - - - - - - - background-color: rgb(white); - - - QFrame::NoFrame - - - Passengers Boarding: - - - - - - - background-color: rgb(white); - - - QFrame::Box - - - - - - - - - - background-color: rgb(white); - - - QFrame::NoFrame - - - Passengers Disembarking: - - - - - - - background-color: rgb(white); - - - QFrame::Box - - - - - - - - - - - - 20 - 70 - 621 - 51 - - - - - - - background-color: white; - - - - - Select Block - - - - - F16 - - - - - A1 - - - - - A2 - - - - - A3 - - - - - A4 - - - - - A5 - - - - - B6 - - - - - B7 - - - - - B8 - - - - - B9 - - - - - B10 - - - - - C11 - - - - - C12 - - - - - C13 - - - - - C14 - - - - - C15 - - - - - - - - background-color: white; - - - - Select Line - - - - - Blue Line - - - - - Red Line - - - - - Green Line - - - - - - - - - - 10 - 790 - 631 - 71 - - - - QGroupBox { - background-color: white; -} - - - - Status - - - - - - background: white - - - QFrame::Box - - - - - - Qt::AlignCenter - - - - - - - background-color: white; - - - - - Switch Direction: - - - - - - - Qt::Vertical - - - - - - - background-color: white; - - - - - Lights: - - - - - - - Qt::LeftToRight - - - background: white - - - QFrame::Box - - - - - - Qt::AlignCenter - - - - - - - - - 20 - 130 - 621 - 651 - - - - - - - - - 380 - 80 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - A - - - - - - 410 - 70 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - A - - - - - - 430 - 50 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - A - - - - - - 440 - 30 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - B - - - - - - 460 - 10 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - B - - - - - - 480 - 10 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - B - - - - - - 520 - 10 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - C - - - - - - 550 - 20 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - C - - - - - - 570 - 40 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - C - - - - - - 560 - 60 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - D - - - - - - 550 - 80 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - D - - - - - - 520 - 100 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - D - - - - - - 490 - 100 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - E - - - - - - 430 - 100 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - E - - - - - - 460 - 100 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - E - - - - - - 400 - 100 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - F - - - - - - 370 - 100 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - F - - - - - - 350 - 100 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - F - - - - - - 330 - 100 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - F - - - - - - 310 - 100 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - F - - - - - - 290 - 110 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - G - - - - - - 270 - 120 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - G - - - - - - 250 - 130 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - G - - - - - - 250 - 310 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 450 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 270 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 390 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 290 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 230 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 330 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 350 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 170 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 190 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 210 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 410 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 370 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 430 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 150 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 250 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 470 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 490 - 21 - 21 - - - - Qt::WheelFocus - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 530 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 550 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 250 - 510 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 240 - 590 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - I - - - - - - 230 - 610 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - I - - - - - - 200 - 620 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - I - - - - - - 250 - 570 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - H - - - - - - 180 - 620 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - J - - - - - - 150 - 620 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - J - - - - - - 130 - 620 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - J - - - - - - 110 - 620 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - J - - - - - - 90 - 620 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - J - - - - - - 70 - 620 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - J - - - - - - 50 - 610 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - K - - - - - - 30 - 600 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - K - - - - - - 10 - 590 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - K - - - - - - 10 - 560 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - L - - - - - - 20 - 530 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - L - - - - - - 40 - 510 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - L - - - - - - 70 - 490 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - M - - - - - - 90 - 520 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - M - - - - - - 100 - 550 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - M - - - - - - 110 - 570 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - N - - - - - - 120 - 590 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - N - - - - - - 140 - 600 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - N - - - - - - 230 - 570 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - O - - - - - - 210 - 550 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - P - - - - - - 210 - 530 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - P - - - - - - 210 - 510 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - P - - - - - - 230 - 490 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - Q - - - - - - 230 - 310 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - R - - - - - - 210 - 290 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - S - - - - - - 210 - 270 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - S - - - - - - 210 - 250 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") - - - - S - - - - - - 230 - 230 - 21 - 21 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) - } -""") + + + Main Window + + + + + 670 + 640 + 311 + 201 + + + + QGroupBox { + background-color: white; +} - - - T - - - - - - 580 - 70 - 21 - 21 - - - - + + + Station Data + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Station Name: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Ticket Sales: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Passengers Boarding: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Passengers Disembarking: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + + + 670 + 860 + 311 + 151 + + + + QGroupBox { + background-color: white; +} + + + + Icons Guide + + + + + + Qt::NoFocus + + + QPushButton { border-style: solid; border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) + background-color: white; } """) - - - - - - - - - 580 - 100 - 21 - 21 - - - - + + + + + + + switch.pngswitch.png + + + + 30 + 30 + + + + + + + + background-color: white + + + + Railway Switch + + + + + + + Qt::NoFocus + + + QPushButton { border-style: solid; border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) + background-color: white; } """) - - - - - - - - - 570 - 130 - 21 - 21 - - - - + + + + + + + crossing.pngcrossing.png + + + + 30 + 30 + + + + + + + + background-color: white + + + + Railway Crossing + + + + + + + Qt::NoFocus + + + QPushButton { border-style: solid; border-width: 2px; - border-color: black; - background-color: rgb(255,0,0) + background-color: rbg(233, 247, 255); } """) - - - - - - - - - 40 - 480 - 21 - 21 - - - - Qt::NoFocus - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: rbg(233, 247, 255); - } -""") - - - - - - - - switch.pngswitch.png - - - - 23 - 23 - - - - - - - 200 - 600 - 21 - 21 - - - - Qt::NoFocus - - - - QPushButton { - border-style: solid; - border-width: 2px; - } -""") - - - - - - - - switch.pngswitch.png - - - - 23 - 23 - - - - - - - 260 - 610 - 21 - 21 - - - - Qt::NoFocus - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: rbg(233, 247, 255); - } -""") - - - - - - - - crossing.pngcrossing.png - - - - 23 - 23 - - - - - - - 280 - 570 - 21 - 21 - - - - Qt::NoFocus - - - - QPushButton { - border-style: solid; - border-width: 2px; - } -""") - - - - - - - - switch.pngswitch.png - - - - 23 - 23 - - - - - - - 280 - 310 - 21 - 21 - - - - Qt::NoFocus - - - - QPushButton { - border-style: solid; - border-width: 2px; - } -""") - - - - - - - - switch.pngswitch.png - - - - 23 - 23 - - - - - - - 280 - 190 - 21 - 21 - - - - Qt::NoFocus - - - - QPushButton { - border-style: solid; - border-width: 2px; - } -""") - - - - - - - - switch.pngswitch.png - - - - 23 - 23 - - - - - - - 400 - 120 - 21 - 21 - - - - Qt::NoFocus - - - - QPushButton { - border-style: solid; - border-width: 2px; - } -""") - - - - - - - - switch.pngswitch.png - - - - 23 - 23 - - - - - - - 590 - 40 - 21 - 21 - - - - Qt::NoFocus - - - - QPushButton { - border-style: solid; - border-width: 2px; - } -""") - - - - - - - - switch.pngswitch.png - - - - 23 - 23 - - - - - - - 530 - 80 - 21 - 21 - - - - Qt::NoFocus - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: rbg(233, 247, 255); - } -""") - - - - - - - - crossing.pngcrossing.png - - - - 23 - 23 - - - - - - - 280 - 490 - 21 - 21 - - - - Qt::NoFocus - - - - QPushButton { - border-style: solid; - border-width: 2px; - } -""") - - - - - - - - switch.pngswitch.png - - - - 23 - 23 - - - - - - - 0 - 0 - 621 - 651 - - - - - - + + + + + + + light.pnglight.png + + + + 40 + 30 + + + + + + + + background-color: white + + + + Track Lights + + + + + + - 330 - 30 - 16 - 16 + 450 + 0 + 191 + 41 + + false + - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(50,205,50) - } -""") - + background-color : rgb(38, 207, 4) - A + Upload Track Layout + + + + 974868-200.png974868-200.png - + - 340 + 10 50 - 16 - 16 - - - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(50,205,50) - } -""") - - - - A - + 631 + 51 + + + + + + + background-color: white; + + + + Select Line + + + + + Green Line + + + + + Red Line + + + + + + + + background-color: white; + + + + + Select Block + + + + + F16 + + + + + A1 + + + + + A2 + + + + + A3 + + + + + A4 + + + + + A5 + + + + + B6 + + + + + B7 + + + + + B8 + + + + + B9 + + + + + B10 + + + + + C11 + + + + + C12 + + + + + C13 + + + + + C14 + + + + + C15 + + + + + - + - 350 - 70 - 16 - 16 + 670 + 110 + 311 + 511 - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(50,205,50) - } -""") + QGroupBox { + background-color: white; +} - - A - + + Block Data + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Block Length (ft): + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Block Number: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Cummulative Elevation (ft): + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Railway Crossings: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Occupied: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Track Heaters: + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Underground: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Temperature (°F): + + + + + + + + 0 + 0 + + + + + 64 + 25 + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Block Grade (%): + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Section: + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Speed Limit (mph): + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + + 0 + 0 + + + + + 64 + 25 + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Elevation (ft): + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + - + - 370 - 80 - 16 - 16 + 10 + 850 + 631 + 161 - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(50,205,50) - } -""") + QGroupBox { + background-color: white; +} - - B - + + Failure Modes + + + + + + + 0 + 0 + + + + + 221 + 23 + + + + background-color: rgb(white); + + + Set + + + + + + + background-color: white; + + + + + Select Block + + + + + F16 + + + + + A1 + + + + + A2 + + + + + A3 + + + + + A4 + + + + + A5 + + + + + B6 + + + + + B7 + + + + + B8 + + + + + B9 + + + + + B10 + + + + + C11 + + + + + C12 + + + + + C13 + + + + + C14 + + + + + C15 + + + + + + + + + 0 + 0 + + + + + 221 + 23 + + + + background-color: rgb(white); + + + Set + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + Broken Rail + + + + + + + + 0 + 0 + + + + + 221 + 23 + + + + background-color: rgb(white); + + + Set + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + Power Failure + + + + + + + + 0 + 0 + + + + background-color: rgb(white); + + + QFrame::Box + + + Track Circuit Failure + + + + - + - 390 - 90 - 16 - 16 + 10 + 0 + 151 + 41 - - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(50,205,50) - } -""") - - - - B - - + - 410 - 90 - 16 - 16 + 10 + 770 + 631 + 71 - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(50,205,50) - } -""") + QGroupBox { + background-color: white; +} - - B + + Status + + + + + background-color: white; + + + + + Switch Direction: + + + + + + + background-color: white; + + + + + Lights: + + + + + + + Qt::LeftToRight + + + background: white + + + QFrame::Box + + + + + + Qt::AlignCenter + + + + + + + Qt::Vertical + + + + + + + background: white + + + QFrame::Box + + + + + + Qt::AlignCenter + + + + - + - 430 - 90 - 16 - 16 + 670 + 0 + 311 + 91 - - QPushButton { - border-style: solid; - border-width: 2px; - border-color: black; - background-color: rgb(50,205,50) - } -""") + QGroupBox { + background-color: white; +} - - C + + Temperature + + + + + background-color: rgb(white); + + + Set Temperature (°F): + + + + + + + background-color: rgb(white); + + + + - + + + true + - 440 - 70 - 16 - 16 + 10 + 110 + 631 + 651 - - + + + + + + + 330 + 30 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3435,22 +1204,22 @@ } """) - - - C - - - - - - 80 - 10 - 16 - 16 - - - - + + + A + + + + + + 340 + 50 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3459,22 +1228,22 @@ } """) - - - E - - - - - - 50 - 20 - 16 - 16 - - - - + + + A + + + + + + 350 + 70 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3483,22 +1252,22 @@ } """) - - - E - - - - - - 40 - 40 - 16 - 16 - - - - + + + A + + + + + + 370 + 80 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3507,22 +1276,22 @@ } """) - - - E - - - - - - 430 - 50 - 16 - 16 - - - - + + + B + + + + + + 390 + 90 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3531,22 +1300,22 @@ } """) - - - C - - - - - - 290 - 10 - 16 - 16 - - - - + + + B + + + + + + 410 + 90 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3555,22 +1324,22 @@ } """) - - - D - - - - - - 170 - 10 - 16 - 16 - - - - + + + B + + + + + + 430 + 90 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3579,22 +1348,22 @@ } """) - - - D - - - - - - 250 - 10 - 16 - 16 - - - - + + + C + + + + + + 440 + 70 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3603,22 +1372,22 @@ } """) - - - D - - - - - - 120 - 10 - 16 - 16 - - - - + + + C + + + + + + 80 + 10 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3627,22 +1396,22 @@ } """) - - - E - - - - - - 360 - 20 - 16 - 16 - - - - + + + E + + + + + + 50 + 20 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3651,22 +1420,22 @@ } """) - - - C - - - - - - 330 - 10 - 16 - 16 - - - - + + + E + + + + + + 40 + 40 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3675,22 +1444,22 @@ } """) - - - C - - - - - - 400 - 30 - 16 - 16 - - - - + + + E + + + + + + 430 + 50 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3699,22 +1468,22 @@ } """) - - - C - - - - - - 210 - 10 - 16 - 16 - - - - + + + C + + + + + + 290 + 10 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3723,22 +1492,22 @@ } """) - - - D - - - - - - 40 - 60 - 16 - 16 - - - - + + + D + + + + + + 170 + 10 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3747,22 +1516,22 @@ } """) - - - F - - - - - - 40 - 80 - 16 - 16 - - - - + + + D + + + + + + 250 + 10 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3771,22 +1540,22 @@ } """) - - - F - - - - - - 40 - 120 - 16 - 16 - - - - + + + D + + + + + + 120 + 10 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3795,22 +1564,22 @@ } """) - - - F - - - - - - 40 - 100 - 16 - 16 - - - - + + + E + + + + + + 360 + 20 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3819,22 +1588,22 @@ } """) - - - F - - - - - - 40 - 180 - 16 - 16 - - - - + + + C + + + + + + 330 + 10 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3843,22 +1612,22 @@ } """) - - - F - - - - - - 40 - 200 - 16 - 16 - - - - + + + C + + + + + + 400 + 30 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3867,22 +1636,22 @@ } """) - - - F - - - - - - 40 - 160 - 16 - 16 - - - - + + + C + + + + + + 210 + 10 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3891,22 +1660,46 @@ } """) - - - F - - - - - - 40 - 140 - 16 - 16 - - - - + + + D + + + + + + 40 + 60 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 80 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3915,22 +1708,22 @@ } """) - - - F - - - - - - 40 - 260 - 16 - 16 - - - - + + + F + + + + + + 40 + 120 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3939,22 +1732,22 @@ } """) - - - G - - - - - - 40 - 280 - 16 - 16 - - - - + + + F + + + + + + 40 + 100 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3963,22 +1756,22 @@ } """) - - - G - - - - - - 40 - 240 - 16 - 16 - - - - + + + F + + + + + + 40 + 180 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -3987,22 +1780,22 @@ } """) - - - G - - - - - - 40 - 220 - 16 - 16 - - - - + + + F + + + + + + 40 + 200 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4011,22 +1804,22 @@ } """) - - - G - - - - - - 40 - 300 - 16 - 16 - - - - + + + F + + + + + + 40 + 160 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4035,22 +1828,22 @@ } """) - - - H - - - - - - 60 - 310 - 16 - 16 - - - - + + + F + + + + + + 40 + 140 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4059,22 +1852,22 @@ } """) - - - H - - - - - - 80 - 310 - 16 - 16 - - - - + + + F + + + + + + 40 + 260 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4083,22 +1876,22 @@ } """) - - - H - - - - - - 100 - 310 - 16 - 16 - - - - + + + G + + + + + + 40 + 280 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4107,22 +1900,22 @@ } """) - - - I - - - - - - 120 - 310 - 16 - 16 - - - - + + + G + + + + + + 40 + 240 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4131,22 +1924,22 @@ } """) - - - I - - - - - - 140 - 310 - 16 - 16 - - - - + + + G + + + + + + 40 + 220 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4155,22 +1948,22 @@ } """) - - - I - - - - - - 160 - 310 - 16 - 16 - - - - + + + G + + + + + + 40 + 300 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4179,22 +1972,22 @@ } """) - - - I - - - - - - 180 - 310 - 16 - 16 - - - - + + + H + + + + + + 60 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4203,22 +1996,22 @@ } """) - - - I - - - - - - 200 - 310 - 16 - 16 - - - - + + + H + + + + + + 80 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4227,22 +2020,22 @@ } """) - - - I - - - - - - 220 - 310 - 16 - 16 - - - - + + + H + + + + + + 100 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4251,22 +2044,22 @@ } """) - - - I - - - - - - 240 - 310 - 16 - 16 - - - - + + + I + + + + + + 120 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4275,22 +2068,22 @@ } """) - - - I - - - - - - 260 - 310 - 16 - 16 - - - - + + + I + + + + + + 140 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4299,22 +2092,22 @@ } """) - - - I - - - - - - 280 - 310 - 16 - 16 - - - - + + + I + + + + + + 160 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4323,22 +2116,22 @@ } """) - - - I - - - - - - 440 - 310 - 16 - 16 - - - - + + + I + + + + + + 180 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4347,22 +2140,22 @@ } """) - - - I - - - - - - 340 - 310 - 16 - 16 - - - - + + + I + + + + + + 200 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4371,22 +2164,22 @@ } """) - - - I - - - - - - 320 - 310 - 16 - 16 - - - - + + + I + + + + + + 220 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4395,22 +2188,22 @@ } """) - - - I - - - - - - 420 - 310 - 16 - 16 - - - - + + + I + + + + + + 240 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4419,22 +2212,22 @@ } """) - - - I - - - - - - 360 - 310 - 16 - 16 - - - - + + + I + + + + + + 260 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4443,22 +2236,22 @@ } """) - - - I - - - - - - 400 - 310 - 16 - 16 - - - - + + + I + + + + + + 280 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4467,22 +2260,22 @@ } """) - - - I - - - - - - 480 - 310 - 16 - 16 - - - - + + + I + + + + + + 440 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4491,22 +2284,22 @@ } """) - - - I - - - - - - 380 - 310 - 16 - 16 - - - - + + + I + + + + + + 340 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4515,22 +2308,22 @@ } """) - - - I - - - - - - 300 - 310 - 16 - 16 - - - - + + + I + + + + + + 320 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4539,22 +2332,22 @@ } """) - - - I - - - - - - 460 - 310 - 16 - 16 - - - - + + + I + + + + + + 420 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4563,22 +2356,22 @@ } """) - - - I - - - - - - 500 - 310 - 16 - 16 - - - - + + + I + + + + + + 360 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4587,22 +2380,22 @@ } """) - - - I - - - - - - 520 - 310 - 16 - 16 - - - - + + + I + + + + + + 400 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4611,22 +2404,22 @@ } """) - - - I - - - - - - 540 - 310 - 16 - 16 - - - - + + + I + + + + + + 480 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4635,22 +2428,22 @@ } """) - - - J - - - - - - 560 - 310 - 16 - 16 - - - - + + + I + + + + + + 380 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4659,22 +2452,22 @@ } """) - - - J - - - - - - 580 - 320 - 16 - 16 - - - - + + + I + + + + + + 300 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4683,22 +2476,22 @@ } """) - - - J - - - - - - 600 - 330 - 16 - 16 - - - - + + + I + + + + + + 460 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4707,22 +2500,22 @@ } """) - - - J - - - - - - 600 - 350 - 16 - 16 - - - - + + + I + + + + + + 500 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4731,22 +2524,22 @@ } """) - - - J - - - - - - 600 - 370 - 16 - 16 - - - - + + + I + + + + + + 520 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4755,22 +2548,22 @@ } """) - - - K - - - - - - 600 - 390 - 16 - 16 - - - - + + + I + + + + + + 540 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4779,22 +2572,22 @@ } """) - - - K - - - - - - 600 - 410 - 16 - 16 - - - - + + + J + + + + + + 560 + 310 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4803,22 +2596,22 @@ } """) - - - K - - - - - - 600 - 430 - 16 - 16 - - - - + + + J + + + + + + 580 + 320 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4827,22 +2620,22 @@ } """) - - - K - - - - - - 600 - 450 - 16 - 16 - - - - + + + J + + + + + + 600 + 330 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4851,22 +2644,22 @@ } """) - - - K - - - - - - 600 - 470 - 16 - 16 - - - - + + + J + + + + + + 600 + 350 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4875,22 +2668,22 @@ } """) - - - K - - - - - - 600 - 490 - 16 - 16 - - - - + + + J + + + + + + 600 + 370 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4899,22 +2692,22 @@ } """) - - - L - - - - - - 600 - 510 - 16 - 16 - - - - + + + K + + + + + + 600 + 390 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4923,22 +2716,22 @@ } """) - - - L - - - - - - 590 - 540 - 16 - 16 - - - - + + + K + + + + + + 600 + 410 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4947,22 +2740,22 @@ } """) - - - L - - - - - - 560 - 560 - 16 - 16 - - - - + + + K + + + + + + 600 + 430 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4971,22 +2764,22 @@ } """) - - - L - - - - - - 510 - 560 - 16 - 16 - - - - + + + K + + + + + + 600 + 450 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -4995,22 +2788,22 @@ } """) - - - L - - - - - - 470 - 560 - 16 - 16 - - - - + + + K + + + + + + 600 + 470 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5019,22 +2812,22 @@ } """) - - - M - - - - - - 440 - 560 - 16 - 16 - - - - + + + K + + + + + + 600 + 490 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5043,22 +2836,22 @@ } """) - - - M - - - - - - 410 - 560 - 16 - 16 - - - - + + + L + + + + + + 600 + 510 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5067,22 +2860,22 @@ } """) - - - M - - - - - - 380 - 560 - 16 - 16 - - - - + + + L + + + + + + 590 + 540 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5091,22 +2884,22 @@ } """) - - - N - - - - - - 350 - 560 - 16 - 16 - - - - + + + L + + + + + + 560 + 560 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5115,22 +2908,22 @@ } """) - - - N - - - - - - 330 - 560 - 16 - 16 - - - - + + + L + + + + + + 510 + 560 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5139,22 +2932,22 @@ } """) - - - N - - - - - - 270 - 560 - 16 - 16 - - - - + + + L + + + + + + 470 + 560 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5163,22 +2956,22 @@ } """) - - - N - - - - - - 290 - 560 - 16 - 16 - - - - + + + M + + + + + + 440 + 560 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5187,22 +2980,22 @@ } """) - - - N - - - - - - 310 - 560 - 16 - 16 - - - - + + + M + + + + + + 410 + 560 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5211,22 +3004,22 @@ } """) - - - N - - - - - - 250 - 560 - 16 - 16 - - - - + + + M + + + + + + 380 + 560 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5235,22 +3028,22 @@ } """) - - - N - - - - - - 230 - 560 - 16 - 16 - - - - + + + N + + + + + + 350 + 560 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5259,22 +3052,22 @@ } """) - - - O - - - - - - 210 - 560 - 16 - 16 - - - - + + + N + + + + + + 330 + 560 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5283,22 +3076,22 @@ } """) - - - O - - - - - - 190 - 560 - 16 - 16 - - - - + + + N + + + + + + 270 + 560 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5307,22 +3100,22 @@ } """) - - - O - - - - - - 170 - 560 - 16 - 16 - - - - + + + N + + + + + + 290 + 560 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5331,22 +3124,22 @@ } """) - - - P - - - - - - 160 - 540 - 16 - 16 - - - - + + + N + + + + + + 310 + 560 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5355,22 +3148,22 @@ } """) - - - P - - - - - - 150 - 520 - 16 - 16 - - - - + + + N + + + + + + 250 + 560 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5379,22 +3172,22 @@ } """) - - - P - - - - - - 150 - 500 - 16 - 16 - - - - + + + N + + + + + + 230 + 560 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5403,22 +3196,22 @@ } """) - - - P - - - - - - 150 - 480 - 16 - 16 - - - - + + + O + + + + + + 210 + 560 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5427,22 +3220,22 @@ } """) - - - P - - - - - - 160 - 460 - 16 - 16 - - - - + + + O + + + + + + 190 + 560 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5451,22 +3244,22 @@ } """) - - - P - - - - - - 180 - 450 - 16 - 16 - - - - + + + O + + + + + + 170 + 560 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5475,22 +3268,22 @@ } """) - - - P - - - - - - 200 - 460 - 16 - 16 - - - - + + + P + + + + + + 160 + 540 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5499,22 +3292,22 @@ } """) - - - P - - - - - - 200 - 480 - 16 - 16 - - - - + + + P + + + + + + 150 + 520 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5523,22 +3316,22 @@ } """) - - - P - - - - - - 210 - 500 - 16 - 16 - - - - + + + P + + + + + + 150 + 500 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5547,22 +3340,22 @@ } """) - - - Q - - - - - - 220 - 520 - 16 - 16 - - - - + + + P + + + + + + 150 + 480 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5571,22 +3364,22 @@ } """) - - - Q - - - - - - 230 - 540 - 16 - 16 - - - - + + + P + + + + + + 160 + 460 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5595,22 +3388,22 @@ } """) - - - Q - - - - - - 390 - 540 - 16 - 16 - - - - + + + P + + + + + + 180 + 450 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5619,22 +3412,22 @@ } """) - - - R - - - - - - 410 - 530 - 16 - 16 - - - - + + + P + + + + + + 200 + 460 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5643,22 +3436,22 @@ } """) - - - S - - - - - - 430 - 530 - 16 - 16 - - - - + + + P + + + + + + 200 + 480 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5667,22 +3460,22 @@ } """) - - - S - - - - - - 460 - 530 - 16 - 16 - - - - + + + P + + + + + + 210 + 500 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5691,22 +3484,22 @@ } """) - - - S - - - - - - 480 - 530 - 16 - 16 - - - - + + + Q + + + + + + 220 + 520 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5715,22 +3508,22 @@ } """) - - - T - - - - - - 510 - 530 - 16 - 16 - - - - + + + Q + + + + + + 230 + 540 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5739,22 +3532,22 @@ } """) - - - T - - - - - - 530 - 530 - 16 - 16 - - - - + + + Q + + + + + + 390 + 540 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5763,22 +3556,22 @@ } """) - - - T - - - - - - 550 - 520 - 16 - 16 - - - - + + + R + + + + + + 410 + 530 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5787,22 +3580,22 @@ } """) - - - T - - - - - - 560 - 500 - 16 - 16 - - - - + + + S + + + + + + 430 + 530 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5811,22 +3604,22 @@ } """) - - - T - - - - - - 570 - 480 - 16 - 16 - - - - + + + S + + + + + + 460 + 530 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5835,22 +3628,22 @@ } """) - - - U - - - - - - 570 - 460 - 16 - 16 - - - - + + + S + + + + + + 480 + 530 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5859,22 +3652,22 @@ } """) - - - U - - - - - - 570 - 440 - 16 - 16 - - - - + + + T + + + + + + 510 + 530 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5883,22 +3676,22 @@ } """) - - - U - - - - - - 570 - 420 - 16 - 16 - - - - + + + T + + + + + + 530 + 530 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5907,22 +3700,22 @@ } """) - - - U - - - - - - 570 - 380 - 16 - 16 - - - - + + + T + + + + + + 550 + 520 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5931,22 +3724,22 @@ } """) - - - U - - - - - - 570 - 400 - 16 - 16 - - - - + + + T + + + + + + 560 + 500 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5955,22 +3748,22 @@ } """) - - - U - - - - - - 570 - 360 - 16 - 16 - - - - + + + T + + + + + + 570 + 480 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -5979,22 +3772,22 @@ } """) - - - U - - - - - - 560 - 340 - 16 - 16 - - - - + + + U + + + + + + 570 + 460 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6003,22 +3796,22 @@ } """) - - - V - - - - - - 540 - 340 - 16 - 16 - - - - + + + U + + + + + + 570 + 440 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6027,22 +3820,22 @@ } """) - - - V - - - - - - 520 - 340 - 16 - 16 - - - - + + + U + + + + + + 570 + 420 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6051,22 +3844,22 @@ } """) - - - V - - - - - - 460 - 340 - 16 - 16 - - - - + + + U + + + + + + 570 + 380 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6075,22 +3868,22 @@ } """) - - - V - - - - - - 480 - 340 - 16 - 16 - - - - + + + U + + + + + + 570 + 400 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6099,22 +3892,22 @@ } """) - - - V - - - - - - 500 - 340 - 16 - 16 - - - - + + + U + + + + + + 570 + 360 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6123,22 +3916,22 @@ } """) - - - V - - - - - - 360 - 340 - 16 - 16 - - - - + + + U + + + + + + 560 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6147,22 +3940,22 @@ } """) - - - W - - - - - - 80 - 340 - 16 - 16 - - - - + + + V + + + + + + 540 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6171,22 +3964,22 @@ } """) - - - W - - - - - - 140 - 340 - 16 - 16 - - - - + + + V + + + + + + 520 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6195,22 +3988,22 @@ } """) - - - W - - - - - - 340 - 340 - 16 - 16 - - - - + + + V + + + + + + 460 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6219,22 +4012,22 @@ } """) - - - W - - - - - - 220 - 340 - 16 - 16 - - - - + + + V + + + + + + 480 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6243,22 +4036,22 @@ } """) - - - W - - - - - - 400 - 340 - 16 - 16 - - - - + + + V + + + + + + 500 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6267,22 +4060,22 @@ } """) - - - W - - - - - - 420 - 340 - 16 - 16 - - - - + + + V + + + + + + 360 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6291,22 +4084,22 @@ } """) - - - W - - - - - - 200 - 340 - 16 - 16 - - - - + + + W + + + + + + 80 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6315,22 +4108,22 @@ } """) - - - W - - - - - - 160 - 340 - 16 - 16 - - - - + + + W + + + + + + 140 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6339,22 +4132,22 @@ } """) - - - W - - - - - - 120 - 340 - 16 - 16 - - - - + + + W + + + + + + 340 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6363,22 +4156,22 @@ } """) - - - W - - - - - - 240 - 340 - 16 - 16 - - - - + + + W + + + + + + 220 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6387,22 +4180,22 @@ } """) - - - W - - - - - - 60 - 340 - 16 - 16 - - - - + + + W + + + + + + 400 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6411,22 +4204,22 @@ } """) - - - W - - - - - - 180 - 340 - 16 - 16 - - - - + + + W + + + + + + 420 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6435,22 +4228,22 @@ } """) - - - W - - - - - - 320 - 340 - 16 - 16 - - - - + + + W + + + + + + 200 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6459,22 +4252,22 @@ } """) - - - W - - - - - - 260 - 340 - 16 - 16 - - - - + + + W + + + + + + 160 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6483,22 +4276,22 @@ } """) - - - W - - - - - - 300 - 340 - 16 - 16 - - - - + + + W + + + + + + 120 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6507,22 +4300,22 @@ } """) - - - W - - - - - - 100 - 340 - 16 - 16 - - - - + + + W + + + + + + 240 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6531,22 +4324,22 @@ } """) - - - W - - - - - - 440 - 340 - 16 - 16 - - - - + + + W + + + + + + 60 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6555,22 +4348,22 @@ } """) - - - W - - - - - - 380 - 340 - 16 - 16 - - - - + + + W + + + + + + 180 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6579,22 +4372,22 @@ } """) - - - W - - - - - - 280 - 340 - 16 - 16 - - - - + + + W + + + + + + 320 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6603,22 +4396,22 @@ } """) - - - W - - - - - - 40 - 340 - 16 - 16 - - - - + + + W + + + + + + 260 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6627,22 +4420,22 @@ } """) - - - W - - - - - - 20 - 340 - 16 - 16 - - - - + + + W + + + + + + 300 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6651,22 +4444,22 @@ } """) - - - W - - - - - - 0 - 330 - 16 - 16 - - - - + + + W + + + + + + 100 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6675,22 +4468,22 @@ } """) - - - X - - - - - - 0 - 310 - 16 - 16 - - - - + + + W + + + + + + 440 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6699,22 +4492,22 @@ } """) - - - X - - - - - - 0 - 290 - 16 - 16 - - - - + + + W + + + + + + 380 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6723,22 +4516,22 @@ } """) - - - X - - - - - - 0 - 270 - 16 - 16 - - - - + + + W + + + + + + 280 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6747,22 +4540,22 @@ } """) - - - Y - - - - - - 0 - 250 - 16 - 16 - - - - + + + W + + + + + + 40 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6771,22 +4564,22 @@ } """) - - - Y - - - - - - 0 - 230 - 16 - 16 - - - - + + + W + + + + + + 20 + 340 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6795,22 +4588,22 @@ } """) - - - Y - - - - - - 20 - 210 - 16 - 16 - - - - + + + W + + + + + + 0 + 330 + 16 + 16 + + + + QPushButton { border-style: solid; border-width: 2px; @@ -6819,236 +4612,198 @@ } """) - - - Z - - - - - - - - 670 - 880 - 311 - 151 - - - - QGroupBox { - background-color: white; -} - - - - Icons Guide - - - - - - Qt::NoFocus + + + X + + + + + + 0 + 310 + 16 + 16 + QPushButton { border-style: solid; border-width: 2px; - background-color: white; + border-color: black; + background-color: rgb(50,205,50) } """) - - - - - switch.pngswitch.png - - - - 30 - 30 - + X - - - + + + + 0 + 290 + 16 + 16 + + - background-color: white + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") - Railway Switch + X - - - - - Qt::NoFocus + + + + 0 + 270 + 16 + 16 + QPushButton { border-style: solid; border-width: 2px; - background-color: white; + border-color: black; + background-color: rgb(50,205,50) } """) - - - - - crossing.pngcrossing.png - - - - 30 - 30 - + Y - - - + + + + 0 + 250 + 16 + 16 + + - background-color: white + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") - Railway Crossing + Y - - - - - Qt::NoFocus + + + + 0 + 230 + 16 + 16 + QPushButton { border-style: solid; border-width: 2px; - background-color: rbg(233, 247, 255); + border-color: black; + background-color: rgb(50,205,50) } """) - - - - - light.pnglight.png - - - - 40 - 30 - + Y - - - - - background-color: white - + + + + 20 + 210 + 16 + 16 + - - Track Lights - - - - - - - - - 20 - 20 - 151 - 41 - - - - - - - 670 - 20 - 311 - 91 - - - - QGroupBox { - background-color: white; -} - - - - Temperature - - - - - background-color: rgb(white); + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + - Set Temperature (°F): + Z - - - - - background-color: rgb(white); + + + + + Fault List + + + + + 10 + 10 + 991 + 991 + + + + Green Line + + + + + 10 + 20 + 971 + 961 + - - + + - layoutWidget - groupBox - groupBox_2 - groupBox_3 - groupBox_4 - pushButton - red_line - groupBox_6 - clock_in - groupBox_8 0 0 - 1017 + 1016 22 - - - - 974868-200.png974868-200.png - - - Upload Track Layout - - diff --git a/Track_Model/Track_Model_test.ui b/Track_Model/Track_Model_test.ui new file mode 100644 index 00000000..af32731f --- /dev/null +++ b/Track_Model/Track_Model_test.ui @@ -0,0 +1,7062 @@ + + + MainWindow + + + + 0 + 0 + 1017 + 1091 + + + + MainWindow + + + background-color: rgb(233, 247, 255); + + + + + + 0 + 0 + 1011 + 1041 + + + + 0 + + + + Tab 1 + + + + + 670 + 640 + 311 + 201 + + + + QGroupBox { + background-color: white; +} + + + + Station Data + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Station Name: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Ticket Sales: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Passengers Boarding: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Passengers Disembarking: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + + + 670 + 860 + 311 + 151 + + + + QGroupBox { + background-color: white; +} + + + + Icons Guide + + + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + background-color: white; + } +""") + + + + + + + + switch.pngswitch.png + + + + 30 + 30 + + + + + + + + background-color: white + + + + Railway Switch + + + + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + background-color: white; + } +""") + + + + + + + + crossing.pngcrossing.png + + + + 30 + 30 + + + + + + + + background-color: white + + + + Railway Crossing + + + + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + background-color: rbg(233, 247, 255); + } +""") + + + + + + + + light.pnglight.png + + + + 40 + 30 + + + + + + + + background-color: white + + + + Track Lights + + + + + + + + + 450 + 0 + 191 + 41 + + + + false + + + background-color : rgb(38, 207, 4) + + + Upload Track Layout + + + + 974868-200.png974868-200.png + + + + + + 20 + 50 + 621 + 51 + + + + + + + background-color: white; + + + + + Select Block + + + + + F16 + + + + + A1 + + + + + A2 + + + + + A3 + + + + + A4 + + + + + A5 + + + + + B6 + + + + + B7 + + + + + B8 + + + + + B9 + + + + + B10 + + + + + C11 + + + + + C12 + + + + + C13 + + + + + C14 + + + + + C15 + + + + + + + + background-color: white; + + + + Select Line + + + + + Blue Line + + + + + Red Line + + + + + Green Line + + + + + + + + + + 670 + 110 + 311 + 511 + + + + QGroupBox { + background-color: white; +} + + + + Block Data + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Occupied: + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Section: + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Block Length (ft): + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Track Heaters: + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Elevation (ft): + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + F + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Block Number: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + 80 + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Cummulative Elevation (ft): + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + 164.042 + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + -0.5 + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + 24.8548 + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + -0.82021 + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + 16 + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + No + + + + + + + + 0 + 0 + + + + + 64 + 25 + + + + background-color: rgb(white); + + + QFrame::Box + + + No + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Speed Limit (mph): + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + 0.00 + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Underground: + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Temperature (°F): + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Railway Crossings: + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Block Grade (%): + + + + + + + + 0 + 0 + + + + + 64 + 25 + + + + background-color: rgb(white); + + + QFrame::Box + + + OFF + + + + + + + + + 20 + 110 + 621 + 651 + + + + + + + + + 380 + 80 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + A + + + + + + 410 + 70 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + A + + + + + + 430 + 50 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + A + + + + + + 440 + 30 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + B + + + + + + 460 + 10 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + B + + + + + + 480 + 10 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + B + + + + + + 520 + 10 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + C + + + + + + 550 + 20 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + C + + + + + + 570 + 40 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + C + + + + + + 560 + 60 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + D + + + + + + 550 + 80 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + D + + + + + + 520 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + D + + + + + + 490 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + E + + + + + + 430 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + E + + + + + + 460 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + E + + + + + + 400 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + F + + + + + + 370 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + F + + + + + + 350 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + F + + + + + + 330 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + F + + + + + + 310 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + F + + + + + + 290 + 110 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + G + + + + + + 270 + 120 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + G + + + + + + 250 + 130 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + G + + + + + + 250 + 310 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 450 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 270 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 390 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 290 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 230 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 330 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 350 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 170 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 190 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 210 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 410 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 370 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 430 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 150 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 250 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 470 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 490 + 21 + 21 + + + + Qt::WheelFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 530 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 550 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 510 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 240 + 590 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + I + + + + + + 230 + 610 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + I + + + + + + 200 + 620 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + I + + + + + + 250 + 570 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 180 + 620 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + J + + + + + + 150 + 620 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + J + + + + + + 130 + 620 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + J + + + + + + 110 + 620 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + J + + + + + + 90 + 620 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + J + + + + + + 70 + 620 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + J + + + + + + 50 + 610 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + K + + + + + + 30 + 600 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + K + + + + + + 10 + 590 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + K + + + + + + 10 + 560 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + L + + + + + + 20 + 530 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + L + + + + + + 40 + 510 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + L + + + + + + 70 + 490 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + M + + + + + + 90 + 520 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + M + + + + + + 100 + 550 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + M + + + + + + 110 + 570 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + N + + + + + + 120 + 590 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + N + + + + + + 140 + 600 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + N + + + + + + 230 + 570 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + O + + + + + + 210 + 550 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + P + + + + + + 210 + 530 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + P + + + + + + 210 + 510 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + P + + + + + + 230 + 490 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + Q + + + + + + 230 + 310 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + R + + + + + + 210 + 290 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + S + + + + + + 210 + 270 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + S + + + + + + 210 + 250 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + S + + + + + + 230 + 230 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + T + + + + + + 580 + 70 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + + + + + + + 580 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + + + + + + + 570 + 130 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + + + + + + + 40 + 480 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: rbg(233, 247, 255); + } +""") + + + + + + + + switch.pngswitch.png + + + + 23 + 23 + + + + + + + 200 + 600 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + } +""") + + + + + + + + switch.pngswitch.png + + + + 23 + 23 + + + + + + + 260 + 610 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: rbg(233, 247, 255); + } +""") + + + + + + + + crossing.pngcrossing.png + + + + 23 + 23 + + + + + + + 280 + 570 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + } +""") + + + + + + + + switch.pngswitch.png + + + + 23 + 23 + + + + + + + 280 + 310 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + } +""") + + + + + + + + switch.pngswitch.png + + + + 23 + 23 + + + + + + + 280 + 190 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + } +""") + + + + + + + + switch.pngswitch.png + + + + 23 + 23 + + + + + + + 400 + 120 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + } +""") + + + + + + + + switch.pngswitch.png + + + + 23 + 23 + + + + + + + 590 + 40 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + } +""") + + + + + + + + switch.pngswitch.png + + + + 23 + 23 + + + + + + + 530 + 80 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: rbg(233, 247, 255); + } +""") + + + + + + + + crossing.pngcrossing.png + + + + 23 + 23 + + + + + + + 280 + 490 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + } +""") + + + + + + + + switch.pngswitch.png + + + + 23 + 23 + + + + + + + 0 + 0 + 621 + 651 + + + + + + + + + 330 + 30 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + A + + + + + + 340 + 50 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + A + + + + + + 350 + 70 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + A + + + + + + 370 + 80 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + B + + + + + + 390 + 90 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + B + + + + + + 410 + 90 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + B + + + + + + 430 + 90 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 440 + 70 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 80 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + E + + + + + + 50 + 20 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + E + + + + + + 40 + 40 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + E + + + + + + 430 + 50 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 290 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + D + + + + + + 170 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + D + + + + + + 250 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + D + + + + + + 120 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + E + + + + + + 360 + 20 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 330 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 400 + 30 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 210 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + D + + + + + + 40 + 60 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 80 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 120 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 100 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 180 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 200 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 160 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 140 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 260 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + G + + + + + + 40 + 280 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + G + + + + + + 40 + 240 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + G + + + + + + 40 + 220 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + G + + + + + + 40 + 300 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + H + + + + + + 60 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + H + + + + + + 80 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + H + + + + + + 100 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 120 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 140 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 160 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 180 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 200 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 220 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 240 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 260 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 280 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 440 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 340 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 320 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 420 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 360 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 400 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 480 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 380 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 300 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 460 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 500 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 520 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 540 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + J + + + + + + 560 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + J + + + + + + 580 + 320 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + J + + + + + + 600 + 330 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + J + + + + + + 600 + 350 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + J + + + + + + 600 + 370 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 390 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 410 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 430 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 450 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 470 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 490 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + L + + + + + + 600 + 510 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + L + + + + + + 590 + 540 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + L + + + + + + 560 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + L + + + + + + 510 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + L + + + + + + 470 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + M + + + + + + 440 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + M + + + + + + 410 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + M + + + + + + 380 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 350 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 330 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 270 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 290 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 310 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 250 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 230 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + O + + + + + + 210 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + O + + + + + + 190 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + O + + + + + + 170 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 160 + 540 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 150 + 520 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 150 + 500 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 150 + 480 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 160 + 460 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 180 + 450 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 200 + 460 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 200 + 480 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 210 + 500 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Q + + + + + + 220 + 520 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Q + + + + + + 230 + 540 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Q + + + + + + 390 + 540 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + R + + + + + + 410 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + S + + + + + + 430 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + S + + + + + + 460 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + S + + + + + + 480 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + T + + + + + + 510 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + T + + + + + + 530 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + T + + + + + + 550 + 520 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + T + + + + + + 560 + 500 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + T + + + + + + 570 + 480 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 460 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 440 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 420 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 380 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 400 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 360 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 560 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 540 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 520 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 460 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 480 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 500 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 360 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 80 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 140 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 340 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 220 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 400 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 420 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 200 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 160 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 120 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 240 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 60 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 180 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 320 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 260 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 300 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 100 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 440 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 380 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 280 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 40 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 20 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 0 + 330 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + X + + + + + + 0 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + X + + + + + + 0 + 290 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + X + + + + + + 0 + 270 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Y + + + + + + 0 + 250 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Y + + + + + + 0 + 230 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Y + + + + + + 20 + 210 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Z + + + + + + + + 10 + 850 + 631 + 161 + + + + QGroupBox { + background-color: white; +} + + + + Failure Modes + + + + + + background-color: white; + + + + + Select Block + + + + + F16 + + + + + A1 + + + + + A2 + + + + + A3 + + + + + A4 + + + + + A5 + + + + + B6 + + + + + B7 + + + + + B8 + + + + + B9 + + + + + B10 + + + + + C11 + + + + + C12 + + + + + C13 + + + + + C14 + + + + + C15 + + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + Broken Rail + + + + + + + + 0 + 0 + + + + + 221 + 23 + + + + background-color: rgb(white); + + + Set + + + + + + + + 0 + 0 + + + + background-color: rgb(white); + + + QFrame::Box + + + Track Circuit Failure + + + + + + + + 0 + 0 + + + + + 221 + 23 + + + + background-color: rgb(white); + + + Set + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + Power Failure + + + + + + + + 0 + 0 + + + + + 221 + 23 + + + + background-color: rgb(white); + + + Set + + + + + + + + + 20 + 0 + 151 + 41 + + + + + + + 10 + 770 + 631 + 71 + + + + QGroupBox { + background-color: white; +} + + + + Status + + + + + + background: white + + + QFrame::Box + + + + + + Qt::AlignCenter + + + + + + + background-color: white; + + + + + Switch Direction: + + + + + + + Qt::Vertical + + + + + + + background-color: white; + + + + + Lights: + + + + + + + Qt::LeftToRight + + + background: white + + + QFrame::Box + + + + + + Qt::AlignCenter + + + + + + + + + 670 + 0 + 311 + 91 + + + + QGroupBox { + background-color: white; +} + + + + Temperature + + + + + + background-color: rgb(white); + + + Set Temperature (°F): + + + + + + + background-color: rgb(white); + + + + + + + + + Tab 2 + + + + + + + + 0 + 0 + 1017 + 22 + + + + + + + + 974868-200.png974868-200.png + + + Upload Track Layout + + + + + + diff --git a/Track_Model/Track_Model_with_red.ui b/Track_Model/Track_Model_with_red.ui new file mode 100644 index 00000000..0f5c1761 --- /dev/null +++ b/Track_Model/Track_Model_with_red.ui @@ -0,0 +1,7105 @@ + + + MainWindow + + + + 0 + 0 + 1016 + 1099 + + + + MainWindow + + + background-color: rgb(233, 247, 255); + + + + + + + 0 + 10 + 1011 + 1041 + + + + 0 + + + + Main Window + + + + + 670 + 640 + 311 + 201 + + + + QGroupBox { + background-color: white; +} + + + + Station Data + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Station Name: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Ticket Sales: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Passengers Boarding: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Passengers Disembarking: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + + + 670 + 860 + 311 + 151 + + + + QGroupBox { + background-color: white; +} + + + + Icons Guide + + + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + background-color: white; + } +""") + + + + + + + + switch.pngswitch.png + + + + 30 + 30 + + + + + + + + background-color: white + + + + Railway Switch + + + + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + background-color: white; + } +""") + + + + + + + + crossing.pngcrossing.png + + + + 30 + 30 + + + + + + + + background-color: white + + + + Railway Crossing + + + + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + background-color: rbg(233, 247, 255); + } +""") + + + + + + + + light.pnglight.png + + + + 40 + 30 + + + + + + + + background-color: white + + + + Track Lights + + + + + + + + + 450 + 0 + 191 + 41 + + + + false + + + background-color : rgb(38, 207, 4) + + + Upload Track Layout + + + + 974868-200.png974868-200.png + + + + + + 20 + 50 + 621 + 51 + + + + + + + background-color: white; + + + + Select Line + + + + + Green Line + + + + + Red Line + + + + + + + + background-color: white; + + + + + Select Block + + + + + F16 + + + + + A1 + + + + + A2 + + + + + A3 + + + + + A4 + + + + + A5 + + + + + B6 + + + + + B7 + + + + + B8 + + + + + B9 + + + + + B10 + + + + + C11 + + + + + C12 + + + + + C13 + + + + + C14 + + + + + C15 + + + + + + + + + + 670 + 110 + 311 + 511 + + + + QGroupBox { + background-color: white; +} + + + + Block Data + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Block Length (ft): + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Block Number: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Cummulative Elevation (ft): + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Railway Crossings: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Occupied: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Track Heaters: + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Underground: + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Temperature (°F): + + + + + + + + 0 + 0 + + + + + 64 + 25 + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Block Grade (%): + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Section: + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Speed Limit (mph): + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + + 0 + 0 + + + + + 64 + 25 + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + background-color: rgb(white); + + + QFrame::NoFrame + + + Elevation (ft): + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + + + + + + + + + + 20 + 110 + 621 + 651 + + + + + + + + + 380 + 80 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + A + + + + + + 410 + 70 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + A + + + + + + 430 + 50 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + A + + + + + + 440 + 30 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + B + + + + + + 460 + 10 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + B + + + + + + 480 + 10 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + B + + + + + + 520 + 10 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + C + + + + + + 550 + 20 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + C + + + + + + 570 + 40 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + C + + + + + + 560 + 60 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + D + + + + + + 550 + 80 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + D + + + + + + 520 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + D + + + + + + 490 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + E + + + + + + 430 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + E + + + + + + 460 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + E + + + + + + 400 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + F + + + + + + 370 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + F + + + + + + 350 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + F + + + + + + 330 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + F + + + + + + 310 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + F + + + + + + 290 + 110 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + G + + + + + + 270 + 120 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + G + + + + + + 250 + 130 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + G + + + + + + 250 + 310 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 450 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 270 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 390 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 290 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 230 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 330 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 350 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 170 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 190 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 210 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 410 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 370 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 430 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 150 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 250 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 470 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 490 + 21 + 21 + + + + Qt::WheelFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 530 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 550 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 250 + 510 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 240 + 590 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + I + + + + + + 230 + 610 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + I + + + + + + 200 + 620 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + I + + + + + + 250 + 570 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + H + + + + + + 180 + 620 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + J + + + + + + 150 + 620 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + J + + + + + + 130 + 620 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + J + + + + + + 110 + 620 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + J + + + + + + 90 + 620 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + J + + + + + + 70 + 620 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + J + + + + + + 50 + 610 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + K + + + + + + 30 + 600 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + K + + + + + + 10 + 590 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + K + + + + + + 10 + 560 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + L + + + + + + 20 + 530 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + L + + + + + + 40 + 510 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + L + + + + + + 70 + 490 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + M + + + + + + 90 + 520 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + M + + + + + + 100 + 550 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + M + + + + + + 110 + 570 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + N + + + + + + 120 + 590 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + N + + + + + + 140 + 600 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + N + + + + + + 230 + 570 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + O + + + + + + 210 + 550 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + P + + + + + + 210 + 530 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + P + + + + + + 210 + 510 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + P + + + + + + 230 + 490 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + Q + + + + + + 230 + 310 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + R + + + + + + 210 + 290 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + S + + + + + + 210 + 270 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + S + + + + + + 210 + 250 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + S + + + + + + 230 + 230 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + T + + + + + + 580 + 70 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + + + + + + + 580 + 100 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + + + + + + + 570 + 130 + 21 + 21 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(255,0,0) + } +""") + + + + + + + + + + 40 + 480 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: rbg(233, 247, 255); + } +""") + + + + + + + + switch.pngswitch.png + + + + 23 + 23 + + + + + + + 200 + 600 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + } +""") + + + + + + + + switch.pngswitch.png + + + + 23 + 23 + + + + + + + 260 + 610 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: rbg(233, 247, 255); + } +""") + + + + + + + + crossing.pngcrossing.png + + + + 23 + 23 + + + + + + + 280 + 570 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + } +""") + + + + + + + + switch.pngswitch.png + + + + 23 + 23 + + + + + + + 280 + 310 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + } +""") + + + + + + + + switch.pngswitch.png + + + + 23 + 23 + + + + + + + 280 + 190 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + } +""") + + + + + + + + switch.pngswitch.png + + + + 23 + 23 + + + + + + + 400 + 120 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + } +""") + + + + + + + + switch.pngswitch.png + + + + 23 + 23 + + + + + + + 590 + 40 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + } +""") + + + + + + + + switch.pngswitch.png + + + + 23 + 23 + + + + + + + 530 + 80 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: rbg(233, 247, 255); + } +""") + + + + + + + + crossing.pngcrossing.png + + + + 23 + 23 + + + + + + + 280 + 490 + 21 + 21 + + + + Qt::NoFocus + + + + QPushButton { + border-style: solid; + border-width: 2px; + } +""") + + + + + + + + switch.pngswitch.png + + + + 23 + 23 + + + + + + true + + + + 0 + 0 + 621 + 651 + + + + + + + + + 330 + 30 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + A + + + + + + 340 + 50 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + A + + + + + + 350 + 70 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + A + + + + + + 370 + 80 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + B + + + + + + 390 + 90 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + B + + + + + + 410 + 90 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + B + + + + + + 430 + 90 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 440 + 70 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 80 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + E + + + + + + 50 + 20 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + E + + + + + + 40 + 40 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + E + + + + + + 430 + 50 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 290 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + D + + + + + + 170 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + D + + + + + + 250 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + D + + + + + + 120 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + E + + + + + + 360 + 20 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 330 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 400 + 30 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + C + + + + + + 210 + 10 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + D + + + + + + 40 + 60 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 80 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 120 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 100 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 180 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 200 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 160 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 140 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + F + + + + + + 40 + 260 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + G + + + + + + 40 + 280 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + G + + + + + + 40 + 240 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + G + + + + + + 40 + 220 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + G + + + + + + 40 + 300 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + H + + + + + + 60 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + H + + + + + + 80 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + H + + + + + + 100 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 120 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 140 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 160 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 180 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 200 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 220 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 240 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 260 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 280 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 440 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 340 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 320 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 420 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 360 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 400 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 480 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 380 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 300 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 460 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 500 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 520 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + I + + + + + + 540 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + J + + + + + + 560 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + J + + + + + + 580 + 320 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + J + + + + + + 600 + 330 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + J + + + + + + 600 + 350 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + J + + + + + + 600 + 370 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 390 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 410 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 430 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 450 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 470 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + K + + + + + + 600 + 490 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + L + + + + + + 600 + 510 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + L + + + + + + 590 + 540 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + L + + + + + + 560 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + L + + + + + + 510 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + L + + + + + + 470 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + M + + + + + + 440 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + M + + + + + + 410 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + M + + + + + + 380 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 350 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 330 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 270 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 290 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 310 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 250 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + N + + + + + + 230 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + O + + + + + + 210 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + O + + + + + + 190 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + O + + + + + + 170 + 560 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 160 + 540 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 150 + 520 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 150 + 500 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 150 + 480 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 160 + 460 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 180 + 450 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 200 + 460 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 200 + 480 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + P + + + + + + 210 + 500 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Q + + + + + + 220 + 520 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Q + + + + + + 230 + 540 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Q + + + + + + 390 + 540 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + R + + + + + + 410 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + S + + + + + + 430 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + S + + + + + + 460 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + S + + + + + + 480 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + T + + + + + + 510 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + T + + + + + + 530 + 530 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + T + + + + + + 550 + 520 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + T + + + + + + 560 + 500 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + T + + + + + + 570 + 480 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 460 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 440 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 420 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 380 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 400 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 570 + 360 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + U + + + + + + 560 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 540 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 520 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 460 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 480 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 500 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + V + + + + + + 360 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 80 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 140 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 340 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 220 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 400 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 420 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 200 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 160 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 120 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 240 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 60 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 180 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 320 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 260 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 300 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 100 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 440 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 380 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 280 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 40 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 20 + 340 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + W + + + + + + 0 + 330 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + X + + + + + + 0 + 310 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + X + + + + + + 0 + 290 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + X + + + + + + 0 + 270 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Y + + + + + + 0 + 250 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Y + + + + + + 0 + 230 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Y + + + + + + 20 + 210 + 16 + 16 + + + + + QPushButton { + border-style: solid; + border-width: 2px; + border-color: black; + background-color: rgb(50,205,50) + } +""") + + + + Z + + + + + + + + 10 + 850 + 631 + 161 + + + + QGroupBox { + background-color: white; +} + + + + Failure Modes + + + + + + + 0 + 0 + + + + + 221 + 23 + + + + background-color: rgb(white); + + + Set + + + + + + + background-color: white; + + + + + Select Block + + + + + F16 + + + + + A1 + + + + + A2 + + + + + A3 + + + + + A4 + + + + + A5 + + + + + B6 + + + + + B7 + + + + + B8 + + + + + B9 + + + + + B10 + + + + + C11 + + + + + C12 + + + + + C13 + + + + + C14 + + + + + C15 + + + + + + + + + 0 + 0 + + + + + 221 + 23 + + + + background-color: rgb(white); + + + Set + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + Broken Rail + + + + + + + + 0 + 0 + + + + + 221 + 23 + + + + background-color: rgb(white); + + + Set + + + + + + + background-color: rgb(white); + + + QFrame::Box + + + Power Failure + + + + + + + + 0 + 0 + + + + background-color: rgb(white); + + + QFrame::Box + + + Track Circuit Failure + + + + + + + + + 20 + 0 + 151 + 41 + + + + + + + 10 + 770 + 631 + 71 + + + + QGroupBox { + background-color: white; +} + + + + Status + + + + + + background-color: white; + + + + + Switch Direction: + + + + + + + background-color: white; + + + + + Lights: + + + + + + + Qt::LeftToRight + + + background: white + + + QFrame::Box + + + + + + Qt::AlignCenter + + + + + + + Qt::Vertical + + + + + + + background: white + + + QFrame::Box + + + + + + Qt::AlignCenter + + + + + + + + + 670 + 0 + 311 + 91 + + + + QGroupBox { + background-color: white; +} + + + + Temperature + + + + + + background-color: rgb(white); + + + Set Temperature (°F): + + + + + + + background-color: rgb(white); + + + + + + + + + Fault List + + + + + 10 + 10 + 991 + 991 + + + + Green Line + + + + + 10 + 20 + 981 + 951 + + + + + New Row + + + + + New Row + + + + + New Row + + + + + New Column + + + + + New Column + + + + + New Column + + + + + + + + + + + 0 + 0 + 1016 + 22 + + + + + + + + diff --git a/Track_Model/__pycache__/TrackModel.cpython-39.pyc b/Track_Model/__pycache__/TrackModel.cpython-39.pyc index 6e8715c5fc878bcf66736823f137250dfeb0c265..62c7d5c3221d80836b1b2e6b8f36dd900194d041 100644 GIT binary patch delta 5176 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 HP>bvT+wjLk literal 16268 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 diff --git a/Wayside_SW/__pycache__/WaysideSWandTB.cpython-39.pyc b/Wayside_SW/__pycache__/WaysideSWandTB.cpython-39.pyc index b5d07748f28a599fd57d4246ce393e0935731f3a..99fb1dd61c538fa489d5a89a717ff23f71788164 100644 GIT binary patch delta 4741 zcmbVO3vgUj8NTP%2J9{V!+67(gW1W)CQ?l^pLLJB+-PWdU#S^BTcfbcS_pM^a#l{ z%PS-$Q;a0hB8fI7lO$FoDV?Y5YPDZa_SnNl!>brvKoO4De?-6oK}n?SRmY$Qq_o)de#bQ1TApRJ zfT0=Lyo=hf+eT(&ew2FD89oI4OL2EIZ)7E&C}IIlbI zF>*3~gbl-`x=g)JA*Jf*Qzt1S1LqO7IJG3-K<)XMkJ?7T=cLpHuAnKE5FM7f{Iaw7 z=2VN&x4QZ^*WhxOZ+H0)m+y4>E|>3i`4ukT10MVTLRYZT?eH0wzbN%tG2z87e@XsQ zy&81pb9xPJyRg168=)_1h4ZVdh!s67XTxN#H^15nyJMR3YbZ0dM?|(rcTxT_#|F{O zMCXJ-Vj7DSZAEl@5#3otcNfvc@}463$|8F48CsXNNQp(8u3vP`;9fInul4_!6>M+d zOSw6fN(8S4ga{HozL}ai4*=DJR|24#3jl%u!G=La2ok=zD$sENEX~yb76J|d4g&4~ z*nry!Xw2oHbL)WX0apMv01Uu(z%XD3AW1-jz5x0vz!pFs;EMpAfTKG{caH8nMKHt& z&irH|y!2tL2~USRXj5*DWm!hD=*;L+r8FrYkjFigEhaLNUXh*xFM#bi^ zy3hU~u(JFgJ{J_qLJIp`B(y<%8*AgJYu=G$GqGv8$kr80ms?eR6E};n1ye zE>`fE#>jS#o!GBsj9p_Jl4gcuHx*Q{?fs(ZD3pv1W-=0ok#J^bfF*tTFLd$`wfHuLR_3YBg5Q>QyfbF)#B{uLW!YS!iIs*~g;G zS=(J?x}YV~V-uOp8&((8p^;J3;P*i4GmXq;>A`IyhRz=*!7-Jeu*=H2)VqoKmA#?t zmlaPF#ea&+-8gnw72sY@g7Pj z8EVNLlrNbC3k5BV#ATLB`zTR=?$ge$LtngZMj z5RNv3@&l#;BAFsMltOL;4gjbWh9!<7$?qT#?%i2^ffs=;WV26KU*#$JHPMtYySDD` zoS5)+5;&d+CtATi4|oB9DlF3Dg*-?3kAygG*`>gDtR_gads=+ez{ z9Is=QUKb^ns?!rbE>Vw$td}J8Qg$RMh3_H0H1E?r_#am2LBD7GYLfZ$0bR`p@iKRx zGogI=u%vr;%KTZ}5f+sbaOc$LBaROh0oudF`+c8EX#GGQdnJA(9AU7pS#bRASz3in; zwGA(k<7NYK64h&;9HZLnqraC$h(i62uyT8_>7r&_LX-h1PmhT+@gHNG=sM1PAb&`TB#P%8nqU!pD5=a z)v9Lemfp;0y=krFRb4zw1m7pP-kyHB_d@zs_A9;Z%Xtn`Wp#T8pcBvq=uTAf8!<{m zqk;M|0bNg6&2_lB`h(oaOz`w(ZkQ%*g>OM$ie(ooUI^JsniK4s_QvK7@%x~QPK@b; z8AGh!mJCrQf5QGj^Z9X+Wf3o)Uh_BbNA~IF1I?#NMvvVOpu#CEXhWmB#1u|Flxbo3 z>(Hvqey}ATM@dR}#M;q|5dQKXLH#C9sP{u6L$dv0%hWR0@<&h#%O!)fO|P8DoWt<( z)`gWthPfZJ7McAg8Cf9P|7e}*!ZqL=9QD&%ZG}_vQ9ufT%(m4#@Lt+DsvAxLEeO~C zMcPHO{e0WqeSaY`;pZR2lqfwO%!h+k@S3AMLotmw^>!-|?D?htvj(wX<{W z_b|T-eF#0Dwhwexd$I3$&VIDBzD=m+*X!%hc+XfbDD)WQC18C3KfAqaS);h^#4Qj< z?@j`DZTV9W%rAjTg;82zC%cZv=T|`H!87)8obA@`^O<4ybvNbS!RU7Ze+L8s34n+% zB-{Y2feHZjgT?mYSZt2f;z%b)1~_Ktalm_!iJdH9{vf|kig&4pSw%(UqwZ?k delta 3498 zcmZ`*ZE#f88NO$~vf1qB3-YlEm>3es8uA?y!iNf>wy_Y91XEKmZuVZ1T{gSn?8bm> zTq$CQ>QLZ}#UK2*L9E77g|0&@*rK)$wXH>J>(ncBTBkE@{m~!o*v`}+?faa2*<{iP zbD#TuopYY^zVCfEmk<3jo*(r2JPQ5$+f)D5o_XYAeu=xlNveY$J3R@vU9`Ce?aDV5 z@r?Wabkd{dq?E{#Bes+>ymV9{ERk3`s;KU>>=*^^WooYKe9}#EOSdRT7{!!Ht7n0= zoFdA$D0`ZwS&BvSPq0KWy$h^&;R(j?pokK^D8*(NQ`Edvnhh84{}&m{X<18l*;lM( zcw^ZBMU-Zjxl*+11lzxwD033Rs zO**nd2Gm-Hx&`{m$SUctxBLNXgS#xf!O~Y-dZVQ`S$eajw^(|srMFpny4^B#ScWx` zPI+LLrLWbyRUhQ!IyL_Yo3^P1({_3sDVx4NWluR~Y|~V_$Oe65%4V%usozbRDLgBa zOujYxJ?0)Hubd}W>-VIyj=(%e!#ufhp4>c7o^NlRXK$Y;FS{+PO1}~)>U->t!QjC} zSk;F62b-lRKJvcChQx8-L*ho^v(9bQp)tVdMs=Qt@ZiwouN zm7FArpCT~WRKUft8Glxs@~`wi2eBv%lGI^RFJ*4{9jx0tb|T0V8Xe0g$zv2Hw3ymI zp@qW1=;mlVv@gM*!UjWtqXe@yB9LEsr!!8<)l5g_X_oGTb34I(9ApB;e1cv^ZaC31 zriJzqb&iN{0lonb-B1g1ej0{jfF}V7z@r3)k8a(cJQ&sb$22X;55VylAO(0FA?|2! zM2il$w(@g1qzCLo>w)C~=YCSIXVT06&eHNIZ)lQpEtc$!soDV^!FtI94EZeJ5rDkk zFrCXz%G)U$x+0e%3|W9F?H(juAR--F{k;2at)* zpOu*b9-gR;YVwkXdjv)An;hruSl3HHJ@qu?SHzXNE+@LACiCyQS{8a0Rup_T&rF!) zFR4p%b6h1&$?LmVlkF%p6AZ5ain1UZb&AxKczo5X^*DlG09*q65U?QlAlZ&maG8kK ze`ohaL}1nb6T{8TR+7yp`)Ltkiym@_)*crR2hN*}-I&bQY|hm^Gm7fiXX7cF#(BDTM!_$W?la$!e7%6|wDgG1-m*s}pyNOHH-jpW+Y)#VgD!{@m2J8)OW} zNIV{uLy%t~o&N+d2*5DrhXHZGegM97^CnY}(4ib1#L*cX)#7geu8QN$%U66GqU`%F zk~Yzks3maQ-Aw+sd4uBp<}y~C`D^o0wtXl0hHRTUcs~hzKx&)2hHRVH($hU;-`v{5 zcfo4!X>9|v13Ca}0%iO`tdh*#kiI6~Xsu#VakI6X?GvSKTm4Bg8%2{7YA~tEs`V#H zO7LUiP+Of}ezTIX>_JHzyImKrx1CJ?n52M*U&GGmWWybbkIQVE1L=J@K}GIvxH|~B4d4f~6WneYJN#l^Zoksi^q?z~^eLRlXh zzX=(~VHSwb*443YQMtZ8{U+>h0p14q00DqZ#w|!5z=wd30rJa2Pja*cNA);z&ygUG z)A^@>p8@7dJvRg1A;&dF{ajAH^!EA+_Kvuffuz#p_pDir VzLTTaCNRowe$7_O$jl;S3IK9)5_tds delta 67 zcmaDX@K}I1k(ZZ?0SI2U{ZHMykyn6)QD(9n%PdCw$vauv7@a3Ou=X&z14*UH?^&}L Vy(dSpO< Date: Mon, 25 Mar 2024 15:08:30 -0400 Subject: [PATCH 3/3] ticket sales works ish --- CTC/__pycache__/CTC_UI.cpython-39.pyc | Bin 8989 -> 8989 bytes Track_Model/Track_Model.ui | 2 +- .../__pycache__/TrackModel.cpython-39.pyc | Bin 14255 -> 15026 bytes 3 files changed, 1 insertion(+), 1 deletion(-) diff --git a/CTC/__pycache__/CTC_UI.cpython-39.pyc b/CTC/__pycache__/CTC_UI.cpython-39.pyc index e29cd47580604b3db5a510c380f0c8e74ffc2120..34a1298c4416abb542f05cff711439923a214c83 100644 GIT binary patch delta 21 bcmbR1HrI_Ok(ZZ?0SF$=WlY=1Bd81jJY)qg delta 21 bcmbR1HrI_Ok(ZZ?0SI>0|4-e>Bd81jKtToO diff --git a/Track_Model/Track_Model.ui b/Track_Model/Track_Model.ui index 2e088f57..df6fe31e 100644 --- a/Track_Model/Track_Model.ui +++ b/Track_Model/Track_Model.ui @@ -28,7 +28,7 @@ - 1 + 0 diff --git a/Track_Model/__pycache__/TrackModel.cpython-39.pyc b/Track_Model/__pycache__/TrackModel.cpython-39.pyc index 62c7d5c3221d80836b1b2e6b8f36dd900194d041..f1cd76c03741d86a9bb3e9655f6791f2b04dd7f8 100644 GIT binary patch delta 5491 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 delta 4813 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