Mini Shell
import pyatspi
import orca.script_utilities as script_utilities
class Utilities(script_utilities.Utilities):
def __init__(self, script):
"""Creates an instance of the Utilities class.
Arguments:
- script: the script with which this instance is associated.
"""
script_utilities.Utilities.__init__(self, script)
def _formatDuration(self, s):
seconds = '%02d' % (s%60)
minutes = '%02d' % (s/60)
hours = '%02d' % (s/3600)
duration = [minutes, seconds]
if hours != '00':
duration.insert(0, hours)
return ':'.join(duration)
def isSeekSlider(self, obj):
return bool(pyatspi.findAncestor(
obj, lambda x: x.getRole() == pyatspi.ROLE_TOOL_BAR))
def textForValue(self, obj):
if not self.isSeekSlider(obj):
return script_utilities.Utilities.textForValue(self, obj)
try:
value = obj.queryValue()
except NotImplementedError:
return script_utilities.Utilities.textForValue(self, obj)
else:
return self._formatDuration(int(value.currentValue)/1000)