summaryrefslogtreecommitdiff
path: root/libopie/pim/opimmainwindow.cpp
Unidiff
Diffstat (limited to 'libopie/pim/opimmainwindow.cpp') (more/less context) (show whitespace changes)
-rw-r--r--libopie/pim/opimmainwindow.cpp36
1 files changed, 35 insertions, 1 deletions
diff --git a/libopie/pim/opimmainwindow.cpp b/libopie/pim/opimmainwindow.cpp
index 92be2fd..7e57f3a 100644
--- a/libopie/pim/opimmainwindow.cpp
+++ b/libopie/pim/opimmainwindow.cpp
@@ -1,16 +1,17 @@
1#include <qapplication.h> 1#include <qapplication.h>
2#include <qcopchannel_qws.h> 2#include <qcopchannel_qws.h>
3 3
4#include <qpe/qcopenvelope_qws.h> 4#include <qpe/qcopenvelope_qws.h>
5 5
6#include "opimresolver.h"
6#include "opimmainwindow.h" 7#include "opimmainwindow.h"
7 8
8OPimMainWindow::OPimMainWindow( const QString& service, QWidget* parent, 9OPimMainWindow::OPimMainWindow( const QString& service, QWidget* parent,
9 const char* name, WFlags flag ) 10 const char* name, WFlags flag )
10 : QMainWindow( parent, name, flag ), m_service( service ), m_fallBack(0l) { 11 : QMainWindow( parent, name, flag ), m_rtti(-1), m_service( service ), m_fallBack(0l) {
11 12
12 /* 13 /*
13 * let's generate our QCopChannel 14 * let's generate our QCopChannel
14 */ 15 */
15 m_str = QString("QPE/"+m_service).local8Bit(); 16 m_str = QString("QPE/"+m_service).local8Bit();
16 m_channel= new QCopChannel(m_str, this ); 17 m_channel= new QCopChannel(m_str, this );
@@ -26,12 +27,15 @@ OPimMainWindow::OPimMainWindow( const QString& service, QWidget* parent,
26OPimMainWindow::~OPimMainWindow() { 27OPimMainWindow::~OPimMainWindow() {
27 delete m_channel; 28 delete m_channel;
28} 29}
29QCopChannel* OPimMainWindow::channel() { 30QCopChannel* OPimMainWindow::channel() {
30 return m_channel; 31 return m_channel;
31} 32}
33void OPimMainWindow::doSetDocument( const QString& ) {
34
35}
32void OPimMainWindow::appMessage( const QCString& cmd, const QByteArray& array ) { 36void OPimMainWindow::appMessage( const QCString& cmd, const QByteArray& array ) {
33 /* 37 /*
34 * create demands to create 38 * create demands to create
35 * a new record... 39 * a new record...
36 */ 40 */
37 QDataStream stream(array, IO_ReadOnly); 41 QDataStream stream(array, IO_ReadOnly);
@@ -66,6 +70,36 @@ void OPimMainWindow::appMessage( const QCString& cmd, const QByteArray& array )
66 m_fallBack = record(rtti, array ); 70 m_fallBack = record(rtti, array );
67 if (!m_fallBack) return; 71 if (!m_fallBack) return;
68 add( *m_fallBack ); 72 add( *m_fallBack );
69 delete m_fallBack; 73 delete m_fallBack;
70 } 74 }
71} 75}
76/* implement the url scripting here */
77void OPimMainWindow::setDocument( const QString& str) {
78 doSetDocument( str );
79}
80/*
81 * we now try to get the array demarshalled
82 * check if the rtti matches this one
83 */
84OPimRecord* OPimMainWindow::record( int rtti, const QByteArray& array ) {
85 if ( service() != rtti )
86 return 0l;
87
88 OPimRecord* record = OPimResolver::self()->record( rtti );
89 QDataStream str(array, IO_ReadOnly );
90 if ( !record || !record->loadFromStream(str) ) {
91 delete record;
92 record = 0l;
93 }
94
95 return record;
96}
97/*
98 * get the rtti for the service
99 */
100int OPimMainWindow::service() {
101 if ( m_rtti == -1 )
102 m_rtti = OPimResolver::self()->serviceId( m_service );
103
104 return m_rtti;
105}