interfaces Library API Documentation

editdcopinterface_skel.cpp

00001 /**************************************************************************** 00002 ** 00003 ** DCOP Skeleton created by dcopidl2cpp from editdcopinterface.kidl 00004 ** 00005 ** WARNING! All changes made in this file will be lost! 00006 ** 00007 *****************************************************************************/ 00008 00009 #include "./editdcopinterface.h" 00010 00011 #include <kdatastream.h> 00012 #include <qasciidict.h> 00013 00014 namespace KTextEditor { 00015 00016 static const int EditDCOPInterface_fhash = 11; 00017 static const char* const EditDCOPInterface_ftable[10][3] = { 00018 { "QString", "text()", "text()" }, 00019 { "QString", "textLine(uint)", "textLine(uint line)" }, 00020 { "int", "numLines()", "numLines()" }, 00021 { "int", "length()", "length()" }, 00022 { "void", "setText(QString)", "setText(QString text)" }, 00023 { "bool", "insertText(uint,uint,QString)", "insertText(uint line,uint col,QString text)" }, 00024 { "bool", "removeText(uint,uint,uint,uint)", "removeText(uint startLine,uint startCol,uint endLine,uint endCol)" }, 00025 { "bool", "insertLine(uint,QString)", "insertLine(uint line,QString text)" }, 00026 { "bool", "removeLine(uint)", "removeLine(uint line)" }, 00027 { 0, 0, 0 } 00028 }; 00029 static const int EditDCOPInterface_ftable_hiddens[9] = { 00030 0, 00031 0, 00032 0, 00033 0, 00034 0, 00035 0, 00036 0, 00037 0, 00038 0, 00039 }; 00040 00041 bool EditDCOPInterface::process(const QCString &fun, const QByteArray &data, QCString& replyType, QByteArray &replyData) 00042 { 00043 static QAsciiDict<int>* fdict = 0; 00044 if ( !fdict ) { 00045 fdict = new QAsciiDict<int>( EditDCOPInterface_fhash, true, false ); 00046 for ( int i = 0; EditDCOPInterface_ftable[i][1]; i++ ) 00047 fdict->insert( EditDCOPInterface_ftable[i][1], new int( i ) ); 00048 } 00049 int* fp = fdict->find( fun ); 00050 switch ( fp?*fp:-1) { 00051 case 0: { // QString text() 00052 replyType = EditDCOPInterface_ftable[0][0]; 00053 QDataStream _replyStream( replyData, IO_WriteOnly ); 00054 _replyStream << text( ); 00055 } break; 00056 case 1: { // QString textLine(uint) 00057 uint arg0; 00058 QDataStream arg( data, IO_ReadOnly ); 00059 arg >> arg0; 00060 replyType = EditDCOPInterface_ftable[1][0]; 00061 QDataStream _replyStream( replyData, IO_WriteOnly ); 00062 _replyStream << textLine(arg0 ); 00063 } break; 00064 case 2: { // int numLines() 00065 replyType = EditDCOPInterface_ftable[2][0]; 00066 QDataStream _replyStream( replyData, IO_WriteOnly ); 00067 _replyStream << numLines( ); 00068 } break; 00069 case 3: { // int length() 00070 replyType = EditDCOPInterface_ftable[3][0]; 00071 QDataStream _replyStream( replyData, IO_WriteOnly ); 00072 _replyStream << length( ); 00073 } break; 00074 case 4: { // void setText(QString) 00075 QString arg0; 00076 QDataStream arg( data, IO_ReadOnly ); 00077 arg >> arg0; 00078 replyType = EditDCOPInterface_ftable[4][0]; 00079 setText(arg0 ); 00080 } break; 00081 case 5: { // bool insertText(uint,uint,QString) 00082 uint arg0; 00083 uint arg1; 00084 QString arg2; 00085 QDataStream arg( data, IO_ReadOnly ); 00086 arg >> arg0; 00087 arg >> arg1; 00088 arg >> arg2; 00089 replyType = EditDCOPInterface_ftable[5][0]; 00090 QDataStream _replyStream( replyData, IO_WriteOnly ); 00091 _replyStream << insertText(arg0, arg1, arg2 ); 00092 } break; 00093 case 6: { // bool removeText(uint,uint,uint,uint) 00094 uint arg0; 00095 uint arg1; 00096 uint arg2; 00097 uint arg3; 00098 QDataStream arg( data, IO_ReadOnly ); 00099 arg >> arg0; 00100 arg >> arg1; 00101 arg >> arg2; 00102 arg >> arg3; 00103 replyType = EditDCOPInterface_ftable[6][0]; 00104 QDataStream _replyStream( replyData, IO_WriteOnly ); 00105 _replyStream << removeText(arg0, arg1, arg2, arg3 ); 00106 } break; 00107 case 7: { // bool insertLine(uint,QString) 00108 uint arg0; 00109 QString arg1; 00110 QDataStream arg( data, IO_ReadOnly ); 00111 arg >> arg0; 00112 arg >> arg1; 00113 replyType = EditDCOPInterface_ftable[7][0]; 00114 QDataStream _replyStream( replyData, IO_WriteOnly ); 00115 _replyStream << insertLine(arg0, arg1 ); 00116 } break; 00117 case 8: { // bool removeLine(uint) 00118 uint arg0; 00119 QDataStream arg( data, IO_ReadOnly ); 00120 arg >> arg0; 00121 replyType = EditDCOPInterface_ftable[8][0]; 00122 QDataStream _replyStream( replyData, IO_WriteOnly ); 00123 _replyStream << removeLine(arg0 ); 00124 } break; 00125 default: 00126 return DCOPObject::process( fun, data, replyType, replyData ); 00127 } 00128 return true; 00129 } 00130 00131 QCStringList EditDCOPInterface::interfaces() 00132 { 00133 QCStringList ifaces = DCOPObject::interfaces(); 00134 ifaces += "KTextEditor::EditDCOPInterface"; 00135 return ifaces; 00136 } 00137 00138 QCStringList EditDCOPInterface::functions() 00139 { 00140 QCStringList funcs = DCOPObject::functions(); 00141 for ( int i = 0; EditDCOPInterface_ftable[i][2]; i++ ) { 00142 if (EditDCOPInterface_ftable_hiddens[i]) 00143 continue; 00144 QCString func = EditDCOPInterface_ftable[i][0]; 00145 func += ' '; 00146 func += EditDCOPInterface_ftable[i][2]; 00147 funcs << func; 00148 } 00149 return funcs; 00150 } 00151 00152 } // namespace 00153
KDE Logo
This file is part of the documentation for interfaces Library Version 3.3.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sun Oct 17 11:32:14 2004 by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2003