+ ''' The same as checkProgAlternatives, but for viewers '''
+ alt_rc_entry = listAlternatives(progs, 'viewer', rc_entry)
+ return checkProgAlternatives(description, progs, rc_entry, alt_rc_entry, path, not_found = 'auto')
+
+
+def checkEditor(description, progs, rc_entry = [], path = []):
+ ''' The same as checkProgAlternatives, but for editors '''
+ alt_rc_entry = listAlternatives(progs, 'editor', rc_entry)
+ return checkProgAlternatives(description, progs, rc_entry, alt_rc_entry, path, not_found = 'auto')
+
+
+def checkViewerNoRC(description, progs, rc_entry = [], path = []):
+ ''' The same as checkViewer, but do not add rc entry '''
+ alt_rc_entry = listAlternatives(progs, 'viewer', rc_entry)
+ rc_entry = []
+ return checkProgAlternatives(description, progs, rc_entry, alt_rc_entry, path, not_found = 'auto')
+
+
+def checkEditorNoRC(description, progs, rc_entry = [], path = []):
+ ''' The same as checkViewer, but do not add rc entry '''
+ alt_rc_entry = listAlternatives(progs, 'editor', rc_entry)
+ rc_entry = []
+ return checkProgAlternatives(description, progs, rc_entry, alt_rc_entry, path, not_found = 'auto')
+
+
+def checkViewerEditor(description, progs, rc_entry = [], path = []):
+ ''' The same as checkProgAlternatives, but for viewers and editors '''
+ alt_rc_entry = listAlternatives(progs, ['editor', 'viewer'], rc_entry)
+ return checkProgAlternatives(description, progs, rc_entry, alt_rc_entry, path, not_found = 'auto')