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