'''
Here we'll define exceptions to raise in the qtstyles package
'''

class QtStylesError(Exception):
    """ Base-class for all exceptions raised by this module. """


class SheetPathTypeError(QtStylesError):
    ''' The style sheet path must be a string '''
    def __init__(self):
        super(SheetPathTypeError, self).__init__("The style sheet path must be a string!")


class SheetPathValueError(QtStylesError):
    ''' The style sheet path end in '.qss' '''
    def __init__(self):
        super(SheetPathValueError, self).__init__("The style sheet path must end in '.qss'!")


class SheetPathFileDoesntExist(QtStylesError):
    ''' The style sheet path must point to a file that exists '''
    def __init__(self):
        super(SheetPathFileDoesntExist, self).__init__("No file exists at the path specified!")


class StyleDoesntExistError(QtStylesError):
    ''' The provided style sheet path must exist '''
    def __init__(self):
        super(StyleDoesntExistError, self).__init__("The requested style does not exist!")
