/**************************************************************************** ** ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of the Qt Assistant of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** No Commercial Usage ** This file contains pre-release code and may not be distributed. ** You may use this file in accordance with the terms and conditions ** contained in the either Technology Preview License Agreement or the ** Beta Release License Agreement. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Nokia gives you certain ** additional rights. These rights are described in the Nokia Qt LGPL ** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this ** package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** If you are unsure which license is appropriate for your use, please ** contact the sales department at http://qt.nokia.com/contact. ** $QT_END_LICENSE$ ** ****************************************************************************/ #include #include #include "cmdlineparser.h" QT_BEGIN_NAMESPACE #define CHECK_NEXT_ARG \ ++i < arguments.count() && !arguments.at(i).startsWith(QLatin1String("-")) CmdLineParser::CmdLineParser() : m_enableRemoteControl(false), m_contents(Untouched), m_index(Untouched), m_bookmarks(Untouched), m_search(Untouched), m_register(None), m_removeSearchIndex(false), m_copy(false), m_quiet(false) { m_helpMessage = QLatin1String( "Usage: assistant [Options]\n\n" "-collectionFile file Uses the specified collection\n" " file instead of the default one\n" "-showUrl url Shows the document with the\n" " url.\n" "-enableRemoteControl Enables Assistant to be\n" " remotely controlled.\n" "-show widget Shows the specified dockwidget\n" " which can be \"contents\", \"index\",\n" " \"bookmarks\" or \"search\".\n" "-activate widget Activates the specified dockwidget\n" " which can be \"contents\", \"index\",\n" " \"bookmarks\" or \"search\".\n" "-hide widget Hides the specified dockwidget\n" " which can be \"contents\", \"index\"\n" " \"bookmarks\" or \"search\".\n" "-register helpFile Registers the specified help file\n" " (.qch) in the given collection\n" " file.\n" "-unregister helpFile Unregisters the specified help file\n" " (.qch) from the give collection\n" " file.\n" "-setCurrentFilter filter Set the filter as the active filter.\n" "-remove-search-index Removes the full text search index.\n" "-quiet Does not display any error or\n" " status message.\n" "-help Displays this help.\n" ); } CmdLineParser::Result CmdLineParser::parse(const QStringList &arguments) { QString error; bool showHelp = false; for (int j=1; j") + msg + QLatin1String(""); if (error) QMessageBox::critical(0, QObject::tr("Qt Assistant"), s); else QMessageBox::information(0, QObject::tr("Qt Assistant"), s); #else fprintf(error ? stderr : stdout, "%s\n", qPrintable(msg)); #endif } void CmdLineParser::setCollectionFile(const QString &file) { m_collectionFile = file; } QString CmdLineParser::collectionFile() const { return m_collectionFile; } QUrl CmdLineParser::url() const { return m_url; } bool CmdLineParser::enableRemoteControl() const { return m_enableRemoteControl; } CmdLineParser::ShowState CmdLineParser::contents() const { return m_contents; } CmdLineParser::ShowState CmdLineParser::index() const { return m_index; } CmdLineParser::ShowState CmdLineParser::bookmarks() const { return m_bookmarks; } CmdLineParser::ShowState CmdLineParser::search() const { return m_search; } QString CmdLineParser::currentFilter() const { return m_currentFilter; } bool CmdLineParser::removeSearchIndex() const { return m_removeSearchIndex; } CmdLineParser::RegisterState CmdLineParser::registerRequest() const { return m_register; } QString CmdLineParser::helpFile() const { return m_helpFile; } QT_END_NAMESPACE