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.2.3.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Thu Sep 30 05:20:32 2004 by doxygen 1.3.4 written by Dimitri van Heesch, © 1997-2003