00001 /****************************************************************************** 00002 * This file is part of the Gluon Development Platform 00003 * Copyright (C) 2010 Dan Leinir Turthra Jensen <admin@leinir.dk> 00004 * 00005 * This library is free software; you can redistribute it and/or 00006 * modify it under the terms of the GNU Lesser General Public 00007 * License as published by the Free Software Foundation; either 00008 * version 2.1 of the License, or (at your option) any later version. 00009 * 00010 * This library is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00013 * Lesser General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU Lesser General Public 00016 * License along with this library; if not, write to the Free Software 00017 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 00018 */ 00019 #include <QtScript/QScriptExtensionPlugin> 00020 #include <QtScript/QScriptValue> 00021 #include <QtScript/QScriptEngine> 00022 00023 void qtscript_initialize_com_trolltech_qt_gui_bindings( QScriptValue& ); 00024 00025 class com_trolltech_qt_gui_ScriptPlugin : public QScriptExtensionPlugin 00026 { 00027 public: 00028 QStringList keys() const; 00029 void initialize( const QString& key, QScriptEngine* engine ); 00030 }; 00031 00032 QStringList com_trolltech_qt_gui_ScriptPlugin::keys() const 00033 { 00034 QStringList list; 00035 list << QLatin1String( "qt" ); 00036 list << QLatin1String( "qt.gui" ); 00037 return list; 00038 } 00039 00040 void com_trolltech_qt_gui_ScriptPlugin::initialize( const QString& key, QScriptEngine* engine ) 00041 { 00042 if( key == QLatin1String( "qt" ) ) 00043 { 00044 } 00045 else if( key == QLatin1String( "qt.gui" ) ) 00046 { 00047 QScriptValue extensionObject = engine->globalObject(); 00048 qtscript_initialize_com_trolltech_qt_gui_bindings( extensionObject ); 00049 } 00050 else 00051 { 00052 Q_ASSERT_X( false, "com_trolltech_qt_gui::initialize", qPrintable( key ) ); 00053 } 00054 } 00055 00056 Q_EXPORT_STATIC_PLUGIN( com_trolltech_qt_gui_ScriptPlugin ) 00057 Q_EXPORT_PLUGIN2( qtscript_com_trolltech_qt_gui, com_trolltech_qt_gui_ScriptPlugin )