00001
00002
00003
00004
00005
00006
00007
00008
00009 #include "./korganizeriface.h"
00010
00011 #include <kdatastream.h>
00012 #include <qasciidict.h>
00013
00014
00015 static const int KOrganizerIface_fhash = 13;
00016 static const char* const KOrganizerIface_ftable[13][3] = {
00017 { "bool", "openURL(QString)", "openURL(QString url)" },
00018 { "bool", "mergeURL(QString)", "mergeURL(QString url)" },
00019 { "void", "closeURL()", "closeURL()" },
00020 { "bool", "saveURL()", "saveURL()" },
00021 { "bool", "saveAsURL(QString)", "saveAsURL(QString url)" },
00022 { "QString", "getCurrentURLasString()", "getCurrentURLasString()" },
00023 { "bool", "editIncidence(QString)", "editIncidence(QString uid)" },
00024 { "bool", "deleteIncidence(QString)", "deleteIncidence(QString uid)" },
00025 { "bool", "deleteIncidence(QString,bool)", "deleteIncidence(QString uid,bool force)" },
00026 { "bool", "addIncidence(QString)", "addIncidence(QString iCal)" },
00027 { "void", "loadProfile(QString)", "loadProfile(QString path)" },
00028 { "void", "saveToProfile(QString)", "saveToProfile(QString path)" },
00029 { 0, 0, 0 }
00030 };
00031 static const int KOrganizerIface_ftable_hiddens[12] = {
00032 0,
00033 0,
00034 0,
00035 0,
00036 0,
00037 0,
00038 0,
00039 0,
00040 0,
00041 0,
00042 0,
00043 0,
00044 };
00045
00046 bool KOrganizerIface::process(const QCString &fun, const QByteArray &data, QCString& replyType, QByteArray &replyData)
00047 {
00048 static QAsciiDict<int>* fdict = 0;
00049 if ( !fdict ) {
00050 fdict = new QAsciiDict<int>( KOrganizerIface_fhash, true, false );
00051 for ( int i = 0; KOrganizerIface_ftable[i][1]; i++ )
00052 fdict->insert( KOrganizerIface_ftable[i][1], new int( i ) );
00053 }
00054 int* fp = fdict->find( fun );
00055 switch ( fp?*fp:-1) {
00056 case 0: {
00057 QString arg0;
00058 QDataStream arg( data, IO_ReadOnly );
00059 if (arg.atEnd()) return false;
00060 arg >> arg0;
00061 replyType = KOrganizerIface_ftable[0][0];
00062 QDataStream _replyStream( replyData, IO_WriteOnly );
00063 _replyStream << openURL(arg0 );
00064 } break;
00065 case 1: {
00066 QString arg0;
00067 QDataStream arg( data, IO_ReadOnly );
00068 if (arg.atEnd()) return false;
00069 arg >> arg0;
00070 replyType = KOrganizerIface_ftable[1][0];
00071 QDataStream _replyStream( replyData, IO_WriteOnly );
00072 _replyStream << mergeURL(arg0 );
00073 } break;
00074 case 2: {
00075 replyType = KOrganizerIface_ftable[2][0];
00076 closeURL( );
00077 } break;
00078 case 3: {
00079 replyType = KOrganizerIface_ftable[3][0];
00080 QDataStream _replyStream( replyData, IO_WriteOnly );
00081 _replyStream << saveURL( );
00082 } break;
00083 case 4: {
00084 QString arg0;
00085 QDataStream arg( data, IO_ReadOnly );
00086 if (arg.atEnd()) return false;
00087 arg >> arg0;
00088 replyType = KOrganizerIface_ftable[4][0];
00089 QDataStream _replyStream( replyData, IO_WriteOnly );
00090 _replyStream << saveAsURL(arg0 );
00091 } break;
00092 case 5: {
00093 replyType = KOrganizerIface_ftable[5][0];
00094 QDataStream _replyStream( replyData, IO_WriteOnly );
00095 _replyStream << getCurrentURLasString( );
00096 } break;
00097 case 6: {
00098 QString arg0;
00099 QDataStream arg( data, IO_ReadOnly );
00100 if (arg.atEnd()) return false;
00101 arg >> arg0;
00102 replyType = KOrganizerIface_ftable[6][0];
00103 QDataStream _replyStream( replyData, IO_WriteOnly );
00104 _replyStream << editIncidence(arg0 );
00105 } break;
00106 case 7: {
00107 QString arg0;
00108 QDataStream arg( data, IO_ReadOnly );
00109 if (arg.atEnd()) return false;
00110 arg >> arg0;
00111 replyType = KOrganizerIface_ftable[7][0];
00112 QDataStream _replyStream( replyData, IO_WriteOnly );
00113 _replyStream << deleteIncidence(arg0 );
00114 } break;
00115 case 8: {
00116 QString arg0;
00117 bool arg1;
00118 QDataStream arg( data, IO_ReadOnly );
00119 if (arg.atEnd()) return false;
00120 arg >> arg0;
00121 if (arg.atEnd()) return false;
00122 arg >> arg1;
00123 replyType = KOrganizerIface_ftable[8][0];
00124 QDataStream _replyStream( replyData, IO_WriteOnly );
00125 _replyStream << deleteIncidence(arg0, arg1 );
00126 } break;
00127 case 9: {
00128 QString arg0;
00129 QDataStream arg( data, IO_ReadOnly );
00130 if (arg.atEnd()) return false;
00131 arg >> arg0;
00132 replyType = KOrganizerIface_ftable[9][0];
00133 QDataStream _replyStream( replyData, IO_WriteOnly );
00134 _replyStream << addIncidence(arg0 );
00135 } break;
00136 case 10: {
00137 QString arg0;
00138 QDataStream arg( data, IO_ReadOnly );
00139 if (arg.atEnd()) return false;
00140 arg >> arg0;
00141 replyType = KOrganizerIface_ftable[10][0];
00142 loadProfile(arg0 );
00143 } break;
00144 case 11: {
00145 QString arg0;
00146 QDataStream arg( data, IO_ReadOnly );
00147 if (arg.atEnd()) return false;
00148 arg >> arg0;
00149 replyType = KOrganizerIface_ftable[11][0];
00150 saveToProfile(arg0 );
00151 } break;
00152 default:
00153 return DCOPObject::process( fun, data, replyType, replyData );
00154 }
00155 return true;
00156 }
00157
00158 QCStringList KOrganizerIface::interfaces()
00159 {
00160 QCStringList ifaces = DCOPObject::interfaces();
00161 ifaces += "KOrganizerIface";
00162 return ifaces;
00163 }
00164
00165 QCStringList KOrganizerIface::functions()
00166 {
00167 QCStringList funcs = DCOPObject::functions();
00168 for ( int i = 0; KOrganizerIface_ftable[i][2]; i++ ) {
00169 if (KOrganizerIface_ftable_hiddens[i])
00170 continue;
00171 QCString func = KOrganizerIface_ftable[i][0];
00172 func += ' ';
00173 func += KOrganizerIface_ftable[i][2];
00174 funcs << func;
00175 }
00176 return funcs;
00177 }
00178
00179