konsolekalendar Library API Documentation

konsolekalendarvariables.h

00001 /*******************************************************************************
00002  * konsolekalendarvariables.h                                                  *
00003  *                                                                             *
00004  * KonsoleKalendar is a command line interface to KDE calendars                *
00005  * Copyright (C) 2002-2004  Tuukka Pasanen <illuusio@mailcity.com>             *
00006  * Copyright (C) 2003-2004  Allen Winter <awinterz@users.sourceforge.net>      *
00007  *                                                                             *
00008  * This program is free software; you can redistribute it and/or modify        *
00009  * it under the terms of the GNU General Public License as published by        *
00010  * the Free Software Foundation; either version 2 of the License, or           *
00011  * (at your option) any later version.                                         *
00012  *                                                                             *
00013  * This program is distributed in the hope that it will be useful,             *
00014  * but WITHOUT ANY WARRANTY; without even the implied warranty of              *
00015  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                *
00016  * GNU General Public License for more details.                                *
00017  *                                                                             *
00018  * You should have received a copy of the GNU General Public License           *
00019  * along with this program; if not, write to the Free Software                 *
00020  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA. *
00021  *                                                                             *
00022  * As a special exception, permission is given to link this program            *
00023  * with any edition of Qt, and distribute the resulting executable,            *
00024  * without including the source code for Qt in the source distribution.        *
00025  *                                                                             *
00026  ******************************************************************************/
00027 
00028 #ifndef _KONSOLEKALENDARVARIABLES_H_
00029 #define _KONSOLEKALENDARVARIABLES_H_
00030 
00031 #include <libkcal/calendarlocal.h>
00032 #include <libkcal/calendarresources.h>
00033 #include <libkcal/resourcelocal.h>
00034 #include <libkcal/resourcecalendar.h>
00035 #include <libkcal/event.h>
00036 
00037 /*
00038  * Our export types
00039  */
00040 #define   NONE                     0
00041 #define   TEXT_KONSOLEKALENDAR     1
00042 #define   TEXT_SHORT               2
00043 #define   HTML                     3
00044 #define   XHTML                    4
00045 #define   XML                      5
00046 #define   CSV                      6
00047 #define   VCARD                    7
00048 
00049 
00050 namespace KCal {
00051 
00052   class KonsoleKalendarVariables : KCal::Event
00053   {
00054   public:
00055     KonsoleKalendarVariables();
00056     ~KonsoleKalendarVariables();
00057 
00062     void setStartDateTime( QDateTime start );
00063 
00068     QDateTime getStartDateTime();
00069 
00074     bool isStartDateTime();
00075 
00080     void setEndDateTime( QDateTime end );
00081 
00086     QDateTime getEndDateTime();
00087 
00092     bool isEndDateTime();
00093 
00097     void setTimeZoneId();
00098 
00103     QString getTimeZoneId();
00104 
00109     bool isTimeZoneId();
00110 
00115     void setUID( QString uid );
00116 
00121     QString getUID();
00122 
00127     bool isUID();
00128 
00133     void setNext( bool next );
00134 
00139     bool isNext();
00140 
00145     void setVerbose( bool verbose );
00146 
00151     bool isVerbose();
00152 
00157     void setDryRun( bool dryrun );
00158 
00163     bool isDryRun();
00164 
00169     void setCalendarFile( QString calendar );
00170 
00175     QString getCalendarFile();
00176 
00181     void setImportFile( QString calendar );
00182 
00187     QString getImportFile();
00188 
00193     void setDescription( QString description );
00194 
00199     QString getDescription();
00200 
00205     bool isDescription();
00206 
00211     void setLocation( QString location );
00212 
00217     QString getLocation();
00218 
00223     bool isLocation();
00224 
00229     void setSummary( QString description );
00230 
00235     QString getSummary();
00236 
00241     bool isSummary();
00242 
00243     void setAll( bool all );
00244     bool getAll();
00245     bool isAll();
00246 
00247     void setFloating( bool floating );
00248     bool getFloating();
00249 
00250     QDate parseDate( QString string );
00251     QTime parseTime( QString str );
00252 
00256     void setDefault( bool def );
00257 
00258 
00262     bool isDefault();
00263 
00268     void setCalendar( CalendarLocal *calendar );
00269 
00274     CalendarLocal *getCalendar();
00275 
00279     void setExportFile( QString export_file );
00280 
00284     QString getExportFile();
00285 
00286     /*
00287      * Has an Export File been set?
00288      */
00289     bool isExportFile();
00290 
00294     void setExportType( int export_type );
00295 
00299     int getExportType();
00300 
00304     bool isCalendarResources();
00305 
00309     CalendarResourceManager *getCalendarResourceManager();
00310 
00314     bool addCalendarResources( ResourceCalendar *cal );
00315 
00319     void setCalendarResources( CalendarResources *resource );
00320 
00324     CalendarResources *getCalendarResources();
00325 
00326 
00330     bool loadCalendarResources( KConfig *config );
00331 
00332     void setDaysCount( int count );
00333     int getDaysCount();
00334     bool isDaysCount();
00335 
00336 
00337   private:
00338     int findNumber( const QString &str, int &pos, int &startpos );
00339     char findSeparator( const QString &str, int &pos, int &seppos );
00340     void skipWhiteSpace( const QString &str, int &pos );
00341 
00342     bool m_bIsTimeZoneId;
00343     QString m_TimeZoneId;
00344     QDateTime m_startDateTime;
00345     QDateTime m_endDateTime;
00346     bool m_bIsStartDateTime;
00347     bool m_bIsEndDateTime;
00348     QString m_calendar;
00349     QString m_import;
00350     QString m_description;
00351     QString m_location;
00352     QString m_summary;
00353     QString m_export_file;
00354     QString m_UID;
00355     bool m_bSummary;
00356     bool m_bNext;
00357     bool m_bVerbose;
00358     bool m_bDryRun;
00359     bool m_bAll;
00360     bool m_bDescription;
00361     bool m_bLocation;
00362     bool m_bFloating;
00363     bool m_bDaysCount;
00364     bool m_bIsUID;
00365     int str_length;
00366     int m_export_type;
00367     int m_daysCount;
00368     QString m_exportFile;
00369     bool m_bIsExportFile;
00370     bool m_bIsDefault;
00371     bool m_bIsCalendarResources;
00372     // New resource stuff will over-ride old pne
00373     CalendarResources *m_resource;
00374     // We can use this from everywhere
00375     CalendarLocal *m_calendarLocal;
00376   };
00377 
00378 }
00379 
00380 #endif
KDE Logo
This file is part of the documentation for konsolekalendar Library Version 3.3.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Thu Aug 23 18:22:45 2007 by doxygen 1.4.2 written by Dimitri van Heesch, © 1997-2003