summaryrefslogtreecommitdiff
authortille <tille>2003-05-14 15:24:00 (UTC)
committer tille <tille>2003-05-14 15:24:00 (UTC)
commitdbda71abdc7c13ac0acde21320ee00726d95dec4 (patch) (side-by-side diff)
tree4049f593592b6d7e8a32d9837819c96c6592ae38
parent20509790738fae5e63a081183c8c3be3891a5bdb (diff)
downloadopie-dbda71abdc7c13ac0acde21320ee00726d95dec4.zip
opie-dbda71abdc7c13ac0acde21320ee00726d95dec4.tar.gz
opie-dbda71abdc7c13ac0acde21320ee00726d95dec4.tar.bz2
lastHitField impl
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libopie/pim/oevent.cpp20
-rw-r--r--libopie/pim/otodo.cpp12
-rw-r--r--libopie2/opiepim/oevent.cpp20
-rw-r--r--libopie2/opiepim/otodo.cpp12
4 files changed, 46 insertions, 18 deletions
diff --git a/libopie/pim/oevent.cpp b/libopie/pim/oevent.cpp
index cda12f9..2b138c0 100644
--- a/libopie/pim/oevent.cpp
+++ b/libopie/pim/oevent.cpp
@@ -183,74 +183,84 @@ QDateTime OEvent::endDateTime()const {
}
QDateTime OEvent::endDateTimeInZone()const {
/* if no timezone, or all day event or if the current and this timeZone match... */
if (data->timezone.isEmpty() || data->isAllDay || data->timezone == OTimeZone::current().timeZone() ) return endDateTime();
OTimeZone zone(data->timezone );
return zone.toDateTime( data->end, OTimeZone::current() );
}
void OEvent::setEndDateTime( const QDateTime& dt ) {
changeOrModify();
data->end = dt;
}
bool OEvent::isMultipleDay()const {
return data->end.date().day() - data->start.date().day();
}
bool OEvent::isAllDay()const {
return data->isAllDay;
}
void OEvent::setAllDay( bool allDay ) {
changeOrModify();
data->isAllDay = allDay;
if (allDay ) data->timezone = "UTC";
}
void OEvent::setTimeZone( const QString& tz ) {
changeOrModify();
data->timezone = tz;
}
QString OEvent::timeZone()const {
if (data->isAllDay ) return QString::fromLatin1("UTC");
return data->timezone;
}
bool OEvent::match( const QRegExp& re )const {
- if ( re.match( data->description ) != -1 )
+ if ( re.match( data->description ) != -1 ){
+ setLastHitField( DatebookDescription );
return true;
- if ( re.match( data->note ) != -1 )
+ }
+ if ( re.match( data->note ) != -1 ){
+ setLastHitField( Note );
return true;
- if ( re.match( data->location ) != -1 )
+ }
+ if ( re.match( data->location ) != -1 ){
+ setLastHitField( Location );
return true;
- if ( re.match( data->start.toString() ) != -1 )
+ }
+ if ( re.match( data->start.toString() ) != -1 ){
+ setLastHitField( StartDateTime );
return true;
- if ( re.match( data->end.toString() ) != -1 )
+ }
+ if ( re.match( data->end.toString() ) != -1 ){
+ setLastHitField( EndDateTime );
return true;
+ }
return false;
}
QString OEvent::toRichText()const {
QString text;
if ( !description().isEmpty() ) {
text += "<b>" + QObject::tr( "Description:") + "</b><br>";
text += Qtopia::escapeString(description() ).
replace(QRegExp( "[\n]"), "<br>" ) + "<br>";
}
if ( startDateTime().isValid() ) {
text += "<b>" + QObject::tr( "Start:") + "</b> ";
text += Qtopia::escapeString(startDateTime().toString() ).
replace(QRegExp( "[\n]"), "<br>" ) + "<br>";
}
if ( endDateTime().isValid() ) {
text += "<b>" + QObject::tr( "End:") + "</b> ";
text += Qtopia::escapeString(endDateTime().toString() ).
replace(QRegExp( "[\n]"), "<br>" ) + "<br>";
}
if ( !note().isEmpty() ) {
text += "<b>" + QObject::tr( "Note:") + "</b><br>";
text += note();
// text += Qtopia::escapeString(note() ).
// replace(QRegExp( "[\n]"), "<br>" ) + "<br>";
}
return text;
}
QString OEvent::toShortText()const {
QString text;
text += QString::number( startDateTime().date().day() );
text += ".";
text += QString::number( startDateTime().date().month() );
diff --git a/libopie/pim/otodo.cpp b/libopie/pim/otodo.cpp
index a29d88e..e087a00 100644
--- a/libopie/pim/otodo.cpp
+++ b/libopie/pim/otodo.cpp
@@ -76,71 +76,75 @@ OTodo::OTodo(bool completed, int priority,
data->date = date;
data->isCompleted = completed;
data->hasDate = hasDate;
data->priority = priority;
data->sum = summary;
data->prog = progress;
data->desc = Qtopia::simplifyMultiLineSpace(description );
}
OTodo::OTodo(bool completed, int priority,
const QStringList &category,
const QString& summary,
const QString &description,
ushort progress,
bool hasDate, QDate date, int uid )
: OPimRecord( uid )
{
// qWarning("OTodoData" + summary);
setCategories( idsFromString( category.join(";") ) );
data = new OTodoData;
data->date = date;
data->isCompleted = completed;
data->hasDate = hasDate;
data->priority = priority;
data->sum = summary;
data->prog = progress;
data->desc = Qtopia::simplifyMultiLineSpace(description );
}
bool OTodo::match( const QRegExp &regExp )const
{
if( QString::number( data->priority ).find( regExp ) != -1 ){
- return true;
+ setLastHitField( Priority );
+ return true;
}else if( data->hasDate && data->date.toString().find( regExp) != -1 ){
- return true;
+ setLastHitField( HasDate );
+ return true;
}else if(data->desc.find( regExp ) != -1 ){
- return true;
+ setLastHitField( Description );
+ return true;
}else if(data->sum.find( regExp ) != -1 ) {
- return true;
+ setLastHitField( Summary );
+ return true;
}
return false;
}
bool OTodo::isCompleted() const
{
return data->isCompleted;
}
bool OTodo::hasDueDate() const
{
return data->hasDate;
}
bool OTodo::hasStartDate()const {
return data->start.isValid();
}
bool OTodo::hasCompletedDate()const {
return data->completed.isValid();
}
int OTodo::priority()const
{
return data->priority;
}
QString OTodo::summary() const
{
return data->sum;
}
ushort OTodo::progress() const
{
return data->prog;
}
QDate OTodo::dueDate()const
{
return data->date;
diff --git a/libopie2/opiepim/oevent.cpp b/libopie2/opiepim/oevent.cpp
index cda12f9..2b138c0 100644
--- a/libopie2/opiepim/oevent.cpp
+++ b/libopie2/opiepim/oevent.cpp
@@ -183,74 +183,84 @@ QDateTime OEvent::endDateTime()const {
}
QDateTime OEvent::endDateTimeInZone()const {
/* if no timezone, or all day event or if the current and this timeZone match... */
if (data->timezone.isEmpty() || data->isAllDay || data->timezone == OTimeZone::current().timeZone() ) return endDateTime();
OTimeZone zone(data->timezone );
return zone.toDateTime( data->end, OTimeZone::current() );
}
void OEvent::setEndDateTime( const QDateTime& dt ) {
changeOrModify();
data->end = dt;
}
bool OEvent::isMultipleDay()const {
return data->end.date().day() - data->start.date().day();
}
bool OEvent::isAllDay()const {
return data->isAllDay;
}
void OEvent::setAllDay( bool allDay ) {
changeOrModify();
data->isAllDay = allDay;
if (allDay ) data->timezone = "UTC";
}
void OEvent::setTimeZone( const QString& tz ) {
changeOrModify();
data->timezone = tz;
}
QString OEvent::timeZone()const {
if (data->isAllDay ) return QString::fromLatin1("UTC");
return data->timezone;
}
bool OEvent::match( const QRegExp& re )const {
- if ( re.match( data->description ) != -1 )
+ if ( re.match( data->description ) != -1 ){
+ setLastHitField( DatebookDescription );
return true;
- if ( re.match( data->note ) != -1 )
+ }
+ if ( re.match( data->note ) != -1 ){
+ setLastHitField( Note );
return true;
- if ( re.match( data->location ) != -1 )
+ }
+ if ( re.match( data->location ) != -1 ){
+ setLastHitField( Location );
return true;
- if ( re.match( data->start.toString() ) != -1 )
+ }
+ if ( re.match( data->start.toString() ) != -1 ){
+ setLastHitField( StartDateTime );
return true;
- if ( re.match( data->end.toString() ) != -1 )
+ }
+ if ( re.match( data->end.toString() ) != -1 ){
+ setLastHitField( EndDateTime );
return true;
+ }
return false;
}
QString OEvent::toRichText()const {
QString text;
if ( !description().isEmpty() ) {
text += "<b>" + QObject::tr( "Description:") + "</b><br>";
text += Qtopia::escapeString(description() ).
replace(QRegExp( "[\n]"), "<br>" ) + "<br>";
}
if ( startDateTime().isValid() ) {
text += "<b>" + QObject::tr( "Start:") + "</b> ";
text += Qtopia::escapeString(startDateTime().toString() ).
replace(QRegExp( "[\n]"), "<br>" ) + "<br>";
}
if ( endDateTime().isValid() ) {
text += "<b>" + QObject::tr( "End:") + "</b> ";
text += Qtopia::escapeString(endDateTime().toString() ).
replace(QRegExp( "[\n]"), "<br>" ) + "<br>";
}
if ( !note().isEmpty() ) {
text += "<b>" + QObject::tr( "Note:") + "</b><br>";
text += note();
// text += Qtopia::escapeString(note() ).
// replace(QRegExp( "[\n]"), "<br>" ) + "<br>";
}
return text;
}
QString OEvent::toShortText()const {
QString text;
text += QString::number( startDateTime().date().day() );
text += ".";
text += QString::number( startDateTime().date().month() );
diff --git a/libopie2/opiepim/otodo.cpp b/libopie2/opiepim/otodo.cpp
index a29d88e..e087a00 100644
--- a/libopie2/opiepim/otodo.cpp
+++ b/libopie2/opiepim/otodo.cpp
@@ -76,71 +76,75 @@ OTodo::OTodo(bool completed, int priority,
data->date = date;
data->isCompleted = completed;
data->hasDate = hasDate;
data->priority = priority;
data->sum = summary;
data->prog = progress;
data->desc = Qtopia::simplifyMultiLineSpace(description );
}
OTodo::OTodo(bool completed, int priority,
const QStringList &category,
const QString& summary,
const QString &description,
ushort progress,
bool hasDate, QDate date, int uid )
: OPimRecord( uid )
{
// qWarning("OTodoData" + summary);
setCategories( idsFromString( category.join(";") ) );
data = new OTodoData;
data->date = date;
data->isCompleted = completed;
data->hasDate = hasDate;
data->priority = priority;
data->sum = summary;
data->prog = progress;
data->desc = Qtopia::simplifyMultiLineSpace(description );
}
bool OTodo::match( const QRegExp &regExp )const
{
if( QString::number( data->priority ).find( regExp ) != -1 ){
- return true;
+ setLastHitField( Priority );
+ return true;
}else if( data->hasDate && data->date.toString().find( regExp) != -1 ){
- return true;
+ setLastHitField( HasDate );
+ return true;
}else if(data->desc.find( regExp ) != -1 ){
- return true;
+ setLastHitField( Description );
+ return true;
}else if(data->sum.find( regExp ) != -1 ) {
- return true;
+ setLastHitField( Summary );
+ return true;
}
return false;
}
bool OTodo::isCompleted() const
{
return data->isCompleted;
}
bool OTodo::hasDueDate() const
{
return data->hasDate;
}
bool OTodo::hasStartDate()const {
return data->start.isValid();
}
bool OTodo::hasCompletedDate()const {
return data->completed.isValid();
}
int OTodo::priority()const
{
return data->priority;
}
QString OTodo::summary() const
{
return data->sum;
}
ushort OTodo::progress() const
{
return data->prog;
}
QDate OTodo::dueDate()const
{
return data->date;