Kstars

constellationartitem.h
1 /*
2  SPDX-FileCopyrightText: 2016 Artem Fedoskin <[email protected]>
3  SPDX-License-Identifier: GPL-2.0-or-later
4 */
5 
6 #pragma once
7 
8 #include "skyitem.h"
9 
10 class RootNode;
12 
13 /**
14  * @class ConstellationArtItem
15  * This class handles constellation art in SkyMapLite. Each constellation image is represented by ConstellationArtNode.
16  * @see ConstellationArtNode
17  *
18  * @author Artem Fedoskin
19  * @version 1.0
20  */
21 
23 {
24  public:
25  /**
26  * @param artComp - pointer to ConstellationArtComponent instance, that handles constellation art data
27  * @param rootNode - pointer to the root node
28  */
29  explicit ConstellationArtItem(ConstellationArtComponent *artComp, RootNode *rootNode = nullptr);
30 
31  /**
32  * @short calls update() of all child ConstellationArtNodes if constellation art is on. Otherwise
33  * calls deleteNodes().
34  */
35  void update() override;
36 
37  /**
38  * @short deleteNodes deletes constellation art data and ConstellationArtNodes
39  * @see ConstellationArtComponent::deleteData()
40  */
41  void deleteNodes();
42 
43  /**
44  * @short loadNodes loads constellation art data and creates ConstellationArtNodes
45  * @see ConstellationArtComponent::loadData()
46  */
47  void loadNodes();
48 
49  private:
50  ConstellationArtComponent *m_artComp { nullptr };
51 };
void update() override
calls update() of all child ConstellationArtNodes if constellation art is on.
A base class that is used for displaying SkyComponents on SkyMapLite.
Definition: skyitem.h:29
A container for nodes that holds collection of textures for stars and provides clipping.
Definition: rootnode.h:59
ConstellationArtItem(ConstellationArtComponent *artComp, RootNode *rootNode=nullptr)
void deleteNodes()
deleteNodes deletes constellation art data and ConstellationArtNodes
void loadNodes()
loadNodes loads constellation art data and creates ConstellationArtNodes
RootNode * rootNode()
Definition: skyitem.h:57
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Fri Sep 29 2023 03:56:53 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.