1 /* 2 SPDX-FileCopyrightText: 2011 Rafał Kułaga <rl.kulaga@gmail.com> 3 4 SPDX-License-Identifier: GPL-2.0-or-later 5 */ 6 7 #pragma once 8 9 #include "kstarsdocument.h" 10 11 class QString; 12 class QRectF; 13 class QImage; 14 15 class LoggingForm; 16 class DetailsTable; 17 class KStarsDateTime; 18 class GeoLocation; 19 20 /** 21 * @class FinderChart 22 * @brief Class that represents finder chart document. 23 * FinderChart class is a subclass of KStarsDocument class, representing finder chart. 24 * Finder chart can contain following elements: title, subtitle, description, logging forms, 25 * images and details tables. 26 * 27 * @author Rafał Kułaga 28 */ 29 class FinderChart : public KStarsDocument 30 { 31 public: 32 /** Constructor */ 33 FinderChart(); 34 35 /** 36 * @brief Insert title and subtitle to the finder chart. 37 * @param title Title. 38 * @param subtitle Subtitle. 39 */ 40 void insertTitleSubtitle(const QString &title, const QString &subtitle); 41 42 /** 43 * @brief Insert description to the finder chart. 44 * @param description Description text. 45 */ 46 void insertDescription(const QString &description); 47 48 /** 49 * @brief Insert details about date&time and geographic location. 50 * @param ut Date and time. 51 * @param geo Geographic location. 52 */ 53 void insertGeoTimeInfo(const KStarsDateTime &ut, GeoLocation *geo); 54 55 /** 56 * @brief Insert logging form to the finder chart. 57 * @param log Logging form to be inserted. 58 */ 59 void insertLoggingForm(LoggingForm *log); 60 61 /** 62 * @brief Insert image to the finder chart. 63 * @param img Image to be inserted. 64 * @param description Description of the image.s 65 * @param descriptionBelow True if description should be placed below image. 66 */ 67 void insertImage(const QImage &img, const QString &description, bool descriptionBelow = true); 68 69 /** 70 * @brief Insert details table to the finder chart. 71 * @param table Details table to be inserted. 72 */ 73 void insertDetailsTable(DetailsTable *table); 74 75 /** 76 * @brief Insert section title to the finder chart. 77 * @param title Section title. 78 */ 79 void insertSectionTitle(const QString &title); 80 }; 81