summaryrefslogtreecommitdiff
path: root/libopie
authorzecke <zecke>2002-06-16 16:34:10 (UTC)
committer zecke <zecke>2002-06-16 16:34:10 (UTC)
commit3b8192d0f5a41c40092af48df8abc39aa3d1c355 (patch) (side-by-side diff)
treec1f5e0211a16bb4ceb2d78ec7a76e1bffdae088b /libopie
parent23c2d100ed9070d82f956cdcb7364f5627aa0600 (diff)
downloadopie-3b8192d0f5a41c40092af48df8abc39aa3d1c355.zip
opie-3b8192d0f5a41c40092af48df8abc39aa3d1c355.tar.gz
opie-3b8192d0f5a41c40092af48df8abc39aa3d1c355.tar.bz2
implement progress
Diffstat (limited to 'libopie') (more/less context) (ignore whitespace changes)
-rw-r--r--libopie/oprocess.h2
-rw-r--r--libopie/tododb.cpp8
-rw-r--r--libopie/todoevent.cpp21
-rw-r--r--libopie/todoevent.h11
4 files changed, 37 insertions, 5 deletions
diff --git a/libopie/oprocess.h b/libopie/oprocess.h
index ce3c87d..fd726b4 100644
--- a/libopie/oprocess.h
+++ b/libopie/oprocess.h
@@ -21,13 +21,13 @@
// having to take care of Un*x specific implementation details
//
// version 0.3.1, Jan 8th 1998
//
// (C) Christian Czezatke
// e9025461@student.tuwien.ac.at
-// Ported by Holger Freyther
+// Ported by Holger Freyther to the Open Palmtop Integrated Environment
//
#ifndef __kprocess_h__
#define __kprocess_h__
#include <sys/types.h> // for pid_t
diff --git a/libopie/tododb.cpp b/libopie/tododb.cpp
index 6b10ec2..1e40c40 100644
--- a/libopie/tododb.cpp
+++ b/libopie/tododb.cpp
@@ -21,12 +21,13 @@ public:
for( QValueList<ToDoEvent>::ConstIterator it = m_todos.begin(); it != m_todos.end(); ++it ){
XMLElement::AttributeMap map;
XMLElement *task = new XMLElement();
map.insert( "Completed", QString::number((int)(*it).isCompleted() ) );
map.insert( "HasDate", QString::number((int)(*it).hasDate() ) );
map.insert( "Priority", QString::number( (*it).priority() ) );
+ map.insert( "Progress", QString::number( (*it).progress() ) );
map.insert( "Summary", (*it).summary() );
QArray<int> arrat = (*it).categories();
QString attr;
for(uint i=0; i < arrat.count(); i++ ){
attr.append(QString::number(arrat[i])+";" );
}
@@ -79,12 +80,19 @@ public:
bool ok;
int dumInt;
// completed
dummy = element->attribute("Completed" );
dumInt = dummy.toInt(&ok );
if(ok ) event.setCompleted( dumInt == 0 ? false : true );
+ // progress
+ dummy = element->attribute("Progress" );
+ {
+ ushort dumShort = dummy.toUShort(&ok);
+ event.setProgress( dumShort );
+
+ }
// hasDate
dummy = element->attribute("HasDate" );
dumInt = dummy.toInt(&ok );
if(ok ) event.setHasDate( dumInt == 0 ? false: true );
// set the date
bool hasDa = dumInt;
diff --git a/libopie/todoevent.cpp b/libopie/todoevent.cpp
index fb7073c..b35ac9d 100644
--- a/libopie/todoevent.cpp
+++ b/libopie/todoevent.cpp
@@ -18,20 +18,22 @@ ToDoEvent::ToDoEvent(const ToDoEvent &event )
}
ToDoEvent::ToDoEvent(bool completed, int priority,
const QStringList &category,
const QString& summary,
const QString &description,
+ ushort progress,
bool hasDate, QDate date, int uid )
{
m_date = date;
m_isCompleted = completed;
m_hasDate = hasDate;
m_priority = priority;
m_category = category;
m_sum = summary;
+ m_prog = progress;
m_desc = Qtopia::simplifyMultiLineSpace(description );
if (uid == -1 ) {
Qtopia::UidGen *uidgen = new Qtopia::UidGen();
uid = uidgen->generate();
delete uidgen;
}// generate the ids
@@ -75,12 +77,16 @@ QString ToDoEvent::extra(const QString& )const
return QString::null;
}
QString ToDoEvent::summary() const
{
return m_sum;
}
+ushort ToDoEvent::progress() const
+{
+ return m_prog;
+}
void ToDoEvent::insertCategory(const QString &str )
{
m_category.append( str );
}
void ToDoEvent::clearCategories()
{
@@ -136,13 +142,16 @@ void ToDoEvent::setDate( QDate date )
bool ToDoEvent::isOverdue( )
{
if( m_hasDate )
return QDate::currentDate() > m_date;
return false;
}
-
+void ToDoEvent::setProgress(ushort progress )
+{
+ m_prog = progress;
+}
/*!
Returns a richt text string
*/
QString ToDoEvent::richText() const
{
QString text;
@@ -150,16 +159,18 @@ QString ToDoEvent::richText() const
// Description of the todo
if ( !description().isEmpty() ){
text += "<b>" + QObject::tr( "Summary:") + "</b><br>";
text += Qtopia::escapeString(summary() ).replace(QRegExp( "[\n]"), "<br>" ) + "<br>";
text += "<b>" + QObject::tr( "Description:" ) + "</b><br>";
- text += Qtopia::escapeString(description() ).replace(QRegExp( "[\n]"), "<br>" ) + "<br>";
+ text += Qtopia::escapeString(description() ).replace(QRegExp( "[\n]"), "<br>" ) + "<br><br><br>";
}
text += "<b>" + QObject::tr( "Priority:") +" </b>"
- + QString::number( priority() ) + "<br>";
+ + QString::number( priority() ) + " <br>";
+ text += "<b>" + QObject::tr( "Progress:") + " </b>"
+ + QString::number( progress() ) + " %<br>";
if (hasDate() ){
text += "<b>" + QObject::tr( "Deadline:") + " </b>";
text += date().toString();
text += "<br>";
}
@@ -183,13 +194,13 @@ QString ToDoEvent::richText() const
text += "<br>";
return text;
}
bool ToDoEvent::operator<( const ToDoEvent &toDoEvent )const{
if( !hasDate() && !toDoEvent.hasDate() ) return true;
- if( !hasDate() && toDoEvent.hasDate() ) return true;
+ if( !hasDate() && toDoEvent.hasDate() ) return false;
if( hasDate() && toDoEvent.hasDate() ){
if( date() == toDoEvent.date() ){ // let's the priority decide
return priority() < toDoEvent.priority();
}else{
return date() < toDoEvent.date();
}
@@ -235,12 +246,13 @@ bool ToDoEvent::operator>=(const ToDoEvent &toDoEvent )const
}
return true;
}
bool ToDoEvent::operator==(const ToDoEvent &toDoEvent )const
{
if( m_priority == toDoEvent.m_priority &&
+ m_priority == toDoEvent.m_prog &&
m_isCompleted == toDoEvent.m_isCompleted &&
m_hasDate == toDoEvent.m_hasDate &&
m_date == toDoEvent.m_date &&
m_category == toDoEvent.m_category &&
m_sum == toDoEvent.m_sum &&
m_desc == toDoEvent.m_desc )
@@ -254,12 +266,13 @@ ToDoEvent &ToDoEvent::operator=(const ToDoEvent &item )
m_hasDate = item.m_hasDate;
m_priority = item.m_priority;
m_category = item.m_category;
m_desc = item.m_desc;
m_uid = item.m_uid;
m_sum = item.m_sum;
+ m_prog = item.m_prog;
return *this;
}
diff --git a/libopie/todoevent.h b/libopie/todoevent.h
index 7454241..de4623f 100644
--- a/libopie/todoevent.h
+++ b/libopie/todoevent.h
@@ -23,12 +23,13 @@ class ToDoEvent {
@param uid what is the UUID of this Event
**/
ToDoEvent( bool completed = false, int priority = NORMAL,
const QStringList &category = QStringList(),
const QString &summary = QString::null ,
const QString &description = QString::null,
+ ushort progress = 0,
bool hasDate = false, QDate date = QDate::currentDate(), int uid = -1 );
/* Copy c'tor
**/
ToDoEvent(const ToDoEvent & );
@@ -44,12 +45,16 @@ class ToDoEvent {
/*
What is the priority?
**/
int priority()const ;
+ /**
+ * progress as ushort 0, 20, 40, 60, 80 or 100%
+ */
+ ushort progress() const;
/*
All category numbers as QString in a List
**/
QStringList allCategories()const;
/*
@@ -112,12 +117,17 @@ class ToDoEvent {
/**
* Set the priority of the Todo
*/
void setPriority(int priority );
/**
+ * Set the progress.
+ */
+ void setProgress( ushort progress );
+
+ /**
* set the end date
*/
void setDate( QDate date );
void setDescription(const QString& );
void setSummary(const QString& );
void setExtra( const QString&, const QString& );
@@ -142,10 +152,11 @@ class ToDoEvent {
int m_priority;
QStringList m_category;
QString m_desc;
QString m_sum;
QMap<QString, QString> m_extra;
int m_uid;
+ ushort m_prog;
};
#endif