summaryrefslogtreecommitdiffabout
path: root/korganizer/koeventviewer.cpp
Unidiff
Diffstat (limited to 'korganizer/koeventviewer.cpp') (more/less context) (show whitespace changes)
-rw-r--r--korganizer/koeventviewer.cpp37
1 files changed, 21 insertions, 16 deletions
diff --git a/korganizer/koeventviewer.cpp b/korganizer/koeventviewer.cpp
index c0acf34..4df26a9 100644
--- a/korganizer/koeventviewer.cpp
+++ b/korganizer/koeventviewer.cpp
@@ -14,18 +14,23 @@
14 14
15 You should have received a copy of the GNU General Public License 15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software 16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18*/ 18*/
19 19
20#include <qcstring.h> 20#include <q3cstring.h>
21#include <qwhatsthis.h> 21#include <q3whatsthis.h>
22#include <qdialog.h> 22#include <qdialog.h>
23#include <qapplication.h> 23#include <qapplication.h>
24#include <QDesktopWidget>
24#include <qlabel.h> 25#include <qlabel.h>
25#include <qlayout.h> 26#include <qlayout.h>
27//Added by qt3to4:
28#include <QKeyEvent>
29#include <Q3PtrList>
30#include <Q3VBoxLayout>
26 31
27#include <klocale.h> 32#include <klocale.h>
28#include <kapplication.h> 33#include <kapplication.h>
29#include <libkcal/event.h> 34#include <libkcal/event.h>
30#include <libkcal/todo.h> 35#include <libkcal/todo.h>
31#include <kdebug.h> 36#include <kdebug.h>
@@ -52,20 +57,20 @@
52 57
53#ifdef DESKTOP_VERSION 58#ifdef DESKTOP_VERSION
54#include <kabc/addresseedialog.h> 59#include <kabc/addresseedialog.h>
55#include <kabc/addresseeview.h> 60#include <kabc/addresseeview.h>
56#include <qprinter.h> 61#include <qprinter.h>
57#include <qpainter.h> 62#include <qpainter.h>
58#include <qpaintdevicemetrics.h> 63#include <q3paintdevicemetrics.h>
59#else //DESKTOP_VERSION 64#else //DESKTOP_VERSION
60#include <qtopia/qcopenvelope_qws.h> 65#include <qtopia/qcopenvelope_qws.h>
61#endif //DESKTOP_VERSION 66#endif //DESKTOP_VERSION
62#include <externalapphandler.h> 67#include <externalapphandler.h>
63 68
64KOEventViewer::KOEventViewer(QWidget *parent,const char *name) 69KOEventViewer::KOEventViewer(QWidget *parent,const char *name)
65 : QTextBrowser(parent,name) 70 : Q3TextBrowser(parent,name)
66{ 71{
67 mSyncMode = false; 72 mSyncMode = false;
68 mColorMode = 0; 73 mColorMode = 0;
69} 74}
70 75
71KOEventViewer::~KOEventViewer() 76KOEventViewer::~KOEventViewer()
@@ -83,13 +88,13 @@ void KOEventViewer::printMe()
83 88
84 QPrinter printer; 89 QPrinter printer;
85 if (!printer.setup() ) 90 if (!printer.setup() )
86 return; 91 return;
87 QPainter p; 92 QPainter p;
88 p.begin ( &printer ); 93 p.begin ( &printer );
89 QPaintDeviceMetrics m = QPaintDeviceMetrics ( &printer ); 94 Q3PaintDeviceMetrics m = Q3PaintDeviceMetrics ( &printer );
90 float dx, dy; 95 float dx, dy;
91 int wid = (m.width() * 9)/10; 96 int wid = (m.width() * 9)/10;
92 dx = (float) wid/(float)contentsWidth (); 97 dx = (float) wid/(float)contentsWidth ();
93 dy = (float)(m.height()) / (float)contentsHeight (); 98 dy = (float)(m.height()) / (float)contentsHeight ();
94 float scale; 99 float scale;
95 // scale to fit the width or height of the paper 100 // scale to fit the width or height of the paper
@@ -131,13 +136,13 @@ void KOEventViewer::setSource(const QString& n)
131 136
132 //qDebug("for *%s* +%s+ ", n.latin1(), uid.latin1()); 137 //qDebug("for *%s* +%s+ ", n.latin1(), uid.latin1());
133 if (n == uid ) { 138 if (n == uid ) {
134 //qDebug("found %s ",(*it).mobileHomePhone().latin1() ); 139 //qDebug("found %s ",(*it).mobileHomePhone().latin1() );
135 QDialog dia( this,"dia123", true ); 140 QDialog dia( this,"dia123", true );
136 dia.setCaption( i18n("Details of attendee") ); 141 dia.setCaption( i18n("Details of attendee") );
137 QVBoxLayout lay ( &dia ); 142 Q3VBoxLayout lay ( &dia );
138 KABC::AddresseeView av ( &dia ); 143 KABC::AddresseeView av ( &dia );
139 av.setAddressee( (*it) ); 144 av.setAddressee( (*it) );
140 lay.addWidget( &av ); 145 lay.addWidget( &av );
141 if ( QApplication::desktop()->width() < 480 ) 146 if ( QApplication::desktop()->width() < 480 )
142 dia.resize( 220, 240); 147 dia.resize( 220, 240);
143 else { 148 else {
@@ -152,13 +157,13 @@ void KOEventViewer::setSource(const QString& n)
152#else 157#else
153 { 158 {
154 if ( "uid:organizer" == n ) { 159 if ( "uid:organizer" == n ) {
155 ExternalAppHandler::instance()->requestDetailsFromKAPI("", mCurrentIncidence->organizer(),""); 160 ExternalAppHandler::instance()->requestDetailsFromKAPI("", mCurrentIncidence->organizer(),"");
156 return; 161 return;
157 } 162 }
158 QPtrList<Attendee> attendees = mCurrentIncidence->attendees(); 163 Q3PtrList<Attendee> attendees = mCurrentIncidence->attendees();
159 if (attendees.count()) { 164 if (attendees.count()) {
160 Attendee *a; 165 Attendee *a;
161 for(a=attendees.first();a;a=attendees.next()) { 166 for(a=attendees.first();a;a=attendees.next()) {
162 if ( "uid:"+a->uid() == n ) { 167 if ( "uid:"+a->uid() == n ) {
163 bool res = ExternalAppHandler::instance()->requestDetailsFromKAPI(a->name(), a->email(), a->uid()); 168 bool res = ExternalAppHandler::instance()->requestDetailsFromKAPI(a->name(), a->email(), a->uid());
164 return; 169 return;
@@ -197,20 +202,20 @@ void KOEventViewer::setSource(const QString& n)
197 return; 202 return;
198 } else if (n.startsWith("uid:")) { 203 } else if (n.startsWith("uid:")) {
199 DCOPClient *client = KApplication::kApplication()->dcopClient(); 204 DCOPClient *client = KApplication::kApplication()->dcopClient();
200 const QByteArray noParamData; 205 const QByteArray noParamData;
201 const QByteArray paramData; 206 const QByteArray paramData;
202 QByteArray replyData; 207 QByteArray replyData;
203 QCString replyTypeStr; 208 Q3CString replyTypeStr;
204#define PING_ABBROWSER (client->call("kaddressbook", "KAddressBookIface", "interfaces()", noParamData, replyTypeStr, replyData)) 209#define PING_ABBROWSER (client->call("kaddressbook", "KAddressBookIface", "interfaces()", noParamData, replyTypeStr, replyData))
205 bool foundAbbrowser = PING_ABBROWSER; 210 bool foundAbbrowser = PING_ABBROWSER;
206 211
207 if (foundAbbrowser) { 212 if (foundAbbrowser) {
208 //KAddressbook is already running, so just DCOP to it to bring up the contact editor 213 //KAddressbook is already running, so just DCOP to it to bring up the contact editor
209 //client->send("kaddressbook","KAddressBookIface", 214 //client->send("kaddressbook","KAddressBookIface",
210 QDataStream arg(paramData, IO_WriteOnly); 215 QDataStream arg(paramData, QIODevice::WriteOnly);
211 arg << n.mid(6); 216 arg << n.mid(6);
212 client->send("kaddressbook", "KAddressBookIface", "showContactEditor( QString )", paramData); 217 client->send("kaddressbook", "KAddressBookIface", "showContactEditor( QString )", paramData);
213 return; 218 return;
214 } else { 219 } else {
215 /* 220 /*
216 KaddressBook is not already running. Pass it the UID of the contact via the command line while starting it - its neater. 221 KaddressBook is not already running. Pass it the UID of the contact via the command line while starting it - its neater.
@@ -228,13 +233,13 @@ void KOEventViewer::setSource(const QString& n)
228 //QTextBrowser::setSource(n); 233 //QTextBrowser::setSource(n);
229 } 234 }
230#endif 235#endif
231} 236}
232void KOEventViewer::mailToAttendees( bool all ) 237void KOEventViewer::mailToAttendees( bool all )
233{ 238{
234 QPtrList<Attendee> attendees = mCurrentIncidence->attendees(); 239 Q3PtrList<Attendee> attendees = mCurrentIncidence->attendees();
235 if (attendees.count() == 0) return; 240 if (attendees.count() == 0) return;
236 QStringList nameList; 241 QStringList nameList;
237 QStringList emailList; 242 QStringList emailList;
238 QStringList uidList; 243 QStringList uidList;
239 Attendee* a; 244 Attendee* a;
240 for(a=attendees.first();a;a=attendees.next()) { 245 for(a=attendees.first();a;a=attendees.next()) {
@@ -257,13 +262,13 @@ void KOEventViewer::mailToAttendees( bool all )
257 ExternalAppHandler::instance()->mailToMultipleContacts( emailList.join(","), mMailSubject ); 262 ExternalAppHandler::instance()->mailToMultipleContacts( emailList.join(","), mMailSubject );
258#endif 263#endif
259 264
260} 265}
261void KOEventViewer::addTag(const QString & tag,const QString & text) 266void KOEventViewer::addTag(const QString & tag,const QString & text)
262{ 267{
263 int number=text.contains("\n"); 268 int number=text.count("\n");
264 QString str = "<" + tag + ">"; 269 QString str = "<" + tag + ">";
265 QString tmpText=text; 270 QString tmpText=text;
266 QString tmpStr=str; 271 QString tmpStr=str;
267 if(number !=-1) 272 if(number !=-1)
268 { 273 {
269 if (number > 0) { 274 if (number > 0) {
@@ -584,13 +589,13 @@ void KOEventViewer::appendTodo(Todo *event, int mode )
584 mText += "<a href=\"todo_uid:" + event->relatedTo()->uid() + "\">"; 589 mText += "<a href=\"todo_uid:" + event->relatedTo()->uid() + "\">";
585 mText += deTag(event->relatedTo()->summary()); 590 mText += deTag(event->relatedTo()->summary());
586 mText += "</a><br>"; 591 mText += "</a><br>";
587 592
588 // mText.append(deTag("[" +QString::number(event->relatedTo()->priority()) + "/" + QString::number(((Todo*)event->relatedTo())->percentComplete())+"%] " +event->relatedTo()->summary()) +"<br>"); 593 // mText.append(deTag("[" +QString::number(event->relatedTo()->priority()) + "/" + QString::number(((Todo*)event->relatedTo())->percentComplete())+"%] " +event->relatedTo()->summary()) +"<br>");
589 } 594 }
590 QPtrList<Incidence> Relations = event->relations(); 595 Q3PtrList<Incidence> Relations = event->relations();
591 Incidence *to; 596 Incidence *to;
592 if ( Relations.first() ) 597 if ( Relations.first() )
593 addTag("b",i18n("Sub todos:<br>")); 598 addTag("b",i18n("Sub todos:<br>"));
594 for (to=Relations.first();to;to=Relations.next()) { 599 for (to=Relations.first();to;to=Relations.next()) {
595 QString t_name = "[" +QString::number(((Todo*)to)->priority()) + "/" + QString::number(((Todo*)to)->percentComplete())+"%] ";// +to->relatedTo()->summary()); 600 QString t_name = "[" +QString::number(((Todo*)to)->priority()) + "/" + QString::number(((Todo*)to)->percentComplete())+"%] ";// +to->relatedTo()->summary());
596 mText += t_name; 601 mText += t_name;
@@ -618,13 +623,13 @@ void KOEventViewer::formatCategories(Incidence *event)
618 addTag("p","<b>"+i18n("Categories")+":</b> " + event->categoriesStrWithSpace() ) ; 623 addTag("p","<b>"+i18n("Categories")+":</b> " + event->categoriesStrWithSpace() ) ;
619 } 624 }
620 } 625 }
621} 626}
622void KOEventViewer::formatAttendees(Incidence *event) 627void KOEventViewer::formatAttendees(Incidence *event)
623{ 628{
624 QPtrList<Attendee> attendees = event->attendees(); 629 Q3PtrList<Attendee> attendees = event->attendees();
625 if (attendees.count()) { 630 if (attendees.count()) {
626 631
627 632
628 QString iconPath = KGlobal::iconLoader()->iconPath("mailappt",KIcon::Small); 633 QString iconPath = KGlobal::iconLoader()->iconPath("mailappt",KIcon::Small);
629 QString NOiconPath = KGlobal::iconLoader()->iconPath("nomailappt",KIcon::Small); 634 QString NOiconPath = KGlobal::iconLoader()->iconPath("nomailappt",KIcon::Small);
630 addTag("h3",i18n("Organizer")); 635 addTag("h3",i18n("Organizer"));
@@ -651,13 +656,13 @@ void KOEventViewer::formatAttendees(Incidence *event)
651 656
652 657
653#else 658#else
654 mText.append(event->organizer()); 659 mText.append(event->organizer());
655#endif 660#endif
656 661
657 if (iconPath) { 662 if (!iconPath.isEmpty()) {
658 mText += " <a href=\"mailto:" + event->organizer() + "\">"; 663 mText += " <a href=\"mailto:" + event->organizer() + "\">";
659 mText += "<IMG src=\"" + iconPath + "\">"; 664 mText += "<IMG src=\"" + iconPath + "\">";
660 mText += "</a>\n"; 665 mText += "</a>\n";
661 } 666 }
662 mText.append("</li></ul>"); 667 mText.append("</li></ul>");
663 668
@@ -701,13 +706,13 @@ void KOEventViewer::formatAttendees(Incidence *event)
701 else mText += a->email(); 706 else mText += a->email();
702 mText += "</a>\n"; 707 mText += "</a>\n";
703#endif 708#endif
704 709
705 710
706 if (!a->email().isEmpty()) { 711 if (!a->email().isEmpty()) {
707 if (iconPath) { 712 if (!iconPath.isEmpty()) {
708 mText += "<a href=\"mailto:" + a->realName() +" <" + a->email() + ">:" + mMailSubject + "\">"; 713 mText += "<a href=\"mailto:" + a->realName() +" <" + a->email() + ">:" + mMailSubject + "\">";
709 if ( a->RSVP() ) { 714 if ( a->RSVP() ) {
710 ++a_count_nr; 715 ++a_count_nr;
711 mText += "<IMG src=\"" + iconPath + "\">"; 716 mText += "<IMG src=\"" + iconPath + "\">";
712 } 717 }
713 else { 718 else {
@@ -859,10 +864,10 @@ void KOEventViewer::keyPressEvent ( QKeyEvent * e )
859 switch ( e->key() ) { 864 switch ( e->key() ) {
860 case Qt::Key_Return: 865 case Qt::Key_Return:
861 case Qt::Key_Enter : 866 case Qt::Key_Enter :
862 e->ignore(); 867 e->ignore();
863 break; 868 break;
864 default: 869 default:
865 QTextBrowser::keyPressEvent ( e ); 870 Q3TextBrowser::keyPressEvent ( e );
866 break; 871 break;
867 } 872 }
868} 873}