Skip to content

Commit 59ea297

Browse files
authored
Merge fa05ccd into e71916d
2 parents e71916d + fa05ccd commit 59ea297

2 files changed

Lines changed: 51 additions & 1 deletion

File tree

source/globalCommands.py

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -312,6 +312,35 @@ def script_dateTime(self,gesture):
312312
text=winKernel.GetDateFormatEx(winKernel.LOCALE_NAME_USER_DEFAULT, winKernel.DATE_LONGDATE, None, None)
313313
ui.message(text)
314314

315+
@script(
316+
# Translators: Input help mode message for set the first value in the synth ring setting.
317+
description=_("Set the first value of the current setting in the synth settings ring"),
318+
category=SCRCAT_SPEECH,
319+
gestures=("kb(desktop):NVDA+control+home", "kb(laptop):NVDA+shift+control+home")
320+
)
321+
def script_FirstValueSynthRing(self,gesture):
322+
settingName=globalVars.settingsRing.currentSettingName
323+
if not settingName:
324+
# Translators: Reported when there are no settings to configure in synth settings ring (example: when there is no setting for language).
325+
ui.message(_("No settings"))
326+
return
327+
settingValue=globalVars.settingsRing.first()
328+
ui.message("%s %s" % (settingName,settingValue))
329+
330+
@script(
331+
# Translators: Input help mode message for set the last value in the synth ring settings.
332+
description=_("Set the last value of the current setting in the synth settings ring"),
333+
category=SCRCAT_SPEECH,
334+
gestures=("kb(desktop):NVDA+control+end", "kb(laptop):NVDA+shift+control+end")
335+
)
336+
def script_LastValueSynthRing(self,gesture):
337+
settingName=globalVars.settingsRing.currentSettingName
338+
if not settingName:
339+
ui.message(_("No settings"))
340+
return
341+
settingValue=globalVars.settingsRing.last()
342+
ui.message("%s %s" % (settingName,settingValue))
343+
315344
@script(
316345
# Translators: Input help mode message for increase synth setting value command.
317346
description=_("Increases the currently active setting in the synth settings ring"),
@@ -321,7 +350,6 @@ def script_dateTime(self,gesture):
321350
def script_increaseSynthSetting(self,gesture):
322351
settingName=globalVars.settingsRing.currentSettingName
323352
if not settingName:
324-
# Translators: Reported when there are no settings to configure in synth settings ring (example: when there is no setting for language).
325353
ui.message(_("No settings"))
326354
return
327355
settingValue=globalVars.settingsRing.increase()

source/synthSettingsRing.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,16 @@ def __init__(self,synth,setting,min=0,max=100):
1414
self.max = setting.maxVal if isinstance(setting, NumericDriverSetting) else max
1515
self.step = setting.normalStep if isinstance(setting, NumericDriverSetting) else 1
1616

17+
def first(self):
18+
val = self.min
19+
self.value = val
20+
return self._getReportValue(val)
21+
22+
def last(self):
23+
val = self.max
24+
self.value = val
25+
return self._getReportValue(val)
26+
1727
def increase(self):
1828
val = min(self.max,self.value+self.step)
1929
self.value = val
@@ -124,6 +134,18 @@ def previous(self):
124134
return self.currentSettingName
125135
return None
126136

137+
def first(self):
138+
""" set the current setting to the first value """
139+
if self._current is not None:
140+
return self.settings[self._current].first()
141+
return None
142+
143+
def last(self):
144+
""" set the current setting to the last value """
145+
if self._current is not None:
146+
return self.settings[self._current].last()
147+
return None
148+
127149
def increase(self):
128150
""" increases the currentSetting and returns its new value """
129151
if self._current is not None:

0 commit comments

Comments
 (0)