Fix a bunch of DeprecationWarnings due to invalid escape sequences

Fixes #1454.
This commit is contained in:
Scott Talbert
2022-01-10 23:53:32 -05:00
parent 77fa6cf8cc
commit 2871c46d33
12 changed files with 67 additions and 67 deletions

View File

@@ -245,7 +245,7 @@ class dataview_Tests(wtc.WidgetTestCase):
return 10 return 10
def GetValueByRow(self, row, col): def GetValueByRow(self, row, col):
return 'value(%d, %d)' (row, col) return 'value(%d, %d)' % (row, col)
def SetValueByRow(self, value, row, col): def SetValueByRow(self, value, row, col):
return True return True

View File

@@ -337,8 +337,8 @@ class lib_pubsub_TopicMgr2_GetOrCreate_DefnProv(wtc.PubsubTestCase):
class lib_pubsub_TopicMgr3_TreeTraverser(wtc.PubsubTestCase): class lib_pubsub_TopicMgr3_TreeTraverser(wtc.PubsubTestCase):
expectedOutput = '''\ expectedOutput = \
\-- Topic "a2" r'''\-- Topic "a2"
\-- Topic "a" \-- Topic "a"
\-- Topic "a" \-- Topic "a"
\-- Topic "b" \-- Topic "b"

View File

@@ -796,7 +796,7 @@ class FindFiles:
if ch == "*": if ch == "*":
f = f + ".*" f = f + ".*"
elif ch == ".": elif ch == ".":
f = f + "\." f = f + r"\."
elif ch == "?": elif ch == "?":
f = f + "." f = f + "."
else: else:

View File

@@ -112,7 +112,7 @@ class IpAddrCtrl( BaseMaskedTextCtrl, IpAddrCtrlAccessorsMixin ):
if 'formatcodes' not in kwargs: if 'formatcodes' not in kwargs:
kwargs['formatcodes'] = 'F_Sr<>' kwargs['formatcodes'] = 'F_Sr<>'
if 'validRegex' not in kwargs: if 'validRegex' not in kwargs:
kwargs['validRegex'] = "( \d| \d\d|(1\d\d|2[0-4]\d|25[0-5]))(\.( \d| \d\d|(1\d\d|2[0-4]\d|25[0-5]))){3}" kwargs['validRegex'] = r"( \d| \d\d|(1\d\d|2[0-4]\d|25[0-5]))(\.( \d| \d\d|(1\d\d|2[0-4]\d|25[0-5]))){3}"
BaseMaskedTextCtrl.__init__( BaseMaskedTextCtrl.__init__(
@@ -127,7 +127,7 @@ class IpAddrCtrl( BaseMaskedTextCtrl, IpAddrCtrlAccessorsMixin ):
# set up individual field parameters as well: # set up individual field parameters as well:
field_params = {} field_params = {}
field_params['validRegex'] = "( | \d| \d |\d | \d\d|\d\d |\d \d|(1\d\d|2[0-4]\d|25[0-5]))" field_params['validRegex'] = r"( | \d| \d |\d | \d\d|\d\d |\d \d|(1\d\d|2[0-4]\d|25[0-5]))"
# require "valid" string; this prevents entry of any value > 255, but allows # require "valid" string; this prevents entry of any value > 255, but allows
# intermediate constructions; overall control validation requires well-formatted value. # intermediate constructions; overall control validation requires well-formatted value.

View File

@@ -906,7 +906,7 @@ charmonths_dict = {'jan': 1, 'feb': 2, 'mar': 3, 'apr': 4, 'may': 5, 'jun': 6,
'jul': 7, 'aug': 8, 'sep': 9, 'oct': 10, 'nov': 11, 'dec': 12} 'jul': 7, 'aug': 8, 'sep': 9, 'oct': 10, 'nov': 11, 'dec': 12}
days = '(01|02|03|04|05|06|07|08|09|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31)' days = '(01|02|03|04|05|06|07|08|09|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31)'
hours = '(0\d| \d|1[012])' hours = r'(0\d| \d|1[012])'
milhours = '(00|01|02|03|04|05|06|07|08|09|10|11|12|13|14|15|16|17|18|19|20|21|22|23)' milhours = '(00|01|02|03|04|05|06|07|08|09|10|11|12|13|14|15|16|17|18|19|20|21|22|23)'
minutes = """(00|01|02|03|04|05|06|07|08|09|10|11|12|13|14|15|\ minutes = """(00|01|02|03|04|05|06|07|08|09|10|11|12|13|14|15|\
16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31|32|33|34|35|\ 16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31|32|33|34|35|\
@@ -943,25 +943,25 @@ masktags = {
"USPHONEFULLEXT": { "USPHONEFULLEXT": {
'mask': "(###) ###-#### x:###", 'mask': "(###) ###-#### x:###",
'formatcodes': 'F^->', 'formatcodes': 'F^->',
'validRegex': "^\(\d{3}\) \d{3}-\d{4}", 'validRegex': r"^\(\d{3}\) \d{3}-\d{4}",
'description': "Phone Number w/opt. ext" 'description': "Phone Number w/opt. ext"
}, },
"USPHONETIGHTEXT": { "USPHONETIGHTEXT": {
'mask': "###-###-#### x:###", 'mask': "###-###-#### x:###",
'formatcodes': 'F^->', 'formatcodes': 'F^->',
'validRegex': "^\d{3}-\d{3}-\d{4}", 'validRegex': r"^\d{3}-\d{3}-\d{4}",
'description': "Phone Number\n (w/hyphens and opt. ext)" 'description': "Phone Number\n (w/hyphens and opt. ext)"
}, },
"USPHONEFULL": { "USPHONEFULL": {
'mask': "(###) ###-####", 'mask': "(###) ###-####",
'formatcodes': 'F^->', 'formatcodes': 'F^->',
'validRegex': "^\(\d{3}\) \d{3}-\d{4}", 'validRegex': r"^\(\d{3}\) \d{3}-\d{4}",
'description': "Phone Number only" 'description': "Phone Number only"
}, },
"USPHONETIGHT": { "USPHONETIGHT": {
'mask': "###-###-####", 'mask': "###-###-####",
'formatcodes': 'F^->', 'formatcodes': 'F^->',
'validRegex': "^\d{3}-\d{3}-\d{4}", 'validRegex': r"^\d{3}-\d{3}-\d{4}",
'description': "Phone Number\n(w/hyphens)" 'description': "Phone Number\n(w/hyphens)"
}, },
"USSTATE": { "USSTATE": {
@@ -985,107 +985,107 @@ masktags = {
'mask': "##/##/#### ##:##:## AM", 'mask': "##/##/#### ##:##:## AM",
'excludeChars': am_pm_exclude, 'excludeChars': am_pm_exclude,
'formatcodes': 'DF!', 'formatcodes': 'DF!',
'validRegex': '^' + months + '/' + days + '/' + '\d{4} ' + hours + ':' + minutes + ':' + seconds + ' (A|P)M', 'validRegex': '^' + months + '/' + days + '/' + r'\d{4} ' + hours + ':' + minutes + ':' + seconds + ' (A|P)M',
'description': "US Date + Time" 'description': "US Date + Time"
}, },
"USDATETIMEMMDDYYYY-HHMMSS": { "USDATETIMEMMDDYYYY-HHMMSS": {
'mask': "##-##-#### ##:##:## AM", 'mask': "##-##-#### ##:##:## AM",
'excludeChars': am_pm_exclude, 'excludeChars': am_pm_exclude,
'formatcodes': 'DF!', 'formatcodes': 'DF!',
'validRegex': '^' + months + '-' + days + '-' + '\d{4} ' + hours + ':' + minutes + ':' + seconds + ' (A|P)M', 'validRegex': '^' + months + '-' + days + '-' + r'\d{4} ' + hours + ':' + minutes + ':' + seconds + ' (A|P)M',
'description': "US Date + Time\n(w/hyphens)" 'description': "US Date + Time\n(w/hyphens)"
}, },
"USDATE24HRTIMEMMDDYYYY/HHMMSS": { "USDATE24HRTIMEMMDDYYYY/HHMMSS": {
'mask': "##/##/#### ##:##:##", 'mask': "##/##/#### ##:##:##",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + months + '/' + days + '/' + '\d{4} ' + milhours + ':' + minutes + ':' + seconds, 'validRegex': '^' + months + '/' + days + '/' + r'\d{4} ' + milhours + ':' + minutes + ':' + seconds,
'description': "US Date + 24Hr (Military) Time" 'description': "US Date + 24Hr (Military) Time"
}, },
"USDATE24HRTIMEMMDDYYYY-HHMMSS": { "USDATE24HRTIMEMMDDYYYY-HHMMSS": {
'mask': "##-##-#### ##:##:##", 'mask': "##-##-#### ##:##:##",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + months + '-' + days + '-' + '\d{4} ' + milhours + ':' + minutes + ':' + seconds, 'validRegex': '^' + months + '-' + days + '-' + r'\d{4} ' + milhours + ':' + minutes + ':' + seconds,
'description': "US Date + 24Hr Time\n(w/hyphens)" 'description': "US Date + 24Hr Time\n(w/hyphens)"
}, },
"USDATETIMEMMDDYYYY/HHMM": { "USDATETIMEMMDDYYYY/HHMM": {
'mask': "##/##/#### ##:## AM", 'mask': "##/##/#### ##:## AM",
'excludeChars': am_pm_exclude, 'excludeChars': am_pm_exclude,
'formatcodes': 'DF!', 'formatcodes': 'DF!',
'validRegex': '^' + months + '/' + days + '/' + '\d{4} ' + hours + ':' + minutes + ' (A|P)M', 'validRegex': '^' + months + '/' + days + '/' + r'\d{4} ' + hours + ':' + minutes + ' (A|P)M',
'description': "US Date + Time\n(without seconds)" 'description': "US Date + Time\n(without seconds)"
}, },
"USDATE24HRTIMEMMDDYYYY/HHMM": { "USDATE24HRTIMEMMDDYYYY/HHMM": {
'mask': "##/##/#### ##:##", 'mask': "##/##/#### ##:##",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + months + '/' + days + '/' + '\d{4} ' + milhours + ':' + minutes, 'validRegex': '^' + months + '/' + days + '/' + r'\d{4} ' + milhours + ':' + minutes,
'description': "US Date + 24Hr Time\n(without seconds)" 'description': "US Date + 24Hr Time\n(without seconds)"
}, },
"USDATETIMEMMDDYYYY-HHMM": { "USDATETIMEMMDDYYYY-HHMM": {
'mask': "##-##-#### ##:## AM", 'mask': "##-##-#### ##:## AM",
'excludeChars': am_pm_exclude, 'excludeChars': am_pm_exclude,
'formatcodes': 'DF!', 'formatcodes': 'DF!',
'validRegex': '^' + months + '-' + days + '-' + '\d{4} ' + hours + ':' + minutes + ' (A|P)M', 'validRegex': '^' + months + '-' + days + '-' + r'\d{4} ' + hours + ':' + minutes + ' (A|P)M',
'description': "US Date + Time\n(w/hyphens and w/o secs)" 'description': "US Date + Time\n(w/hyphens and w/o secs)"
}, },
"USDATE24HRTIMEMMDDYYYY-HHMM": { "USDATE24HRTIMEMMDDYYYY-HHMM": {
'mask': "##-##-#### ##:##", 'mask': "##-##-#### ##:##",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + months + '-' + days + '-' + '\d{4} ' + milhours + ':' + minutes, 'validRegex': '^' + months + '-' + days + '-' + r'\d{4} ' + milhours + ':' + minutes,
'description': "US Date + 24Hr Time\n(w/hyphens and w/o seconds)" 'description': "US Date + 24Hr Time\n(w/hyphens and w/o seconds)"
}, },
"USDATEMMDDYYYY/": { "USDATEMMDDYYYY/": {
'mask': "##/##/####", 'mask': "##/##/####",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + months + '/' + days + '/' + '\d{4}', 'validRegex': '^' + months + '/' + days + '/' + r'\d{4}',
'description': "US Date\n(MMDDYYYY)" 'description': "US Date\n(MMDDYYYY)"
}, },
"USDATEMMDDYY/": { "USDATEMMDDYY/": {
'mask': "##/##/##", 'mask': "##/##/##",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + months + '/' + days + '/\d\d', 'validRegex': '^' + months + '/' + days + r'/\d\d',
'description': "US Date\n(MMDDYY)" 'description': "US Date\n(MMDDYY)"
}, },
"USDATEMMDDYYYY-": { "USDATEMMDDYYYY-": {
'mask': "##-##-####", 'mask': "##-##-####",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + months + '-' + days + '-' +'\d{4}', 'validRegex': '^' + months + '-' + days + '-' + r'\d{4}',
'description': "MM-DD-YYYY" 'description': "MM-DD-YYYY"
}, },
"EUDATEYYYYMMDD/": { "EUDATEYYYYMMDD/": {
'mask': "####/##/##", 'mask': "####/##/##",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + '\d{4}'+ '/' + months + '/' + days, 'validRegex': '^' + r'\d{4}'+ '/' + months + '/' + days,
'description': "YYYY/MM/DD" 'description': "YYYY/MM/DD"
}, },
"EUDATEYYYYMMDD.": { "EUDATEYYYYMMDD.": {
'mask': "####.##.##", 'mask': "####.##.##",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + '\d{4}'+ '.' + months + '.' + days, 'validRegex': '^' + r'\d{4}'+ '.' + months + '.' + days,
'description': "YYYY.MM.DD" 'description': "YYYY.MM.DD"
}, },
"EUDATEDDMMYYYY/": { "EUDATEDDMMYYYY/": {
'mask': "##/##/####", 'mask': "##/##/####",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + days + '/' + months + '/' + '\d{4}', 'validRegex': '^' + days + '/' + months + '/' + r'\d{4}',
'description': "DD/MM/YYYY" 'description': "DD/MM/YYYY"
}, },
"EUDATEDDMMYYYY.": { "EUDATEDDMMYYYY.": {
'mask': "##.##.####", 'mask': "##.##.####",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + days + '.' + months + '.' + '\d{4}', 'validRegex': '^' + days + '.' + months + '.' + r'\d{4}',
'description': "DD.MM.YYYY" 'description': "DD.MM.YYYY"
}, },
"EUDATEDDMMMYYYY.": { "EUDATEDDMMMYYYY.": {
'mask': "##.CCC.####", 'mask': "##.CCC.####",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + days + '.' + charmonths + '.' + '\d{4}', 'validRegex': '^' + days + '.' + charmonths + '.' + r'\d{4}',
'description': "DD.Month.YYYY" 'description': "DD.Month.YYYY"
}, },
"EUDATEDDMMMYYYY/": { "EUDATEDDMMMYYYY/": {
'mask': "##/CCC/####", 'mask': "##/CCC/####",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + days + '/' + charmonths + '/' + '\d{4}', 'validRegex': '^' + days + '/' + charmonths + '/' + r'\d{4}',
'description': "DD/Month/YYYY" 'description': "DD/Month/YYYY"
}, },
@@ -1093,28 +1093,28 @@ masktags = {
'mask': "####/##/## ##:##:## AM", 'mask': "####/##/## ##:##:## AM",
'excludeChars': am_pm_exclude, 'excludeChars': am_pm_exclude,
'formatcodes': 'DF!', 'formatcodes': 'DF!',
'validRegex': '^' + '\d{4}'+ '/' + months + '/' + days + ' ' + hours + ':' + minutes + ':' + seconds + ' (A|P)M', 'validRegex': '^' + r'\d{4}'+ '/' + months + '/' + days + ' ' + hours + ':' + minutes + ':' + seconds + ' (A|P)M',
'description': "YYYY/MM/DD HH:MM:SS" 'description': "YYYY/MM/DD HH:MM:SS"
}, },
"EUDATETIMEYYYYMMDD.HHMMSS": { "EUDATETIMEYYYYMMDD.HHMMSS": {
'mask': "####.##.## ##:##:## AM", 'mask': "####.##.## ##:##:## AM",
'excludeChars': am_pm_exclude, 'excludeChars': am_pm_exclude,
'formatcodes': 'DF!', 'formatcodes': 'DF!',
'validRegex': '^' + '\d{4}'+ '.' + months + '.' + days + ' ' + hours + ':' + minutes + ':' + seconds + ' (A|P)M', 'validRegex': '^' + r'\d{4}'+ '.' + months + '.' + days + ' ' + hours + ':' + minutes + ':' + seconds + ' (A|P)M',
'description': "YYYY.MM.DD HH:MM:SS" 'description': "YYYY.MM.DD HH:MM:SS"
}, },
"EUDATETIMEDDMMYYYY/HHMMSS": { "EUDATETIMEDDMMYYYY/HHMMSS": {
'mask': "##/##/#### ##:##:## AM", 'mask': "##/##/#### ##:##:## AM",
'excludeChars': am_pm_exclude, 'excludeChars': am_pm_exclude,
'formatcodes': 'DF!', 'formatcodes': 'DF!',
'validRegex': '^' + days + '/' + months + '/' + '\d{4} ' + hours + ':' + minutes + ':' + seconds + ' (A|P)M', 'validRegex': '^' + days + '/' + months + '/' + r'\d{4} ' + hours + ':' + minutes + ':' + seconds + ' (A|P)M',
'description': "DD/MM/YYYY HH:MM:SS" 'description': "DD/MM/YYYY HH:MM:SS"
}, },
"EUDATETIMEDDMMYYYY.HHMMSS": { "EUDATETIMEDDMMYYYY.HHMMSS": {
'mask': "##.##.#### ##:##:## AM", 'mask': "##.##.#### ##:##:## AM",
'excludeChars': am_pm_exclude, 'excludeChars': am_pm_exclude,
'formatcodes': 'DF!', 'formatcodes': 'DF!',
'validRegex': '^' + days + '.' + months + '.' + '\d{4} ' + hours + ':' + minutes + ':' + seconds + ' (A|P)M', 'validRegex': '^' + days + '.' + months + '.' + r'\d{4} ' + hours + ':' + minutes + ':' + seconds + ' (A|P)M',
'description': "DD.MM.YYYY HH:MM:SS" 'description': "DD.MM.YYYY HH:MM:SS"
}, },
@@ -1122,76 +1122,76 @@ masktags = {
'mask': "####/##/## ##:## AM", 'mask': "####/##/## ##:## AM",
'excludeChars': am_pm_exclude, 'excludeChars': am_pm_exclude,
'formatcodes': 'DF!', 'formatcodes': 'DF!',
'validRegex': '^' + '\d{4}'+ '/' + months + '/' + days + ' ' + hours + ':' + minutes + ' (A|P)M', 'validRegex': '^' + r'\d{4}'+ '/' + months + '/' + days + ' ' + hours + ':' + minutes + ' (A|P)M',
'description': "YYYY/MM/DD HH:MM" 'description': "YYYY/MM/DD HH:MM"
}, },
"EUDATETIMEYYYYMMDD.HHMM": { "EUDATETIMEYYYYMMDD.HHMM": {
'mask': "####.##.## ##:## AM", 'mask': "####.##.## ##:## AM",
'excludeChars': am_pm_exclude, 'excludeChars': am_pm_exclude,
'formatcodes': 'DF!', 'formatcodes': 'DF!',
'validRegex': '^' + '\d{4}'+ '.' + months + '.' + days + ' ' + hours + ':' + minutes + ' (A|P)M', 'validRegex': '^' + r'\d{4}'+ '.' + months + '.' + days + ' ' + hours + ':' + minutes + ' (A|P)M',
'description': "YYYY.MM.DD HH:MM" 'description': "YYYY.MM.DD HH:MM"
}, },
"EUDATETIMEDDMMYYYY/HHMM": { "EUDATETIMEDDMMYYYY/HHMM": {
'mask': "##/##/#### ##:## AM", 'mask': "##/##/#### ##:## AM",
'excludeChars': am_pm_exclude, 'excludeChars': am_pm_exclude,
'formatcodes': 'DF!', 'formatcodes': 'DF!',
'validRegex': '^' + days + '/' + months + '/' + '\d{4} ' + hours + ':' + minutes + ' (A|P)M', 'validRegex': '^' + days + '/' + months + '/' + r'\d{4} ' + hours + ':' + minutes + ' (A|P)M',
'description': "DD/MM/YYYY HH:MM" 'description': "DD/MM/YYYY HH:MM"
}, },
"EUDATETIMEDDMMYYYY.HHMM": { "EUDATETIMEDDMMYYYY.HHMM": {
'mask': "##.##.#### ##:## AM", 'mask': "##.##.#### ##:## AM",
'excludeChars': am_pm_exclude, 'excludeChars': am_pm_exclude,
'formatcodes': 'DF!', 'formatcodes': 'DF!',
'validRegex': '^' + days + '.' + months + '.' + '\d{4} ' + hours + ':' + minutes + ' (A|P)M', 'validRegex': '^' + days + '.' + months + '.' + r'\d{4} ' + hours + ':' + minutes + ' (A|P)M',
'description': "DD.MM.YYYY HH:MM" 'description': "DD.MM.YYYY HH:MM"
}, },
"EUDATE24HRTIMEYYYYMMDD/HHMMSS": { "EUDATE24HRTIMEYYYYMMDD/HHMMSS": {
'mask': "####/##/## ##:##:##", 'mask': "####/##/## ##:##:##",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + '\d{4}'+ '/' + months + '/' + days + ' ' + milhours + ':' + minutes + ':' + seconds, 'validRegex': '^' + r'\d{4}'+ '/' + months + '/' + days + ' ' + milhours + ':' + minutes + ':' + seconds,
'description': "YYYY/MM/DD 24Hr Time" 'description': "YYYY/MM/DD 24Hr Time"
}, },
"EUDATE24HRTIMEYYYYMMDD.HHMMSS": { "EUDATE24HRTIMEYYYYMMDD.HHMMSS": {
'mask': "####.##.## ##:##:##", 'mask': "####.##.## ##:##:##",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + '\d{4}'+ '.' + months + '.' + days + ' ' + milhours + ':' + minutes + ':' + seconds, 'validRegex': '^' + r'\d{4}'+ '.' + months + '.' + days + ' ' + milhours + ':' + minutes + ':' + seconds,
'description': "YYYY.MM.DD 24Hr Time" 'description': "YYYY.MM.DD 24Hr Time"
}, },
"EUDATE24HRTIMEDDMMYYYY/HHMMSS": { "EUDATE24HRTIMEDDMMYYYY/HHMMSS": {
'mask': "##/##/#### ##:##:##", 'mask': "##/##/#### ##:##:##",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + days + '/' + months + '/' + '\d{4} ' + milhours + ':' + minutes + ':' + seconds, 'validRegex': '^' + days + '/' + months + '/' + r'\d{4} ' + milhours + ':' + minutes + ':' + seconds,
'description': "DD/MM/YYYY 24Hr Time" 'description': "DD/MM/YYYY 24Hr Time"
}, },
"EUDATE24HRTIMEDDMMYYYY.HHMMSS": { "EUDATE24HRTIMEDDMMYYYY.HHMMSS": {
'mask': "##.##.#### ##:##:##", 'mask': "##.##.#### ##:##:##",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + days + '.' + months + '.' + '\d{4} ' + milhours + ':' + minutes + ':' + seconds, 'validRegex': '^' + days + '.' + months + '.' + r'\d{4} ' + milhours + ':' + minutes + ':' + seconds,
'description': "DD.MM.YYYY 24Hr Time" 'description': "DD.MM.YYYY 24Hr Time"
}, },
"EUDATE24HRTIMEYYYYMMDD/HHMM": { "EUDATE24HRTIMEYYYYMMDD/HHMM": {
'mask': "####/##/## ##:##", 'mask': "####/##/## ##:##",
'formatcodes': 'DF','validRegex': '^' + '\d{4}'+ '/' + months + '/' + days + ' ' + milhours + ':' + minutes, 'formatcodes': 'DF','validRegex': '^' + r'\d{4}'+ '/' + months + '/' + days + ' ' + milhours + ':' + minutes,
'description': "YYYY/MM/DD 24Hr Time\n(w/o seconds)" 'description': "YYYY/MM/DD 24Hr Time\n(w/o seconds)"
}, },
"EUDATE24HRTIMEYYYYMMDD.HHMM": { "EUDATE24HRTIMEYYYYMMDD.HHMM": {
'mask': "####.##.## ##:##", 'mask': "####.##.## ##:##",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + '\d{4}'+ '.' + months + '.' + days + ' ' + milhours + ':' + minutes, 'validRegex': '^' + r'\d{4}'+ '.' + months + '.' + days + ' ' + milhours + ':' + minutes,
'description': "YYYY.MM.DD 24Hr Time\n(w/o seconds)" 'description': "YYYY.MM.DD 24Hr Time\n(w/o seconds)"
}, },
"EUDATE24HRTIMEDDMMYYYY/HHMM": { "EUDATE24HRTIMEDDMMYYYY/HHMM": {
'mask': "##/##/#### ##:##", 'mask': "##/##/#### ##:##",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + days + '/' + months + '/' + '\d{4} ' + milhours + ':' + minutes, 'validRegex': '^' + days + '/' + months + '/' + r'\d{4} ' + milhours + ':' + minutes,
'description': "DD/MM/YYYY 24Hr Time\n(w/o seconds)" 'description': "DD/MM/YYYY 24Hr Time\n(w/o seconds)"
}, },
"EUDATE24HRTIMEDDMMYYYY.HHMM": { "EUDATE24HRTIMEDDMMYYYY.HHMM": {
'mask': "##.##.#### ##:##", 'mask': "##.##.#### ##:##",
'formatcodes': 'DF', 'formatcodes': 'DF',
'validRegex': '^' + days + '.' + months + '.' + '\d{4} ' + milhours + ':' + minutes, 'validRegex': '^' + days + '.' + months + '.' + r'\d{4} ' + milhours + ':' + minutes,
'description': "DD.MM.YYYY 24Hr Time\n(w/o seconds)" 'description': "DD.MM.YYYY 24Hr Time\n(w/o seconds)"
}, },
@@ -1224,37 +1224,37 @@ masktags = {
"USSOCIALSEC": { "USSOCIALSEC": {
'mask': "###-##-####", 'mask': "###-##-####",
'formatcodes': 'F', 'formatcodes': 'F',
'validRegex': "\d{3}-\d{2}-\d{4}", 'validRegex': r"\d{3}-\d{2}-\d{4}",
'description': "Social Sec#" 'description': "Social Sec#"
}, },
"CREDITCARD": { "CREDITCARD": {
'mask': "####-####-####-####", 'mask': "####-####-####-####",
'formatcodes': 'F', 'formatcodes': 'F',
'validRegex': "\d{4}-\d{4}-\d{4}-\d{4}", 'validRegex': r"\d{4}-\d{4}-\d{4}-\d{4}",
'description': "Credit Card" 'description': "Credit Card"
}, },
"EXPDATEMMYY": { "EXPDATEMMYY": {
'mask': "##/##", 'mask': "##/##",
'formatcodes': "F", 'formatcodes': "F",
'validRegex': "^" + months + "/\d\d", 'validRegex': "^" + months + r"/\d\d",
'description': "Expiration MM/YY" 'description': "Expiration MM/YY"
}, },
"USZIP": { "USZIP": {
'mask': "#####", 'mask': "#####",
'formatcodes': 'F', 'formatcodes': 'F',
'validRegex': "^\d{5}", 'validRegex': r"^\d{5}",
'description': "US 5-digit zip code" 'description': "US 5-digit zip code"
}, },
"USZIPPLUS4": { "USZIPPLUS4": {
'mask': "#####-####", 'mask': "#####-####",
'formatcodes': 'F', 'formatcodes': 'F',
'validRegex': "\d{5}-(\s{4}|\d{4})", 'validRegex': r"\d{5}-(\s{4}|\d{4})",
'description': "US zip+4 code" 'description': "US zip+4 code"
}, },
"PERCENT": { "PERCENT": {
'mask': "0.##", 'mask': "0.##",
'formatcodes': 'F', 'formatcodes': 'F',
'validRegex': "^0.\d\d", 'validRegex': r"^0.\d\d",
'description': "Percentage" 'description': "Percentage"
}, },
"AGE": { "AGE": {
@@ -1267,13 +1267,13 @@ masktags = {
'mask': "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", 'mask': "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
'excludeChars': " \\/*&%$#!+='\"", 'excludeChars': " \\/*&%$#!+='\"",
'formatcodes': "F>", 'formatcodes': "F>",
'validRegex': "^\w+([\-\.]\w+)*@((([a-zA-Z0-9]+(\-[a-zA-Z0-9]+)*\.)+)[a-zA-Z]{2,4}|\[(\d|\d\d|(1\d\d|2[0-4]\d|25[0-5]))(\.(\d|\d\d|(1\d\d|2[0-4]\d|25[0-5]))){3}\]) *$", 'validRegex': r"^\w+([\-\.]\w+)*@((([a-zA-Z0-9]+(\-[a-zA-Z0-9]+)*\.)+)[a-zA-Z]{2,4}|\[(\d|\d\d|(1\d\d|2[0-4]\d|25[0-5]))(\.(\d|\d\d|(1\d\d|2[0-4]\d|25[0-5]))){3}\]) *$",
'description': "Email address" 'description': "Email address"
}, },
"IPADDR": { "IPADDR": {
'mask': "###.###.###.###", 'mask': "###.###.###.###",
'formatcodes': 'F_Sr', 'formatcodes': 'F_Sr',
'validRegex': "( \d| \d\d|(1\d\d|2[0-4]\d|25[0-5]))(\.( \d| \d\d|(1\d\d|2[0-4]\d|25[0-5]))){3}", 'validRegex': r"( \d| \d\d|(1\d\d|2[0-4]\d|25[0-5]))(\.( \d| \d\d|(1\d\d|2[0-4]\d|25[0-5]))){3}",
'description': "IP Address\n(see IpAddrCtrl)" 'description': "IP Address\n(see IpAddrCtrl)"
} }
} }
@@ -2259,7 +2259,7 @@ class MaskedEditMixin:
""" """
## dbg('_processMask: mask', mask, indent=1) ## dbg('_processMask: mask', mask, indent=1)
# regular expression for parsing c{n} syntax: # regular expression for parsing c{n} syntax:
rex = re.compile('([' + "".join(maskchars) + '])\{(\d+)\}') rex = re.compile('([' + "".join(maskchars) + r'])\{(\d+)\}')
s = mask s = mask
match = rex.search(s) match = rex.search(s)
while match: # found an(other) occurrence while match: # found an(other) occurrence
@@ -6457,7 +6457,7 @@ def _isTimeType( fmtstring ):
def _isFloatingPoint( fmtstring): def _isFloatingPoint( fmtstring):
filter = re.compile("[ ]?[#]+\.[#]+\n") filter = re.compile(r"[ ]?[#]+\.[#]+\n")
if re.match(filter,fmtstring+"\n"): return True if re.match(filter,fmtstring+"\n"): return True
return False return False
@@ -6580,20 +6580,20 @@ Try entering nonsensical or partial values in validated fields to see what happe
# the options! # the options!
controls = [ controls = [
#description mask excl format regexp range,list,initial #description mask excl format regexp range,list,initial
("Phone No", "(###) ###-#### x:###", "", 'F!^-R', "^\(\d\d\d\) \d\d\d-\d\d\d\d", (),[],''), ("Phone No", "(###) ###-#### x:###", "", 'F!^-R', r"^\(\d\d\d\) \d\d\d-\d\d\d\d", (),[],''),
("Last Name Only", "C{14}", "", 'F {list}', '^[A-Z][a-zA-Z]+', (),('Smith','Jones','Williams'),''), ("Last Name Only", "C{14}", "", 'F {list}', '^[A-Z][a-zA-Z]+', (),('Smith','Jones','Williams'),''),
("Full Name", "C{14}", "", 'F_', '^[A-Z][a-zA-Z]+ [A-Z][a-zA-Z]+', (),[],''), ("Full Name", "C{14}", "", 'F_', '^[A-Z][a-zA-Z]+ [A-Z][a-zA-Z]+', (),[],''),
("Social Sec#", "###-##-####", "", 'F', "\d{3}-\d{2}-\d{4}", (),[],''), ("Social Sec#", "###-##-####", "", 'F', r"\d{3}-\d{2}-\d{4}", (),[],''),
("U.S. Zip+4", "#{5}-#{4}", "", 'F', "\d{5}-(\s{4}|\d{4})",(),[],''), ("U.S. Zip+4", "#{5}-#{4}", "", 'F', r"\d{5}-(\s{4}|\d{4})",(),[],''),
("U.S. State (2 char)\n(with default)","AA", "", 'F!', "[A-Z]{2}", (),states, 'AZ'), ("U.S. State (2 char)\n(with default)","AA", "", 'F!', "[A-Z]{2}", (),states, 'AZ'),
("Customer No", "\CAA-###", "", 'F!', "C[A-Z]{2}-\d{3}", (),[],''), ("Customer No", r"\CAA-###", "", 'F!', r"C[A-Z]{2}-\d{3}", (),[],''),
("Date (MDY) + Time\n(with default)", "##/##/#### ##:## AM", 'BCDEFGHIJKLMNOQRSTUVWXYZ','DFR!',"", (),[], r'03/05/2003 12:00 AM'), ("Date (MDY) + Time\n(with default)", "##/##/#### ##:## AM", 'BCDEFGHIJKLMNOQRSTUVWXYZ','DFR!',"", (),[], r'03/05/2003 12:00 AM'),
("Invoice Total", "#{9}.##", "", 'F-R,', "", (),[], ''), ("Invoice Total", "#{9}.##", "", 'F-R,', "", (),[], ''),
("Integer (signed)\n(with default)", "#{6}", "", 'F-R', "", (),[], '0 '), ("Integer (signed)\n(with default)", "#{6}", "", 'F-R', "", (),[], '0 '),
("Integer (unsigned)\n(with default), 1-399", "######", "", 'F', "", (1,399),[], '1 '), ("Integer (unsigned)\n(with default), 1-399", "######", "", 'F', "", (1,399),[], '1 '),
("Month selector", "XXX", "", 'F', "", (), ("Month selector", "XXX", "", 'F', "", (),
['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],""), ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],""),
("fraction selector","#/##", "", 'F', "^\d\/\d\d?", (), ("fraction selector","#/##", "", 'F', r"^\d\/\d\d?", (),
['2/3', '3/4', '1/2', '1/4', '1/8', '1/16', '1/32', '1/64'], "") ['2/3', '3/4', '1/2', '1/4', '1/8', '1/16', '1/32', '1/64'], "")
] ]

View File

@@ -220,7 +220,7 @@ GetValue()
fractionWidth is 0, or a float otherwise. fractionWidth is 0, or a float otherwise.
SetParameters(\*\*kwargs) SetParameters(**kwargs)
Allows simultaneous setting of various attributes Allows simultaneous setting of various attributes
of the control after construction. Keyword arguments of the control after construction. Keyword arguments
allowed are the same parameters as supported in the constructor. allowed are the same parameters as supported in the constructor.

View File

@@ -582,7 +582,7 @@ class TimeCtrl(BaseMaskedTextCtrl):
# Set hour field to zero-pad, right-insert, require explicit field change, # Set hour field to zero-pad, right-insert, require explicit field change,
# select entire field on entry, and require a resultant valid entry # select entire field on entry, and require a resultant valid entry
# to allow character entry: # to allow character entry:
hourfield = Field(formatcodes='0r<SV', validRegex='0\d|1\d|2[0123]', validRequired=True) hourfield = Field(formatcodes='0r<SV', validRegex=r'0\d|1\d|2[0123]', validRequired=True)
else: else:
if self.__displaySeconds: maskededit_kwargs['autoformat'] = 'TIMEHHMMSS' if self.__displaySeconds: maskededit_kwargs['autoformat'] = 'TIMEHHMMSS'
else: maskededit_kwargs['autoformat'] = 'TIMEHHMM' else: maskededit_kwargs['autoformat'] = 'TIMEHHMM'
@@ -595,7 +595,7 @@ class TimeCtrl(BaseMaskedTextCtrl):
# Field 1 is always a zero-padded right-insert minute field, # Field 1 is always a zero-padded right-insert minute field,
# similarly configured as above: # similarly configured as above:
minutefield = Field(formatcodes='0r<SV', validRegex='[0-5]\d', validRequired=True) minutefield = Field(formatcodes='0r<SV', validRegex=r'[0-5]\d', validRequired=True)
fields = [ hourfield, minutefield ] fields = [ hourfield, minutefield ]
if self.__displaySeconds: if self.__displaySeconds:

View File

@@ -21,7 +21,7 @@ class Listener(ListenerBase):
be given the Topic object for the message sent by sendMessage(). be given the Topic object for the message sent by sendMessage().
Such a Listener will have wantsTopicObjOnCall() True. Such a Listener will have wantsTopicObjOnCall() True.
Callables that have a '\**kargs' argument will receive all message Callables that have a '**kargs' argument will receive all message
data, not just that for the topic they are subscribed to. Such a listener data, not just that for the topic they are subscribed to. Such a listener
will have wantsAllMessageData() True. will have wantsAllMessageData() True.
""" """

View File

@@ -79,7 +79,7 @@ class ListenerBase:
return self._autoTopicArgName is not None return self._autoTopicArgName is not None
def wantsAllMessageData(self): def wantsAllMessageData(self):
"""True if this listener wants all message data: it has a \**kwargs argument""" """True if this listener wants all message data: it has a **kwargs argument"""
return self.acceptsAllKwargs return self.acceptsAllKwargs
def _unlinkFromTopic_(self): def _unlinkFromTopic_(self):

View File

@@ -65,7 +65,7 @@ def testForContinuations(codeBlock,ignoreErrors=False):
#print('Invalid Indentation!!') #print('Invalid Indentation!!')
return ['Invalid Indentation Error',i] return ['Invalid Indentation Error',i]
firstWord = re.match(' *\w*',l).group().lstrip() firstWord = re.match(r' *\w*',l).group().lstrip()
if firstWord in ['if','else','elif','for','while', if firstWord in ['if','else','elif','for','while',
'def','class','try','except','finally']: 'def','class','try','except','finally']:
hasContinuationWord = True hasContinuationWord = True

View File

@@ -768,7 +768,7 @@ class Shell(editwindow.EditWindow):
import re import re
#sort out only "good" words #sort out only "good" words
newlist = re.split("[ \.\[\]=}(\)\,0-9\"]", joined) newlist = re.split(r"[ \.\[\]=}(\)\,0-9\"]", joined)
#length > 1 (mix out "trash") #length > 1 (mix out "trash")
thlist = [] thlist = []

View File

@@ -2142,7 +2142,7 @@ class SlicesShell(editwindow.EditWindow):
import re import re
#sort out only "good" words #sort out only "good" words
newlist = re.split("[ \.\[\]=}(\)\,0-9\"]", joined) newlist = re.split(r"[ \.\[\]=}(\)\,0-9\"]", joined)
#length > 1 (mix out "trash") #length > 1 (mix out "trash")
thlist = [] thlist = []