#include <QtGui/QWidget>
#include <QtGui/QApplication>
#include <QtGui/QHBoxLayout>
#include "Direct3DWidget.h"
int main(int argc, char *argv[])
{
//------------------------------Start initialization
//Additional parameters, just add a parameter separated by comma
std::string aAdditionalParameters[] = {"-direct3d"};
int iRealArgumentAmount = argc + sizeof(aAdditionalParameters)/sizeof(std::string);
//This double pointer will contain parameters from argv and
//statical parameters which necessary for this application
char** pArguments = new char*[iRealArgumentAmount];
//Copy all source(from the command line) parameters
for(int i = ; i < argc; ++i)
{
*(pArguments + i) = new char[ strlen(argv[i]) + 1 ];
strcpy( *(pArguments + i), argv[i] );
}
//Append parameters we want to add
for(int i = argc, j = ; i < iRealArgumentAmount; ++i, ++j)
{
*(pArguments + i) = new char[ aAdditionalParameters[j].size() + 1 ];
strcpy( *(pArguments + i), aAdditionalParameters[j].c_str() );
}
for(int i = ; i < iRealArgumentAmount; ++i)
delete []*(pArguments + i);
delete []pArguments;
//--------------------------------Initialization complete
Direct3DWidget* xScene = new Direct3DWidget(&xMainWindow);
xMainLayout->addWidget(xScene);
xMainWindow.setLayout(xMainLayout);
//It is important to initialize the Direct3d after the widget was embedded to the window
xScene->InitDirect3D();
xMainWindow.show();
return xApplication.exec();
}