from org.csstudio.display.builder.runtime.script import PVUtil import pickle import sys try: from ipts_items.data import ProposalInfo pickled = PVUtil.getString(pvs[0], True) proposals = pickle.loads(pickled) data = [] for prop in proposals: row = [ str(prop.proposal_id), prop.title.decode('utf-8'), prop.startdate, prop.members.decode('utf-8') ] data.append(row) # Clear selection to prevent selecting same row in changed data widget.setSelection(list()) widget.setValue(data) except: widget.setValue([ [ "-", "Only available at beam line\n" + str(sys.exc_info()[1]), "-", "-" ]])