File indexing completed on 2024-04-28 15:16:11
0001 // SPDX-License-Identifier: LGPL-2.1-or-later 0002 // 0003 // SPDX-FileCopyrightText: 2008 David Roberts <dvdr18@gmail.com> 0004 // SPDX-FileCopyrightText: 2008 Inge Wallin <inge@lysator.liu.se> 0005 // SPDX-FileCopyrightText: 2010 Harshit Jain <hjain.itbhu@gmail.com> 0006 // 0007 0008 #ifndef MARBLE_SUNCONTROLWIDGET_H 0009 #define MARBLE_SUNCONTROLWIDGET_H 0010 0011 #include <QDialog> 0012 0013 #include "marble_export.h" 0014 0015 namespace Ui 0016 { 0017 class SunControlWidget; 0018 } 0019 0020 namespace Marble 0021 { 0022 class MarbleWidget; 0023 0024 class MARBLE_EXPORT SunControlWidget : public QDialog 0025 { 0026 Q_OBJECT 0027 0028 public: 0029 explicit SunControlWidget( MarbleWidget *marbleWidget, QWidget* parent = nullptr ); 0030 ~SunControlWidget() override; 0031 void setSunShading( bool ); 0032 0033 private Q_SLOTS: 0034 void apply(); 0035 0036 Q_SIGNALS: 0037 void showSun( bool show ); 0038 void isLockedToSubSolarPoint( bool show ); 0039 void isSubSolarPointIconVisible( bool show ); 0040 0041 protected: 0042 Q_DISABLE_COPY( SunControlWidget ) 0043 0044 void showEvent(QShowEvent* event) override; 0045 0046 Ui::SunControlWidget *m_uiWidget; 0047 MarbleWidget *const m_marbleWidget; 0048 QString m_shadow; 0049 }; 0050 0051 } 0052 0053 #endif