Kstars

moonphasetool.h
1/*
2 SPDX-FileCopyrightText: 2010 Akarsh Simha <akarshsimha@gmail.com>
3
4 SPDX-License-Identifier: GPL-2.0-or-later
5*/
6
7#pragma once
8
9//#include "widgets/genericcalendarwidget.h"
10#include "widgets/moonphasecalendarwidget.h"
11
12#include <QDialog>
13
14#include <memory>
15
16class QCalendarWidget;
17
18class KSMoon;
19class KSNumbers;
20class KSSun;
21
22/**
23 * @class MoonPhaseTool
24 * @short Shows a moon phase calendar for an entire month
25 *
26 * This tool shows a moon phase calendar for an entire month in the
27 * same spirit as this website:
28 * https://stardate.org/nightsky/moon
29 *
30 * It uses a clone of KSMoon in the backend to perform the phase
31 * computation and uses the moon images for the various phases to
32 * display a nice table
33 *
34 * @author Akarsh Simha
35 * @version 1.0
36 */
37class MoonPhaseTool : public QDialog
38{
40
41 public:
42 explicit MoonPhaseTool(QWidget *p);
43
44 /*
45 public slots:
46
47 void slotUpdate();
48 void slotSetMonth();
49 */
50
51 private:
52 std::unique_ptr<KSMoon> m_Moon;
53 std::unique_ptr<KSSun> m_Sun;
54 KSNumbers *m_Num { nullptr };
55 unsigned short month { 0 };
56 unsigned int year { 0 };
57 //GenericCalendarWidget *gcw { nullptr };
58 QCalendarWidget *gcw { nullptr };
59 std::unique_ptr<MoonPhaseCalendar> mpc;
60};
Provides necessary information about the Moon.
Definition ksmoon.h:26
There are several time-dependent values used in position calculations, that are not specific to an ob...
Definition ksnumbers.h:43
Child class of KSPlanetBase; encapsulates information about the Sun.
Definition kssun.h:24
Shows a moon phase calendar for an entire month.
Q_OBJECTQ_OBJECT
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Sun Feb 25 2024 18:45:36 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.