File indexing completed on 2024-05-12 05:10:36

0001 /******************************************************************************
0002  * konsolekalendaradd.h                                                       *
0003  *                                                                            *
0004  * KonsoleKalendar is a command line interface to KDE calendars               *
0005  * SPDX-FileCopyrightText: 2002-2004 Tuukka Pasanen <illuusio@mailcity.com>   *
0006  * SPDX-FileCopyrightText: 2003-2005 Allen Winter <winter@kde.org>            *
0007  *                                                                            *
0008  * SPDX-License-Identifier: GPL-2.0-or-later WITH Qt-Commercial-exception-1.0 *
0009  *                                                                            *
0010  ******************************************************************************/
0011 
0012 #pragma once
0013 
0014 #include "konsolekalendarvariables.h"
0015 
0016 /**
0017  * @file konsolekalendaradd.h
0018  * Provides the KonsoleKalendarAdd class definition.
0019  */
0020 
0021 /**
0022  * @brief
0023  * Class to manage the Event insertion capability.
0024  * @author Tuukka Pasanen
0025  * @author Allen Winter
0026  */
0027 class KonsoleKalendarAdd
0028 {
0029 public:
0030     /**
0031      * Constructs a KonsoleKalendarAdd object from command line arguments.
0032      * @param vars is a KonsoleKalendarVariable object with Event information.
0033      */
0034     explicit KonsoleKalendarAdd(KonsoleKalendarVariables *vars);
0035     /**
0036      * Destructor
0037      */
0038     ~KonsoleKalendarAdd();
0039 
0040     /**
0041      * Add the Event.
0042      */
0043     bool addEvent();
0044 
0045     /**
0046      * Imports calendar file to current Calendar.
0047      */
0048     bool addImportedCalendar();
0049 
0050 private:
0051     /**
0052      * Print event specs for dryrun and verbose options
0053      */
0054     void printSpecs();
0055 
0056     /**
0057      * Variable to how to make it
0058      */
0059     KonsoleKalendarVariables *m_variables = nullptr;
0060 };