Esempio n. 1
0
 def _is_valid_re(self, pattern, flags):
     """
     Check the validity of the regular expression and
     inform the user if it fails.
     """
     LOGGER.log()
     try:
         is_valid = bool(re.compile(pattern, flags))
     except (re.error, re_error):
         is_valid = False
         title = 'Click Config: error in input'
         flag_text =  '\n    I (IGNORECASE)' * bool(flags & re.I)
         flag_text += '\n    M (MULTILINE)'  * bool(flags & re.M)
         flag_text += '\n    S (DOTALL)'     * bool(flags & re.S)
         flag_text += '\n    X (VERBOSE)'    * bool(flags & re.X)
         flag_text = flag_text or '\n    (None)'
         message = ('Invalid regular expression pattern.'
                    '\n\nError:\n    %s'
                    '\n\nPattern:\n    %s'
                    '\n\nFlags:%s'
                    % (re_error.message, pattern, flag_text))
         dialogs.show_message(title,
                              message,
                              Gtk.MessageType.ERROR,
                              self.window)
     return is_valid
Esempio n. 2
0
 def _get_new_name(self, name='', existing_names=(), desc=''):
     """Ask the user for a new name, and ensure it is new."""
     while 1:
         name = dialogs.ask_for_text(parent=self.window,
                                     title='Add %s' % desc,
                                     prompt='Enter a new name:',
                                     default=name)
         if name:
             name = name.strip()
         if name not in existing_names:
             break
         dialogs.show_message(title='Error adding %s name' % desc,
                              message='"%s" already exists.' % name,
                              type_=Gtk.MessageType.ERROR,
                              parent=self.window)
     return name
Esempio n. 3
0
 def _get_new_name(self, name='', existing_names=(), desc=''):
     """Ask the user for a new name, and ensure it is new."""
     while 1:
         name = dialogs.ask_for_text(parent=self.window,
                                     title='Add %s' % desc,
                                     prompt='Enter a new name:',
                                     default=name)
         if name:
             name = name.strip()
         if name not in existing_names:
             break
         dialogs.show_message(title='Error adding %s name' % desc,
                              message='"%s" already exists.' % name,
                              type_=Gtk.MessageType.ERROR,
                              parent=self.window)
     return name
Esempio n. 4
0
 def _is_valid_re(self, pattern, flags):
     """
     Check the validity of the regular expression and
     inform the user if it fails.
     """
     LOGGER.log()
     try:
         is_valid = bool(re.compile(pattern, flags))
     except (re.error, re_error):
         is_valid = False
         title = 'Click Config: error in input'
         flag_text = '\n    I (IGNORECASE)' * bool(flags & re.I)
         flag_text += '\n    M (MULTILINE)' * bool(flags & re.M)
         flag_text += '\n    S (DOTALL)' * bool(flags & re.S)
         flag_text += '\n    X (VERBOSE)' * bool(flags & re.X)
         flag_text = flag_text or '\n    (None)'
         message = ('Invalid regular expression pattern.'
                    '\n\nError:\n    %s'
                    '\n\nPattern:\n    %s'
                    '\n\nFlags:%s' % (re_error.message, pattern, flag_text))
         dialogs.show_message(title, message, Gtk.MessageType.ERROR,
                              self.window)
     return is_valid