File indexing completed on 2024-04-14 03:47:50

0001 // SPDX-License-Identifier: LGPL-2.1-or-later
0002 //
0003 // SPDX-FileCopyrightText: 2004-2007 Torsten Rahn <tackat@kde.org>
0004 // SPDX-FileCopyrightText: 2007 Inge Wallin <ingwa@kde.org>
0005 //
0006 
0007 //
0008 // The about dialog 
0009 //
0010 
0011 #ifndef MARBLE_MARBLEABOUTDIALOG_H
0012 #define MARBLE_MARBLEABOUTDIALOG_H
0013 
0014 
0015 #include <QDialog>
0016 
0017 #include "marble_export.h"
0018 
0019 namespace Marble
0020 {
0021 
0022 class MarbleAboutDialogPrivate;
0023 
0024 
0025 class MARBLE_EXPORT MarbleAboutDialog : public QDialog
0026 {
0027     Q_OBJECT
0028 
0029 public:
0030     enum Tab {
0031         About,
0032         Authors,
0033         Data,
0034         License
0035     };
0036 
0037     explicit MarbleAboutDialog(QWidget *parent = nullptr);
0038     ~MarbleAboutDialog() override;
0039 
0040     /**
0041       * Set the application title (usually name and version) to show
0042       * The default application title is 'Marble Virtual Globe'
0043       */
0044     void setApplicationTitle( const QString &title );
0045 
0046     /**
0047      * @brief setInitialTab Change the tab shown when executing the dialog
0048      * @param tab The tab to show
0049      */
0050     void setInitialTab( Tab tab );
0051 
0052  private:
0053     Q_PRIVATE_SLOT( d, void loadPageContents( int idx ) )
0054     Q_DISABLE_COPY( MarbleAboutDialog )
0055     MarbleAboutDialogPrivate  * const d;
0056 };
0057 
0058 }
0059 
0060 #endif