go forward

parent a9398510
......@@ -36,18 +36,73 @@
*/
#include <QApplication>
#include <QFile>
#include <QObject>
#include "skylivex.h"
/*
* class SkyliveX
* This is the core of the SkyliveX client.
* Here the inter-thread and inter-process communication
* with plugins is done, so, the magic happen here
*/
class SkyliveX : public QObject
{
Q_OBJECT
public:
SkyliveX(QObject *parent=0) : QObject(parent) {}
~SkyliveX() {}
public slots:
void run()
{
emit finished();
}
signals:
void finished();
};
/*
* Not less important than the core is the main window.
* It is a Wekbit object that load our HTML/js gui
* for the main window!
*/
//class MainWindow
/*
* main loop.
* Here lives some objects:
* - the initial splash screen
* - the plugin messages emitter/receiver
* - the main window
* - the plugin manager
* - the config parser
*/
int main(int argc, char *argv[])
{
// Start our application object
QApplication skylivex(argc, argv);
// Start the splash screen. also
// the splash screen is a (transparent) webkit object
QFile splashfile("gui/splash.html");
SplashPage splashwin(splashfile);
splashwin.show();
// Instance of the core ITC/IPC messasing
SkyliveX *skx = new SkyliveX(&skylivex);
// connect the "finished" signal coming from the ITC/IPC to the qui call
QObject::connect(skx, SIGNAL(finished()), &skx, SLOT(quit()));
// and give a slot to the ITC/IPC in the main loop
QTimer::signalShot(0, skx, SLOT(run()));
// and then.. go!
return skylivex.exec();
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment