'Validity check on user\'s \'basic\' keybinding selection.
Doesn\'t check the string produced by the advanced dialog because
\'modifiers\' isn\'t set.'

def KeysOK(self):

    keys = self.keyString.get()
    keys.strip()
    finalKey = self.listKeysFinal.get(ANCHOR)
    modifiers = self.GetModifiers()
    keySequence = keys.split()
    keysOK = False
    title = 'Key    Sequence    Error'
    if (not keys):
        tkMessageBox.showerror(title=title, parent=self, message='No    keys    specified.')
    elif (not keys.endswith('>')):
        tkMessageBox.showerror(title=title, parent=self, message='Missing    the    final    Key')
    elif ((not modifiers) and (finalKey not in (self.functionKeys + self.moveKeys))):
        tkMessageBox.showerror(title=title, parent=self, message='No    modifier    key(s)    specified.')
    elif ((modifiers == ['Shift']) and (finalKey not in ((self.functionKeys + self.moveKeys) + ('Tab', 'Space')))):
        msg = 'The    shift    modifier    by    itself    may    not    be    used    with    this    key    symbol.'
        tkMessageBox.showerror(title=title, parent=self, message=msg)
    elif (keySequence in self.currentKeySequences):
        msg = 'This    key    combination    is    already    in    use.'
        tkMessageBox.showerror(title=title, parent=self, message=msg)
    else:
        keysOK = True
    return keysOK
