1 /* 2 exceptions.h MindForger thinking notebook 3 4 Copyright (C) 2016-2020 Martin Dvorak <martin.dvorak@mindforger.com> 5 6 This program is free software; you can redistribute it and/or 7 modify it under the terms of the GNU General Public License 8 as published by the Free Software Foundation; either version 2 9 of the License, or (at your option) any later version. 10 11 This program is distributed in the hope that it will be useful, 12 but WITHOUT ANY WARRANTY; without even the implied warranty of 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 GNU General Public License for more details. 15 16 You should have received a copy of the GNU General Public License 17 along with this program. If not, see <http://www.gnu.org/licenses/>. 18 */ 19 #ifndef M8RUI_EXCEPTIONS_H 20 #define M8RUI_EXCEPTIONS_H 21 22 namespace m8r { 23 24 // TODO move this to lib 25 class MindForgerException : public std::exception 26 { 27 public: MindForgerException(const QString & message)28 explicit MindForgerException(const QString &message) throw() 29 : message(message.toUtf8()) {} throw()30 ~Error() throw() {} 31 what()32 const char *what() const throw() { return message; } 33 34 private: 35 const char *message; 36 }; 37 38 #endif // M8RUI_EXCEPTIONS 39