<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en_US" xml:lang="en_US"> <head> <title>kalarm/lib: datetime.h Source File (kalarm/lib)</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" comment "ICRAonline DE v2.0" l gen true for "http://www.kde.org" r (nz 1 vz 1 lz 1 oz 1 cb 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://www.kde.org" r (n 0 s 0 v 0 l 0))' /> <meta name="trademark" content="KDE e.V." /> <meta name="description" content="K Desktop Environment Homepage, KDE.org" /> <meta name="MSSmartTagsPreventParsing" content="true" /> <meta name="robots" content="all" /> <link rel="shortcut icon" href="../../../favicon.ico" /> <link rel="stylesheet" media="screen" type="text/css" title="APIDOX" href="doxygen.css" /> <style type="text/css"> <!-- hr { display: none; } #content h2 { margin-left: 0px; } table.mdTable { background-color: #f8f8f8; border: .2em solid #d7d7d7; } td.mdRow { padding: 8px 20px; } td.md { font-weight: bold; } td.mdname1 { font-weight: bold; color: #602020; } td.mdname { font-weight: bold; color: #602020; } --> </style> </head> <body> <div id="nav_header_top" align="right"> <a href="#content" class="doNotDisplay" accesskey="2">Skip to main content ::</a> <a href="../../.."><img id="nav_header_logo" alt="Home" align="left" src="../../../kde_gear_64.png" border="0" /></a> <span class="doNotDisplay">::</span> <img id="nav_header_logo_right" alt="" align="right" src="../../../pimlogo.png" border="0" /> <div id="nav_header_title" align="left">KDE PIM API Reference</div> </div> <div id="nav_header_bottom" align="right"> <span class="doNotDisplay">:: <a href="#navigation" accesskey="5">Skip to Link Menu</a><br/></span> <div id="nav_header_bottom_left" style="text-align: left;"> / <a href="../../../">API Reference</a> / <a href="../../html/index.html">kalarm</a> / <a href=".">lib</a> </div> </div> <table id="main" border="0" cellpadding="0" cellspacing="0" width="100%"> <tr> <td valign="top" class="menuheader" height="0"></td> <td id="contentcolumn" valign="top" rowspan="2" > <div id="content" style="padding-top: 0px;"><div style="width:100%; margin: 0px; padding: 0px;"> <h2><a name="content"></a>kalarm/lib</h2> <!-- Generated by Doxygen 1.5.5 --> <h1>datetime.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span> <a name="l00002"></a>00002 <span class="comment"> * datetime.h - date/time representation with optional date-only value</span> <a name="l00003"></a>00003 <span class="comment"> * Program: kalarm</span> <a name="l00004"></a>00004 <span class="comment"> * Copyright © 2003,2005,2007 by David Jarvie <software@astrojar.org.uk></span> <a name="l00005"></a>00005 <span class="comment"> *</span> <a name="l00006"></a>00006 <span class="comment"> * This program is free software; you can redistribute it and/or modify</span> <a name="l00007"></a>00007 <span class="comment"> * it under the terms of the GNU General Public License as published by</span> <a name="l00008"></a>00008 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span> <a name="l00009"></a>00009 <span class="comment"> * (at your option) any later version.</span> <a name="l00010"></a>00010 <span class="comment"> *</span> <a name="l00011"></a>00011 <span class="comment"> * This program is distributed in the hope that it will be useful,</span> <a name="l00012"></a>00012 <span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span> <a name="l00013"></a>00013 <span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span> <a name="l00014"></a>00014 <span class="comment"> * GNU General Public License for more details.</span> <a name="l00015"></a>00015 <span class="comment"> *</span> <a name="l00016"></a>00016 <span class="comment"> * You should have received a copy of the GNU General Public License along</span> <a name="l00017"></a>00017 <span class="comment"> * with this program; if not, write to the Free Software Foundation, Inc.,</span> <a name="l00018"></a>00018 <span class="comment"> * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span> <a name="l00019"></a>00019 <span class="comment"> */</span> <a name="l00020"></a>00020 <span class="preprocessor">#ifndef DATETIME_H</span> <a name="l00021"></a>00021 <span class="preprocessor"></span><span class="preprocessor">#define DATETIME_H</span> <a name="l00022"></a>00022 <span class="preprocessor"></span> <a name="l00023"></a>00023 <span class="preprocessor">#include <qdatetime.h></span> <a name="l00024"></a>00024 <a name="l00025"></a>00025 <a name="l00039"></a><a class="code" href="classDateTime.html">00039</a> <span class="keyword">class </span><a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a> <a name="l00040"></a>00040 { <a name="l00041"></a>00041 <span class="keyword">public</span>: <a name="l00045"></a><a class="code" href="classDateTime.html#3ccfb87f7a2e9683b91964e32d907161">00045</a> <a class="code" href="classDateTime.html#3ccfb87f7a2e9683b91964e32d907161" title="Default constructor.">DateTime</a>() : mDateOnly(false), mTimeValid(false) { } <a name="l00047"></a><a class="code" href="classDateTime.html#72b769204e98746ad1dff0a6eebfb98a">00047</a> <a class="code" href="classDateTime.html#3ccfb87f7a2e9683b91964e32d907161" title="Default constructor.">DateTime</a>(<span class="keyword">const</span> QDate& d) : mDateTime(d), mDateOnly(true) { } <a name="l00049"></a><a class="code" href="classDateTime.html#e0153f33a63ea6b9f502f60b977bacc2">00049</a> <a class="code" href="classDateTime.html#3ccfb87f7a2e9683b91964e32d907161" title="Default constructor.">DateTime</a>(<span class="keyword">const</span> QDate& d, <span class="keyword">const</span> QTime& t) <a name="l00050"></a>00050 : mDateTime(d, t), mDateOnly(false), mTimeValid(true) { } <a name="l00055"></a><a class="code" href="classDateTime.html#5c3a92b333e13f96dcb3b5b505422d81">00055</a> <a class="code" href="classDateTime.html#3ccfb87f7a2e9683b91964e32d907161" title="Default constructor.">DateTime</a>(<span class="keyword">const</span> QDateTime& dt, <span class="keywordtype">bool</span> dateOnly = <span class="keyword">false</span>) <a name="l00056"></a>00056 : mDateTime(dt), mDateOnly(dateOnly), mTimeValid(true) <a name="l00057"></a>00057 { <span class="keywordflow">if</span> (dateOnly) mDateTime.setTime(QTime()); } <a name="l00061"></a><a class="code" href="classDateTime.html#b19daa0c03d0310994378ea2672994fc">00061</a> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& <a class="code" href="classDateTime.html#b19daa0c03d0310994378ea2672994fc" title="Assignment operator.">operator=</a>(<span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt) <a name="l00062"></a>00062 { mDateTime = dt.<a class="code" href="classDateTime.html#e43447310ec23a445c7f0301363f6d51">mDateTime</a>; mDateOnly = dt.<a class="code" href="classDateTime.html#6e8f4f51ee2fb145e8c793c311601623">mDateOnly</a>; mTimeValid = dt.<a class="code" href="classDateTime.html#bffa361cfb324f7317aede387e0d3c13">mTimeValid</a>; <span class="keywordflow">return</span> *<span class="keyword">this</span>; } <a name="l00066"></a><a class="code" href="classDateTime.html#866d792127d90a992bd7886a9e825725">00066</a> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& <a class="code" href="classDateTime.html#b19daa0c03d0310994378ea2672994fc" title="Assignment operator.">operator=</a>(<span class="keyword">const</span> QDateTime& dt) <a name="l00067"></a>00067 { mDateTime = dt; mDateOnly = <span class="keyword">false</span>; mTimeValid = <span class="keyword">true</span>; <span class="keywordflow">return</span> *<span class="keyword">this</span>; } <a name="l00071"></a><a class="code" href="classDateTime.html#52d02f54797b7a075df8888f0d38c0c8">00071</a> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& <a class="code" href="classDateTime.html#b19daa0c03d0310994378ea2672994fc" title="Assignment operator.">operator=</a>(<span class="keyword">const</span> QDate& d) <a name="l00072"></a>00072 { mDateTime.setDate(d); mDateTime.setTime(QTime()); mDateOnly = <span class="keyword">true</span>; <span class="keywordflow">return</span> *<span class="keyword">this</span>; } <a name="l00074"></a><a class="code" href="classDateTime.html#1048008cb7de2fbb592abd81c378b8e1">00074</a> <span class="keywordtype">bool</span> <a class="code" href="classDateTime.html#1048008cb7de2fbb592abd81c378b8e1" title="Returns true if the date is null and, if it is a date-time value, the time is also...">isNull</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> mDateTime.date().isNull() && (mDateOnly || mDateTime.time().isNull()); } <a name="l00076"></a><a class="code" href="classDateTime.html#d3814eef67c9447799162f6f334918a5">00076</a> <span class="keywordtype">bool</span> <a class="code" href="classDateTime.html#d3814eef67c9447799162f6f334918a5" title="Returns true if the date is valid and, if it is a date-time value, the time is also...">isValid</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> mDateTime.date().isValid() && (mDateOnly || mTimeValid && mDateTime.time().isValid()); } <a name="l00078"></a><a class="code" href="classDateTime.html#223a143ebc634254308d6d09e57e8d29">00078</a> <span class="keywordtype">bool</span> <a class="code" href="classDateTime.html#223a143ebc634254308d6d09e57e8d29" title="Returns true if it is date-only value.">isDateOnly</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> mDateOnly; } <a name="l00082"></a><a class="code" href="classDateTime.html#43e4a7572420c1b7526ca937bfa21ca3">00082</a> <span class="keywordtype">void</span> <a class="code" href="classDateTime.html#43e4a7572420c1b7526ca937bfa21ca3" title="Sets the value to be either date-only or date-time.">setDateOnly</a>(<span class="keywordtype">bool</span> d) { <span class="keywordflow">if</span> (d) mDateTime.setTime(QTime()); <a name="l00083"></a>00083 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (mDateOnly) mTimeValid = <span class="keyword">false</span>; <a name="l00084"></a>00084 mDateOnly = d; <a name="l00085"></a>00085 } <a name="l00087"></a><a class="code" href="classDateTime.html#cafd8b4c298ac28d161a054a37275133">00087</a> QDate <a class="code" href="classDateTime.html#cafd8b4c298ac28d161a054a37275133" title="Returns the date part of the value.">date</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> mDateTime.date(); } <a name="l00091"></a>00091 QTime <a class="code" href="classDateTime.html#6f9c20253cd2def3ebdf5adcef4406da" title="Returns the time part of the value.">time</a>() <span class="keyword">const</span>; <a name="l00096"></a>00096 QDateTime <a class="code" href="classDateTime.html#30cea2481bd710033d3834d9003910ee" title="Returns the date and time of the value.">dateTime</a>() <span class="keyword">const</span>; <a name="l00100"></a><a class="code" href="classDateTime.html#a16e49721f117cd7ee54e4c7beb89279">00100</a> QDateTime <a class="code" href="classDateTime.html#a16e49721f117cd7ee54e4c7beb89279" title="Returns the date and time of the value.">rawDateTime</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> mDateTime; } <a name="l00105"></a><a class="code" href="classDateTime.html#3740c0a6a593dd973777cc1e61df5530">00105</a> <span class="keywordtype">void</span> <span class="keyword">set</span>(<span class="keyword">const</span> QDateTime& dt, <span class="keywordtype">bool</span> dateOnly = <span class="keyword">false</span>) <a name="l00106"></a>00106 { <a name="l00107"></a>00107 mDateTime = dt; <a name="l00108"></a>00108 mDateOnly = dateOnly; <a name="l00109"></a>00109 <span class="keywordflow">if</span> (dateOnly) <a name="l00110"></a>00110 mDateTime.setTime(QTime()); <a name="l00111"></a>00111 mTimeValid = <span class="keyword">true</span>; <a name="l00112"></a>00112 } <a name="l00114"></a><a class="code" href="classDateTime.html#a648546677e56609627a1c5f92efd677">00114</a> <span class="keywordtype">void</span> <span class="keyword">set</span>(<span class="keyword">const</span> QDate& d, <span class="keyword">const</span> QTime& t) <a name="l00115"></a>00115 { mDateTime.setDate(d); mDateTime.setTime(t); mDateOnly = <span class="keyword">false</span>; mTimeValid = <span class="keyword">true</span>; } <a name="l00119"></a><a class="code" href="classDateTime.html#53c00bd620f3f363d6f1c83cbc9b61ea">00119</a> <span class="keywordtype">void</span> <a class="code" href="classDateTime.html#53c00bd620f3f363d6f1c83cbc9b61ea" title="Sets the time component of the value.">setTime</a>(<span class="keyword">const</span> QTime& t) { mDateTime.setTime(t); mDateOnly = <span class="keyword">false</span>; mTimeValid = <span class="keyword">true</span>; } <a name="l00124"></a><a class="code" href="classDateTime.html#07b48b4a2498dc6caef33bfeb07c28a8">00124</a> <span class="keywordtype">void</span> <a class="code" href="classDateTime.html#07b48b4a2498dc6caef33bfeb07c28a8" title="Sets the value to a specified date-time value.">setTime_t</a>(uint secs) { mDateTime.setTime_t(secs); mDateOnly = <span class="keyword">false</span>; mTimeValid = <span class="keyword">true</span>; } <a name="l00129"></a><a class="code" href="classDateTime.html#e3383baa492abf0f1816e68eeda7a79b">00129</a> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a> <a class="code" href="classDateTime.html#e3383baa492abf0f1816e68eeda7a79b" title="Returns a DateTime value secs seconds later than the value of this object.">addSecs</a>(<span class="keywordtype">int</span> n)<span class="keyword"> const</span> <a name="l00130"></a>00130 <span class="keyword"> </span>{ <a name="l00131"></a>00131 <span class="keywordflow">if</span> (mDateOnly) <a name="l00132"></a>00132 <span class="keywordflow">return</span> <a class="code" href="classDateTime.html#3ccfb87f7a2e9683b91964e32d907161" title="Default constructor.">DateTime</a>(mDateTime.date().addDays(n / (3600*24)), <span class="keyword">true</span>); <a name="l00133"></a>00133 <span class="keywordflow">else</span> <a name="l00134"></a>00134 <span class="keywordflow">return</span> <a class="code" href="classDateTime.html#3ccfb87f7a2e9683b91964e32d907161" title="Default constructor.">DateTime</a>(mDateTime.addSecs(n), <span class="keyword">false</span>); <a name="l00135"></a>00135 } <a name="l00140"></a><a class="code" href="classDateTime.html#8a9e7e7ebd994124acab06a3dbff10a6">00140</a> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a> <a class="code" href="classDateTime.html#8a9e7e7ebd994124acab06a3dbff10a6" title="Returns a DateTime value mins minutes later than the value of this object.">addMins</a>(<span class="keywordtype">int</span> n)<span class="keyword"> const</span> <a name="l00141"></a>00141 <span class="keyword"> </span>{ <a name="l00142"></a>00142 <span class="keywordflow">if</span> (mDateOnly) <a name="l00143"></a>00143 <span class="keywordflow">return</span> <a class="code" href="classDateTime.html#3ccfb87f7a2e9683b91964e32d907161" title="Default constructor.">DateTime</a>(mDateTime.addDays(n / (60*24)), <span class="keyword">true</span>); <a name="l00144"></a>00144 <span class="keywordflow">else</span> <a name="l00145"></a>00145 <span class="keywordflow">return</span> <a class="code" href="classDateTime.html#3ccfb87f7a2e9683b91964e32d907161" title="Default constructor.">DateTime</a>(mDateTime.addSecs(n * 60), <span class="keyword">false</span>); <a name="l00146"></a>00146 } <a name="l00148"></a><a class="code" href="classDateTime.html#8547abf8aec4efa7c6f9117c7e06a155">00148</a> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a> <a class="code" href="classDateTime.html#8547abf8aec4efa7c6f9117c7e06a155" title="Returns a DateTime value n days later than the value of this object.">addDays</a>(<span class="keywordtype">int</span> n)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classDateTime.html#3ccfb87f7a2e9683b91964e32d907161" title="Default constructor.">DateTime</a>(mDateTime.addDays(n), mDateOnly); } <a name="l00150"></a><a class="code" href="classDateTime.html#ee60316cce680c13658e7611b39c03b9">00150</a> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a> <a class="code" href="classDateTime.html#ee60316cce680c13658e7611b39c03b9" title="Returns a DateTime value n months later than the value of this object.">addMonths</a>(<span class="keywordtype">int</span> n)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classDateTime.html#3ccfb87f7a2e9683b91964e32d907161" title="Default constructor.">DateTime</a>(mDateTime.addMonths(n), mDateOnly); } <a name="l00152"></a><a class="code" href="classDateTime.html#669eaa82d8fe1e107effcd903ecc2ae6">00152</a> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a> <a class="code" href="classDateTime.html#669eaa82d8fe1e107effcd903ecc2ae6" title="Returns a DateTime value n years later than the value of this object.">addYears</a>(<span class="keywordtype">int</span> n)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classDateTime.html#3ccfb87f7a2e9683b91964e32d907161" title="Default constructor.">DateTime</a>(mDateTime.addYears(n), mDateOnly); } <a name="l00154"></a><a class="code" href="classDateTime.html#ee5481854648702d85b96d55ae03bdc7">00154</a> <span class="keywordtype">int</span> <a class="code" href="classDateTime.html#ee5481854648702d85b96d55ae03bdc7" title="Returns the number of days from this date or date-time to dt.">daysTo</a>(<span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt)<span class="keyword"> const</span> <a name="l00155"></a>00155 <span class="keyword"> </span>{ <span class="keywordflow">return</span> (mDateOnly || dt.<a class="code" href="classDateTime.html#6e8f4f51ee2fb145e8c793c311601623">mDateOnly</a>) ? mDateTime.date().daysTo(dt.<a class="code" href="classDateTime.html#cafd8b4c298ac28d161a054a37275133" title="Returns the date part of the value.">date</a>()) : mDateTime.daysTo(dt.<a class="code" href="classDateTime.html#e43447310ec23a445c7f0301363f6d51">mDateTime</a>); } <a name="l00160"></a><a class="code" href="classDateTime.html#25f195a83e3b87c98e410aec5fd9b09d">00160</a> <span class="keywordtype">int</span> <a class="code" href="classDateTime.html#25f195a83e3b87c98e410aec5fd9b09d" title="Returns the number of minutes from this date or date-time to dt.">minsTo</a>(<span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt)<span class="keyword"> const</span> <a name="l00161"></a>00161 <span class="keyword"> </span>{ <span class="keywordflow">return</span> (mDateOnly || dt.<a class="code" href="classDateTime.html#6e8f4f51ee2fb145e8c793c311601623">mDateOnly</a>) ? mDateTime.date().daysTo(dt.<a class="code" href="classDateTime.html#cafd8b4c298ac28d161a054a37275133" title="Returns the date part of the value.">date</a>()) * 24*60 : mDateTime.secsTo(dt.<a class="code" href="classDateTime.html#e43447310ec23a445c7f0301363f6d51">mDateTime</a>) / 60; } <a name="l00166"></a><a class="code" href="classDateTime.html#ccdb719c15b46bcd552a443c04511290">00166</a> <span class="keywordtype">int</span> <a class="code" href="classDateTime.html#ccdb719c15b46bcd552a443c04511290" title="Returns the number of seconds from this date or date-time to dt.">secsTo</a>(<span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt)<span class="keyword"> const</span> <a name="l00167"></a>00167 <span class="keyword"> </span>{ <span class="keywordflow">return</span> (mDateOnly || dt.<a class="code" href="classDateTime.html#6e8f4f51ee2fb145e8c793c311601623">mDateOnly</a>) ? mDateTime.date().daysTo(dt.<a class="code" href="classDateTime.html#cafd8b4c298ac28d161a054a37275133" title="Returns the date part of the value.">date</a>()) * 24*3600 : mDateTime.secsTo(dt.<a class="code" href="classDateTime.html#e43447310ec23a445c7f0301363f6d51">mDateTime</a>); } <a name="l00172"></a><a class="code" href="classDateTime.html#b56d99004202647432f26dd4a9c29495">00172</a> QString <a class="code" href="classDateTime.html#b56d99004202647432f26dd4a9c29495" title="Returns the value as a string.">toString</a>(Qt::DateFormat f = Qt::TextDate)<span class="keyword"> const</span> <a name="l00173"></a>00173 <span class="keyword"> </span>{ <a name="l00174"></a>00174 <span class="keywordflow">if</span> (mDateOnly) <a name="l00175"></a>00175 <span class="keywordflow">return</span> mDateTime.date().toString(f); <a name="l00176"></a>00176 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (mTimeValid) <a name="l00177"></a>00177 <span class="keywordflow">return</span> mDateTime.toString(f); <a name="l00178"></a>00178 <span class="keywordflow">else</span> <a name="l00179"></a>00179 <span class="keywordflow">return</span> QString::null; <a name="l00180"></a>00180 } <a name="l00185"></a><a class="code" href="classDateTime.html#6deb416158a02c4ec2b614513a993d0e">00185</a> QString <a class="code" href="classDateTime.html#b56d99004202647432f26dd4a9c29495" title="Returns the value as a string.">toString</a>(<span class="keyword">const</span> QString& format)<span class="keyword"> const</span> <a name="l00186"></a>00186 <span class="keyword"> </span>{ <a name="l00187"></a>00187 <span class="keywordflow">if</span> (mDateOnly) <a name="l00188"></a>00188 <span class="keywordflow">return</span> mDateTime.date().toString(format); <a name="l00189"></a>00189 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (mTimeValid) <a name="l00190"></a>00190 <span class="keywordflow">return</span> mDateTime.toString(format); <a name="l00191"></a>00191 <span class="keywordflow">else</span> <a name="l00192"></a>00192 <span class="keywordflow">return</span> QString::null; <a name="l00193"></a>00193 } <a name="l00198"></a>00198 QString <a class="code" href="classDateTime.html#96e0d5dd9803853a8f9c1186eadb8da1" title="Returns the value as a string, formatted according to the user&#39;s locale.">formatLocale</a>(<span class="keywordtype">bool</span> shortFormat = <span class="keyword">true</span>) <span class="keyword">const</span>; <a name="l00202"></a><a class="code" href="classDateTime.html#d522b76f0985cc8682180168e153b987">00202</a> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classDateTime.html#d522b76f0985cc8682180168e153b987" title="Sets the start-of-day time.">setStartOfDay</a>(<span class="keyword">const</span> QTime& sod) { mStartOfDay = sod; } <a name="l00204"></a><a class="code" href="classDateTime.html#1e9d76b024c1b0acfcbad02ac1780205">00204</a> <span class="keyword">static</span> QTime <a class="code" href="classDateTime.html#1e9d76b024c1b0acfcbad02ac1780205" title="Returns the start-of-day time.">startOfDay</a>() { <span class="keywordflow">return</span> mStartOfDay; } <a name="l00205"></a>00205 <a name="l00206"></a>00206 <span class="keyword">friend</span> <span class="keywordtype">bool</span> <a class="code" href="classDateTime.html#91d7fafdbeefa54fd0a1d3b94603e080" title="Returns true if the two values are equal.">operator==</a>(<span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt1, <span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt2); <a name="l00207"></a>00207 <span class="keyword">friend</span> <span class="keywordtype">bool</span> <a class="code" href="classDateTime.html#02e5f64a02e89468a0941b89aeaffcc5" title="Returns true if the dt1 is earlier than dt2.">operator<</a>(<span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt1, <span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt2); <a name="l00208"></a>00208 <a name="l00209"></a>00209 <span class="keyword">private</span>: <a name="l00210"></a>00210 <span class="keyword">static</span> QTime mStartOfDay; <a name="l00211"></a>00211 QDateTime mDateTime; <a name="l00212"></a>00212 <span class="keywordtype">bool</span> mDateOnly; <a name="l00213"></a>00213 <span class="keywordtype">bool</span> mTimeValid; <span class="comment">// whether the time is potentially valid - applicable only if mDateOnly false</span> <a name="l00214"></a>00214 }; <a name="l00215"></a>00215 <a name="l00217"></a>00217 <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt1, <span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt2); <a name="l00222"></a>00222 <span class="keywordtype">bool</span> operator<(<span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt1, <span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt2); <a name="l00224"></a>00224 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt1, <span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt2) { <span class="keywordflow">return</span> !operator==(dt1, dt2); } <a name="l00229"></a>00229 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator>(<span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt1, <span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt2) { <span class="keywordflow">return</span> operator<(dt2, dt1); } <a name="l00234"></a>00234 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator>=(<span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt1, <span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt2) { <span class="keywordflow">return</span> !operator<(dt1, dt2); } <a name="l00239"></a>00239 <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator<=(<span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt1, <span class="keyword">const</span> <a class="code" href="classDateTime.html" title="A QDateTime with date-only option.">DateTime</a>& dt2) { <span class="keywordflow">return</span> !operator<(dt2, dt1); } <a name="l00240"></a>00240 <a name="l00241"></a>00241 <span class="preprocessor">#endif // DATETIME_H</span> </pre></div></div> </div></div> </td> </tr> <tr> <td valign="top" id="leftmenu" width="25%"> <a name="navigation"></a> <div class="menu_box"><h2>kalarm/lib</h2> <div class="nav_list"> <ul><li><a href="index.html">Main Page</a></li><li><a href="hierarchy.html">Class Hierarchy</a></li><li><a href="classes.html">Alphabetical List</a></li><li><a href="annotated.html">Class List</a></li><li><a href="files.html">File List</a></li><li><a href="functions.html">Class Members</a></li></ul> <!-- <h2>Class Picker</h2> <div style="text-align: center;"> <form name="guideform"> <select name="guidelinks" style="width:100%;" onChange="window.location=document.guideform.guidelinks.options[document.guideform.guidelinks.selectedIndex].value"> <option value="annotated.html">-- Choose --</option> <option value="classButtonGroup.html">buttongroup</option>, <option value="classCheckBox.html">checkbox</option>, <option value="classColourCombo.html">colourcombo</option>, <option value="classColourList.html">colourlist</option>, <option value="classComboBox.html">combobox</option>, <option value="classDailyTimer.html">dailytimer</option>, <option value="classDateEdit.html">dateedit</option>, <option value="classDateTime.html">datetime</option>, <option value="classLabel.html">label</option>, <option value="classLineEdit.html">lineedit</option>, <option value="classMessageBox.html">messagebox</option>, <option value="classMidnightTimer.html">midnighttimer</option>, <option value="classMinuteTimer.html">minutetimer</option>, <option value="classPushButton.html">pushbutton</option>, <option value="classRadioButton.html">radiobutton</option>, <option value="classShellProcess.html">shellprocess</option>, <option value="classSlider.html">slider</option>, <option value="classSpinBox.html">spinbox</option>, <option value="classSpinBox2.html">spinbox2</option>, <option value="classSynchTimer.html">synchtimer</option>, <option value="classTimeEdit.html">timeedit</option>, <option value="classTimePeriod.html">timeperiod</option>, <option value="classTimeSpinBox.html">timespinbox</option>, </select> </form> </div> --> </div></div> <div class="menu_box"><h2>API Dox</h2> <div class="nav_list"> <ul> <li><a href="../../../akregator/html/index.html">akregator</a></li><li> <a href="../../../akregator/src/html/index.html">src</a></li><li> <a href="../../../akregator/src/librss/html/index.html">librss</a></li><li><a href="../../../certmanager/html/index.html">certmanager</a></li><li> <a href="../../../certmanager/lib/html/index.html">lib</a></li><li><a href="../../../kaddressbook/html/index.html">kaddressbook</a></li><li><a href="../../../kalarm/html/index.html">kalarm</a></li><li> <a href="../../../kalarm/lib/html/index.html">lib</a></li><li><a href="../../../kandy/html/index.html">kandy</a></li><li><a href="../../../karm/html/index.html">karm</a></li><li><a href="../../../kdgantt/html/index.html">kdgantt</a></li><li><a href="../../../kgantt/html/index.html">kgantt</a></li><li><a href="../../../kioslaves/html/index.html">kioslaves</a></li><li> <a href="../../../kioslaves/imap4/html/index.html">imap4</a></li><li> <a href="../../../kioslaves/mbox/html/index.html">mbox</a></li><li><a href="../../../kitchensync/html/index.html">kitchensync</a></li><li><a href="../../../kmail/html/index.html">kmail</a></li><li><a href="../../../knotes/html/index.html">knotes</a></li><li><a href="../../../konsolekalendar/html/index.html">konsolekalendar</a></li><li><a href="../../../kontact/html/index.html">kontact</a></li><li><a href="../../../korganizer/html/index.html">korganizer</a></li><li><a href="../../../kpilot/html/index.html">kpilot</a></li><li> <a href="../../../kpilot/kpilot/html/index.html">kpilot</a></li><li> <a href="../../../kpilot/lib/html/index.html">lib</a></li><li><a href="../../../libemailfunctions/html/index.html">libemailfunctions</a></li><li><a href="../../../libkcal/html/index.html">libkcal</a></li><li><a href="../../../libkdepim/html/index.html">libkdepim</a></li><li><a href="../../../libkholidays/html/index.html">libkholidays</a></li><li><a href="../../../libkmime/html/index.html">libkmime</a></li><li><a href="../../../libkpgp/html/index.html">libkpgp</a></li><li><a href="../../../libkpimidentities/html/index.html">libkpimidentities</a></li> </ul></div></div> </td> </tr> </table> <span class="doNotDisplay"> <a href="http://www.kde.org/" accesskey="8">KDE Home</a> | <a href="http://accessibility.kde.org/" accesskey="9">KDE Accessibility Home</a> | <a href="http://www.kde.org/media/accesskeys.php" accesskey="0">Description of Access Keys</a> </span> <div style="height: 8px"></div> <div id="footer"> <div id="footer_left"> Maintained by <a href="mailto:groot@kde.org">Adriaan de Groot</a> and <a href="mailto:winter@kde.org">Allen Winter</a>. <br/> KDE and K Desktop Environment are trademarks of <a href="http://www.kde.org/areas/kde-ev/" title="Homepage of the KDE non-profit Organization">KDE e.V.</a> | <a href="http://www.kde.org/contact/impressum.php">Legal</a> </div> <div id="footer_right"><img src="/media/images/footer_right.png" style="margin: 0px" alt="" /></div> </div> <!-- WARNING: DO NOT SEND MAIL TO THE FOLLOWING EMAIL ADDRESS! YOU WILL BE BLOCKED INSTANTLY AND PERMANENTLY! <a href="mailto:aaaatrap-425acc3b5374943f@kde.org">Block me</a> WARNING END --> </body> </html>