From af157881a6265b1ea9e74d61853c2d3d865a6080 Mon Sep 17 00:00:00 2001 From: zecke Date: Wed, 02 Mar 2005 19:23:54 +0000 Subject: Merge HEAD with QTOPIA_2_1_1 vendor branch The new qcop tool can change the user and wait for repsonses on the channel it sent data --- (limited to 'core/apps') diff --git a/core/apps/qcop/main.cpp b/core/apps/qcop/main.cpp index 9306cbf..0f5cb2c 100644 --- a/core/apps/qcop/main.cpp +++ b/core/apps/qcop/main.cpp @@ -1,15 +1,20 @@ /********************************************************************** -** Copyright (C) 2000 Trolltech AS. All rights reserved. +** Copyright (C) 2000-2004 Trolltech AS. All rights reserved. ** -** This file is part of Qtopia Environment. +** This file is part of the Qtopia Environment. +** +** This program is free software; you can redistribute it and/or modify it +** under the terms of the GNU General Public License as published by the +** Free Software Foundation; either version 2 of the License, or (at your +** option) any later version. +** +** A copy of the GNU GPL license version 2 is included in this package as +** LICENSE.GPL. ** -** This file may be distributed and/or modified under the terms of the -** GNU General Public License version 2 as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL included in the -** packaging of this file. -** -** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE -** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. +** This program is distributed in the hope that it will be useful, but +** WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +** See the GNU General Public License for more details. ** ** See http://www.trolltech.com/gpl/ for GPL licensing information. ** @@ -18,66 +23,9 @@ ** **********************************************************************/ -#include - -#include -#include - -#include -#include - -static void usage() -{ - fprintf( stderr, "Usage: qcop channel command [parameters]\n" ); -} - -static void syntax( const QString &where, const QString &what ) -{ - fprintf( stderr, "Syntax error in %s: %s\n", where.latin1(), what.latin1() ); - exit(1); -} +#include "qcopimpl.h" int main( int argc, char *argv[] ) { - QApplication app( argc, argv ); - - if ( argc < 3 ) { - usage(); - exit(1); - } - - QString channel = argv[1]; - QString command = argv[2]; - command.stripWhiteSpace(); - - int paren = command.find( "(" ); - if ( paren <= 0 ) - syntax( "command", command ); - - QString params = command.mid( paren + 1 ); - if ( params[params.length()-1] != ')' ) - syntax( "command", command ); - - params.truncate( params.length()-1 ); - QCopEnvelope env(channel.latin1(), command.latin1()); - - int argIdx = 3; - - QStringList paramList = QStringList::split( ",", params ); - QStringList::Iterator it; - for ( it = paramList.begin(); it != paramList.end(); ++it ) { - QString arg = argv[argIdx]; - if ( *it == "QString" ) { - env << arg; - } else if ( *it == "int" ) { - env << arg.toInt(); - } else { - syntax( "paramter type", *it ); - } - argIdx++; - } - - QTimer::singleShot( 0, &app, SLOT(quit()) ); - return app.exec(); + return doqcopimpl(argc,argv); } - diff --git a/core/apps/qcop/qcop.pro b/core/apps/qcop/qcop.pro index 8cb1b55..6276bee 100644 --- a/core/apps/qcop/qcop.pro +++ b/core/apps/qcop/qcop.pro @@ -1,8 +1,8 @@ TEMPLATE = app CONFIG = qt warn_on DESTDIR = $(OPIEDIR)/bin -HEADERS = -SOURCES = main.cpp +HEADERS = qcopimpl.h +SOURCES = qcopimpl.cpp main.cpp INCLUDEPATH += $(OPIEDIR)/include DEPENDPATH += $(OPIEDIR)/include LIBS += -lqpe diff --git a/core/apps/qcop/qcopimpl.cpp b/core/apps/qcop/qcopimpl.cpp index c018aea..43863bb 100644 --- a/core/apps/qcop/qcopimpl.cpp +++ b/core/apps/qcop/qcopimpl.cpp @@ -16,16 +16,6 @@ ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ** See the GNU General Public License for more details. ** -** In addition, as a special exception Trolltech gives permission to link -** the code of this program with Qtopia applications copyrighted, developed -** and distributed by Trolltech under the terms of the Qtopia Personal Use -** License Agreement. You must comply with the GNU General Public License -** in all respects for all of the code used other than the applications -** licensed under the Qtopia Personal Use License Agreement. If you modify -** this file, you may extend this exception to your version of the file, -** but you are not obligated to do so. If you do not wish to do so, delete -** this exception statement from your version. -** ** See http://www.trolltech.com/gpl/ for GPL licensing information. ** ** Contact info@trolltech.com if any conditions of this licensing are diff --git a/core/apps/qcop/qcopimpl.h b/core/apps/qcop/qcopimpl.h index dfda063..dc847f1 100644 --- a/core/apps/qcop/qcopimpl.h +++ b/core/apps/qcop/qcopimpl.h @@ -16,16 +16,6 @@ ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ** See the GNU General Public License for more details. ** -** In addition, as a special exception Trolltech gives permission to link -** the code of this program with Qtopia applications copyrighted, developed -** and distributed by Trolltech under the terms of the Qtopia Personal Use -** License Agreement. You must comply with the GNU General Public License -** in all respects for all of the code used other than the applications -** licensed under the Qtopia Personal Use License Agreement. If you modify -** this file, you may extend this exception to your version of the file, -** but you are not obligated to do so. If you do not wish to do so, delete -** this exception statement from your version. -** ** See http://www.trolltech.com/gpl/ for GPL licensing information. ** ** Contact info@trolltech.com if any conditions of this licensing are -- cgit v0.9.0.2