Imported CSS files
This commit is contained in:
80
epics/css/sys-mng-opi/CSS/scripts/Timer2.py
Normal file
80
epics/css/sys-mng-opi/CSS/scripts/Timer2.py
Normal file
@@ -0,0 +1,80 @@
|
||||
from org.csstudio.opibuilder.scriptUtil import PVUtil, ConsoleUtil, ColorFontUtil
|
||||
from java.lang import Thread, Runnable
|
||||
|
||||
startButton2 = display.getWidget("Start_Button2")
|
||||
stopButton2 = display.getWidget("Stop_Button2")
|
||||
resetButton2 = display.getWidget("Reset_Button2")
|
||||
|
||||
bar2 = display.getWidget("Progress_Bar2")
|
||||
startb2 = display.getWidget("Start_Boolean_Button_1")
|
||||
|
||||
hourText2 = display.getWidget("hourText2")
|
||||
hourPV2=hourText2.getPV()
|
||||
minText2 = display.getWidget("minText2")
|
||||
minPV2=minText2.getPV()
|
||||
secText2 = display.getWidget("secText2")
|
||||
secPV2=secText2.getPV()
|
||||
|
||||
timerLabel2 = display.getWidget("timerLabel2")
|
||||
|
||||
|
||||
class Timer2(Runnable):
|
||||
def run(self):
|
||||
startButton2.setEnabled(True)
|
||||
stopButton2.setEnabled(True)
|
||||
resetButton2.setEnabled(True)
|
||||
|
||||
hourText2.setEnabled(True)
|
||||
minText2.setEnabled(True)
|
||||
secText2.setEnabled(True)
|
||||
hour2 = 0
|
||||
min2 = 30
|
||||
sec2 = 0
|
||||
timerLabel2.setPropertyValue("foreground_color", ColorFontUtil.BLACK)
|
||||
timerLabel2.setPropertyValue("text", "Timer")
|
||||
stopped=False
|
||||
total2 = hour2*3600+min2*60+sec2
|
||||
for i in range(total2,-1,-1):
|
||||
if not display.isActive():
|
||||
return
|
||||
if PVUtil.getLong(pvs[0])==0:
|
||||
stopped = True
|
||||
break
|
||||
pvs[1].setValue(100-100*i/total2)
|
||||
hourPV2.setValue(int(i/3600))
|
||||
minPV2.setValue(int(i%3600/60))
|
||||
secPV2.setValue(int(i%60))
|
||||
Thread.sleep(1000)
|
||||
|
||||
timerLabel2.setPropertyValue("foreground_color", ColorFontUtil.BLACK)
|
||||
if stopped:
|
||||
bar2.getPV().setValue(0)
|
||||
timerLabel2.setPropertyValue("text", "Stopped!")
|
||||
if PVUtil.getDouble(pvs[3]) == 1:
|
||||
pvs[0].setValue(1)
|
||||
else:
|
||||
pvs[0].setValue(0)
|
||||
hourPV2.setValue(hour2)
|
||||
minPV2.setValue(min2)
|
||||
secPV2.setValue(sec2)
|
||||
else:
|
||||
bar2.getPV().setValue(0)
|
||||
pvs[0].setValue(0)
|
||||
timerLabel2.setPropertyValue("text", "Timeout!")
|
||||
widget.executeAction(0)
|
||||
hourPV2.setValue(hour2)
|
||||
minPV2.setValue(min2)
|
||||
secPV2.setValue(sec2)
|
||||
pvs[2].setValue(0)
|
||||
|
||||
startButton2.setEnabled(True)
|
||||
stopButton2.setEnabled(True)
|
||||
resetButton2.setEnabled(True)
|
||||
|
||||
hourText2.setEnabled(True)
|
||||
minText2.setEnabled(True)
|
||||
secText2.setEnabled(True)
|
||||
|
||||
if PVUtil.getLong(pvs[0])==1:
|
||||
thread =Thread(Timer2());
|
||||
thread.start()
|
||||
Reference in New Issue
Block a user