1# -*- coding: utf-8 -*-
2
3# ####################################################################
4#  Copyright (C) 2005-2019 by the FIFE team
5#  http://www.fifengine.net
6#  This file is part of FIFE.
7#
8#  FIFE is free software; you can redistribute it and/or
9#  modify it under the terms of the GNU Lesser General Public
10#  License as published by the Free Software Foundation; either
11#  version 2.1 of the License, or (at your option) any later version.
12#
13#  This library is distributed in the hope that it will be useful,
14#  but WITHOUT ANY WARRANTY; without even the implied warranty of
15#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16#  Lesser General Public License for more details.
17#
18#  You should have received a copy of the GNU Lesser General Public
19#  License along with this library; if not, write to the
20#  Free Software Foundation, Inc.,
21#  51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
22# ####################################################################
23
24class PyChanException(Exception):
25	"""
26	Base exception class for PyChan.
27	All exceptions raised by PyChan derive from this.
28	"""
29	pass
30
31class InitializationError(PyChanException):
32	"""
33	Exception raised during the initialization.
34	"""
35	pass
36
37class RuntimeError(PyChanException):
38	"""
39	Exception raised during the run time - for example caused by a missing name attribute in a XML file.
40	"""
41	pass
42
43class GuiXMLError(PyChanException):
44	"""
45	An error that occured during parsing an XML file.
46	"""
47
48class ParserError(PyChanException):
49	"""
50	An error that occured during parsing an attribute.
51	"""
52
53class PrivateFunctionalityError(RuntimeError):
54	"""
55	Exception raised if private attributes/functions are used.
56	"""
57
58class StopTreeWalking(StopIteration):
59	"""
60	Internal exception used to abort iteration over the widget tree.
61	"""
62
63class DeprecatedException(PyChanException):
64	"""
65	Exception raised if a deprecated function or format is used.
66	"""
67