File indexing completed on 2024-04-14 03:59:52

0001 /*
0002     SPDX-FileCopyrightText: 2007 Mauricio Piacentini <mauricio@tabuleiro.com>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #ifndef KMAHJONGGLAYOUT_H
0008 #define KMAHJONGGLAYOUT_H
0009 
0010 // Qt
0011 #include <QString>
0012 // Std
0013 #include <memory>
0014 
0015 class BoardLayout;
0016 
0017 class KMahjonggLayout
0018 {
0019 public:
0020     KMahjonggLayout();
0021     ~KMahjonggLayout();
0022 
0023     bool load(const QString & file);
0024     bool loadDefault();
0025     QString path() const;
0026 
0027     QString name() const;
0028     QString description() const;
0029     QString authorName() const;
0030     QString authorEmailAddress() const;
0031 
0032     BoardLayout * board() const;
0033 
0034 private:
0035     QString m_fileName;
0036 
0037     QString m_name;
0038     QString m_description;
0039     QString m_authorName;
0040     QString m_authorEmailAddress;
0041 
0042     std::unique_ptr<BoardLayout> const m_board;
0043 
0044     Q_DISABLE_COPY(KMahjonggLayout)
0045 };
0046 
0047 #endif