Revision: 159
Author: mital.d.vora
Date: Sat Nov 21 04:05:39 2009
Log: Adding MCruxPluginManager in window scope.
http://code.google.com/p/mcrux/source/detail?r=159
Modified:
/trunk/src/lib/MCrux.cpp
/trunk/src/lib/MCruxWebView.cpp
/trunk/src/lib/MCruxWebView.h
/trunk/src/lib/plugin/MCruxPluginManager.cpp
/trunk/src/lib/plugin/MCruxPluginManager.h
/trunk/src/lib/window/MCruxQTWindow.h
/trunk/src/lib/window/MCruxWindowManager.cpp
/trunk/src/lib/window/MCruxWindowManager.h
/trunk/src/
src.pro
=======================================
--- /trunk/src/lib/MCrux.cpp Sat Nov 7 10:37:22 2009
+++ /trunk/src/lib/MCrux.cpp Sat Nov 21 04:05:39 2009
@@ -22,6 +22,7 @@
#include <mcrux/MCrux.h>
#include "MCruxSpecParser.h"
#include <window/MCruxWindowManager.h>
+#include <plugin/MCruxPluginManager.h>
#ifdef WIN32
#include "window/MCruxWin32Window.h"
@@ -120,15 +121,8 @@
list<wstring> plugins;
parser.getPlugins(plugins);
-#ifdef WIN32
MCruxPluginManager pluginManager(plugins);
-#endif
-
- MCruxWindowManager windowManager(mcruxWindowConfigs
-#ifdef WIN32
- , &pluginManager
-#endif
- );
+ MCruxWindowManager windowManager(mcruxWindowConfigs, &pluginManager);
if(mcruxWindowConfigs.size())
{
=======================================
--- /trunk/src/lib/MCruxWebView.cpp Sun Nov 8 04:26:31 2009
+++ /trunk/src/lib/MCruxWebView.cpp Sat Nov 21 04:05:39 2009
@@ -62,16 +62,16 @@
hWebViewWindow = NULL;
HRESULT hr = WebKitCreateInstance(CLSID_WebView, 0, IID_IWebView,
(void**)&webView);
- if (SUCCEEDED(hr))
- {
- return true;
+ if (FAILED(hr))
+ {
+ return false;
}
#else // for linux
webView = new QWebView(parentWindow);
parentWindow->setCentralWidget(webView);
#endif
- return false;
+ return true;
}
#ifdef WIN32
=======================================
--- /trunk/src/lib/MCruxWebView.h Sun Nov 8 04:26:31 2009
+++ /trunk/src/lib/MCruxWebView.h Sat Nov 21 04:05:39 2009
@@ -65,12 +65,6 @@
#endif
~MCruxWebView();
-#ifndef WIN32 // for linux
- QWebView * getWebView() const
- {
- return webView;
- }
-#endif
bool createWebView();
bool navigateTo(const wstring & url);
@@ -85,6 +79,13 @@
bool navigateTo(IWebURLRequest *request);
IWebView * getWebView();
+
+#else // for linux
+
+ QWebView * getWebView() const
+ {
+ return webView;
+ }
#endif
};
=======================================
--- /trunk/src/lib/plugin/MCruxPluginManager.cpp Sun Nov 1 04:45:19 2009
+++ /trunk/src/lib/plugin/MCruxPluginManager.cpp Sat Nov 21 04:05:39 2009
@@ -18,12 +18,13 @@
**/
#include "abstract/MCruxWindow.h"
-#include "MCruxJSObject.h"
#include "MCruxPluginManager.h"
+#ifdef WIN32
+#include "MCruxJSObject.h"
#include <jscore/MJSCoreObject.h>
#include <jscore/MJSCoreObjectFactory.h>
-
+#endif
MCruxPluginManager::MCruxPluginManager(const list<wstring>
extensionPluginNames)
: pluginDllsLoaded(false)
@@ -40,7 +41,7 @@
{
}
-
+#ifdef WIN32
bool MCruxPluginManager::AddPlugin(const wstring & pluginName,
JSContextRef ctx)
{
wstring pluginDll = TEXT("plugins/");
@@ -122,3 +123,4 @@
// TODO: inject a new object called currentWindow
// this object will be responsible for handling various events of
currentwindow.
}
+#endif
=======================================
--- /trunk/src/lib/plugin/MCruxPluginManager.h Sat Oct 31 20:31:05 2009
+++ /trunk/src/lib/plugin/MCruxPluginManager.h Sat Nov 21 04:05:39 2009
@@ -29,34 +29,42 @@
using namespace std;
+#ifdef WIN32
#include <WebKit/WebKit.h>
+#include "MCruxJSObject.h"
+#endif
#include <mcrux/MCrux.h>
-#include "MCruxJSObject.h"
class MCruxWindow;
+#ifdef WIN32
typedef MObject * (*GetPluginFunctionPtr)(JSContextRef ctx);
+#endif
class MCruxPluginManager
{
bool pluginDllsLoaded;
list<wstring> pluginNames;
+#ifdef WIN32
map<string, MObject *> plugins;
bool AddPlugin(const wstring & pluginName, JSContextRef ctx);
void loadExtensionPlugins(JSContextRef ctx);
-
MObject * getMCruxJSObject(JSContextRef ctx);
+#endif
+
public:
MCruxPluginManager(const list<wstring> extensionPluginNames);
~MCruxPluginManager();
+#ifdef WIN32
HRESULT injectPlugins(IWebView *webView,
JSContextRef context,
JSObjectRef windowScriptObject);
+#endif
};
#endif // _MCRUXPLUGINMANAGER_H_
=======================================
--- /trunk/src/lib/window/MCruxQTWindow.h Sun Nov 8 04:26:31 2009
+++ /trunk/src/lib/window/MCruxQTWindow.h Sat Nov 21 04:05:39 2009
@@ -27,6 +27,17 @@
#include "MCruxWebView.h"
//#include "plugin/MCruxPluginManager.h"
+class MyObject :public QObject
+{
+ Q_OBJECT
+
+public slots:
+ void myFunction(){
+ cout << "Hello World" << endl;
+ }
+ public:
+ MyObject() { }
+};
class MCruxQTWindow
: public QMainWindow,
=======================================
--- /trunk/src/lib/window/MCruxWindowManager.cpp Sat Nov 7 10:37:22 2009
+++ /trunk/src/lib/window/MCruxWindowManager.cpp Sat Nov 21 04:05:39 2009
@@ -25,12 +25,8 @@
#endif
MCruxWindowManager::MCruxWindowManager(const
list<MCruxWindowConfiguration*> & _windowConfigurations
-#ifdef WIN32
, MCruxPluginManager * _pluginManager)
: pluginManager(_pluginManager)
-#else
- )
-#endif
{
if(_windowConfigurations.size())
{
=======================================
--- /trunk/src/lib/window/MCruxWindowManager.h Sun Nov 1 05:42:59 2009
+++ /trunk/src/lib/window/MCruxWindowManager.h Sat Nov 21 04:05:39 2009
@@ -22,26 +22,17 @@
#include <list>
#include <abstract/MCruxWindow.h>
-
-#ifdef WIN32
#include <plugin/MCruxPluginManager.h>
-#endif
class MCruxWindowManager
{
const list<MCruxWindowConfiguration*> windowConfigurations;
-#ifdef WIN32
MCruxPluginManager * pluginManager;
-#endif
list<MCruxWindow *> windows;
public:
- MCruxWindowManager(const list<MCruxWindowConfiguration*> &
_windowConfigurations
-#ifdef WIN32
- ,MCruxPluginManager * _pluginManager
-#endif
- );
+ MCruxWindowManager(const list<MCruxWindowConfiguration*> &
_windowConfigurations, MCruxPluginManager * _pluginManager);
~MCruxWindowManager();
=======================================
--- /trunk/src/
src.pro Sat Nov 7 10:37:22 2009
+++ /trunk/src/
src.pro Sat Nov 21 04:05:39 2009
@@ -20,11 +20,13 @@
HEADERS += lib/MCruxSpecParser.h \
lib/MCruxWebView.h \
include/mcrux/MCrux.h \
+ include/mcrux/abstract/callback.h \
lib/abstract/MCruxWindow.h \
lib/window/MCruxQTWindow.h \
lib/window/MCruxWindowConfiguration.h \
lib/window/MCruxWindowManager.h \
- include/mcrux/abstract/callback.h
+ lib/plugin/MCruxPluginManager.h
+
SOURCES += bin/mcrux_linux.cpp \
lib/MCrux.cpp \
lib/MCruxSpecParser.cpp \
@@ -32,4 +34,5 @@
lib/abstract/MCruxWindow.cpp \
lib/window/MCruxQTWindow.cpp \
lib/window/MCruxWindowConfiguration.cpp \
- lib/window/MCruxWindowManager.cpp
+ lib/window/MCruxWindowManager.cpp \
+ lib/plugin/MCruxPluginManager.cpp