void QTodoExportPluginHTML::exportItem(const QTodoItem& item)
{
	addLine("<table cellspacing=\"0\" cellpadding=\"0\" width=\"100%\" style=\"margin-bottom:5px\">");
	addLine("<tr>");
	addLine("<td width=\""+QString::number(30*item.getDepth())+"\"></td>");
	addLine("<td>");
	addLine("<table cellspacing=\"0\" width=\"100%\">");
	addLine("<tr bgcolor=\"#eeeeee\">");
	addLine("<td>");
	addLine("<small>");
	//if(item.getPriority() != PRIO_NA)
		addLine("<b>"+QObject::tr("Priority:")+"</b> "+QTodo::priorityToString(item.getPriority()));
	//if(item.getStatus() != STAT_NA)
		addLine("<b>"+QObject::tr("Status:")+"</b> "+QTodo::statusToString(item.getStatus()));
	addLine("&nbsp;");
	if(item.getDeadlineDateTime().isValid())
	{
		addLine("</small>");
		addLine("</td><td align=\"right\"><small>");
		//addLine("<span align=\"right\">");
		addLine("<b>");
		addLine(QObject::tr("Deadline:")+"</b> "+item.getDeadlineLocalString());
		//addLine("</span>");
	}
	addLine("</small>");
	addLine("</td>");
	addLine("</tr><tr><td>");
	addLine(item.getTaskRichText().replace("\n","<br>"));
	addLine("<br><small><i>");
	addLine(QObject::tr("Created:")+" "+item.getCreatedLocalString());
	if(!item.getAgent().isEmpty())
		addLine(" "+QObject::tr("Assigned to:")+" "+item.getAgent());
	addLine("</i></small></td></tr></table></td></tr></table>");
}
void QTodoExportPluginCSV::exportItem(const QTodoItem& item)
{
    addData(QString::number(current_id));
    QTodoItem* parent = item.list()->parentTodo(&item);
    if(parent)
        addData(QString::number(item.list()->itemPos(item.list()->parentTodo(&item))+1));
    else
        addData("");
    addData(QTodo::priorityToString(item.getPriority()));
    addData(QTodo::statusToString(item.getStatus()));
    addData(item.getDeadlineLocalString());
    addData(item.getAgent());
    addData(item.getCreatedLocalString());
    addData(item.getDoneLocalString());
    addData(item.getTaskPlainText());
    newRow();
}
Beispiel #3
0
int QTodoItemSortPtrList::compareItems(QPtrCollection::Item item1, QPtrCollection::Item item2)
{
	QTodoItem* left = reinterpret_cast<QTodoItem*>(item1);
	QTodoItem* right = reinterpret_cast<QTodoItem*>(item2);

	if(!right)
		return 1;

	for(QTodoSortCriteriaMap::const_iterator it = sort_criterias->begin(); it != sort_criterias->end(); ++it)
	{
		int r;
		QTodoSortOrder order = (*it).second.second;
		switch((*it).second.first)
		{
		case SORT_PRIORITY:
			if((r = right->getPriority() - left->getPriority()) != 0)
				if(order == ORDER_ASCENDING)
					return -r;
				else
					return r;
			break;
		case SORT_STATUS:
			if((r = right->getStatus() - left->getStatus()) != 0)
				if(order == ORDER_ASCENDING)
					return -r;
				else
					return r;
			break;
		case SORT_DEADLINE:
			if((r = right->getDeadlineDateTime().toTime_t() - left->getDeadlineDateTime().toTime_t()) != 0)
				if(order == ORDER_ASCENDING)
					return -r;
				else
					return r;
			break;
		case SORT_ASSIGNED:
			if((r = right->getAgent().compare(left->getAgent())) != 0)
				if(order == ORDER_ASCENDING)
					return -r;
				else
					return r;
			break;
		case SORT_CREATED:
			if((r = right->getCreated().toTime_t() - left->getCreated().toTime_t()) != 0)
				if(order == ORDER_ASCENDING)
					return -r;
				else
					return r;
			break;
		case SORT_DONE:
			if((r = right->getDone().toTime_t() - left->getDone().toTime_t()) != 0)
				if(order == ORDER_ASCENDING)
					return -r;
				else
					return r;
			break;
		default:
			break;
		}
	}

	return 0;
}