From: konrad Date: Wed, 19 Mar 2008 18:16:45 +0000 (+0000) Subject: fix ODT rendering, complete eventsummary X-Git-Url: http://git.silmor.de/gitweb/?a=commitdiff_plain;h=49124a8e9873d14fcaa7fa08f563d5484f50d20e;p=konrad%2Fsmoke.git fix ODT rendering, complete eventsummary git-svn-id: https://silmor.de/svn/softmagic/smoke/trunk@132 6e3c4bff-ac9f-4ac1-96c5-d2ea494d3e33 --- diff --git a/examples/eventsummary.odtt b/examples/eventsummary.odtt index 0692500..85c37b0 100644 Binary files a/examples/eventsummary.odtt and b/examples/eventsummary.odtt differ diff --git a/src/eventsummary.cpp b/src/eventsummary.cpp index e771b47..0a9acdb 100644 --- a/src/eventsummary.cpp +++ b/src/eventsummary.cpp @@ -22,6 +22,7 @@ #include #include #include +#include MEventSummary::MEventSummary(QWidget*par,MWebRequest*rq,int eid) :QDialog(par) @@ -84,6 +85,7 @@ MEventSummary::MEventSummary(QWidget*par,MWebRequest*rq,int eid) hl->addWidget(p=new QPushButton(tr("Print")),0); connect(p,SIGNAL(clicked()),this,SLOT(print())); hl->addWidget(p=new QPushButton(tr("Save as...")),0); + connect(p,SIGNAL(clicked()),this,SLOT(saveas())); hl->addSpacing(15); hl->addWidget(p=new QPushButton(tr("Close")),0); connect(p,SIGNAL(clicked()),this,SLOT(accept())); @@ -144,6 +146,27 @@ void MEventSummary::print() rend.renderToPrinter(); } +void MEventSummary::saveas() +{ + QFileDialog fd(this); + fd.setAcceptMode(QFileDialog::AcceptSave); + fd.setFileMode(QFileDialog::AnyFile); + fd.setConfirmOverwrite(true); + fd.setFilter("Open Document Text (*.odt)"); + fd.setDefaultSuffix("odt"); + QString fname; + if(fd.exec()){ + QStringList fn=fd.selectedFiles(); + if(fn.size()<1)return; + fname=fn[0]; + } + MOdtSignalRenderer rend("../examples/eventsummary.odtt"); + connect(&rend,SIGNAL(getVariable(QString,QString&)),this,SLOT(getVariable(QString,QString&))); + connect(&rend,SIGNAL(getLoopIterations(QString,int&)),this,SLOT(getLoopIterations(QString,int&))); + connect(&rend,SIGNAL(getLoopVariable(QString,int,QString,QString&)),this,SLOT(getLoopVariable(QString,int,QString,QString&))); + rend.renderToFile(fname); +} + void MEventSummary::getVariable(QString varname,QString&value) { if(varname=="TITLE") diff --git a/src/eventsummary.h b/src/eventsummary.h index 8ac219d..cc791dc 100644 --- a/src/eventsummary.h +++ b/src/eventsummary.h @@ -33,6 +33,8 @@ class MEventSummary:public QDialog private slots: /**internal: print summary*/ void print(); + /**internal: save summary to file*/ + void saveas(); //used for ODT rendering: void getVariable(QString varname,QString&value); diff --git a/src/odtrender.cpp b/src/odtrender.cpp index 50ee487..f832cb7 100644 --- a/src/odtrender.cpp +++ b/src/odtrender.cpp @@ -73,7 +73,7 @@ MOdtRendererPrivate::~MOdtRendererPrivate() void MOdtRenderer::renderToFile(QString file) { QFile f(file); - if(f.open(QIODevice::WriteOnly)){ + if(f.open(QIODevice::ReadWrite)){ renderToFile(f); f.close(); } @@ -83,7 +83,7 @@ void MOdtRenderer::renderToFile(QFile &file) { qDebug("File Name: %s",file.fileName().toAscii().data()); if(!file.isWritable()) - if(!file.open(QIODevice::WriteOnly))return; + if(!file.open(QIODevice::ReadWrite))return; file.seek(0); file.resize(0); d->render(&file); diff --git a/www/inc/classes/event.php b/www/inc/classes/event.php index 4d23089..ded9731 100644 --- a/www/inc/classes/event.php +++ b/www/inc/classes/event.php @@ -364,9 +364,9 @@ function getEventSummaryXml($evid) else $p->setAttribute("unused",0); if(isset($tcused[$price])) - $p->setAttribute("unused",$tcused[$price]); + $p->setAttribute("used",$tcused[$price]); else - $p->setAttribute("unused",0); + $p->setAttribute("used",0); $doc->appendChild($p); } $xml->appendChild($doc);