Ejemplo n.º 1
0
//Constructor, creates a new Scripting Engine using AngelScript
ScriptEngine::ScriptEngine()
{
    // Create the script engine
    m_engine = asCreateScriptEngine(ANGELSCRIPT_VERSION);
    if( m_engine == 0 )
    {
        std::cout << "Failed to create script engine." << std::endl;
    }
    // Configure the script engine with all the functions, 
    // and variables that the script should be able to use.
    configureEngine(m_engine);
}
Ejemplo n.º 2
0
    //Constructor, creates a new Scripting Engine using AngelScript
    ScriptEngine::ScriptEngine()
    {
        // Create the script engine
        m_engine = asCreateScriptEngine(ANGELSCRIPT_VERSION);
        if (m_engine == NULL)
        {
            Log::fatal("Scripting", "Failed to create script engine.");
        }

        // The script compiler will write any compiler messages to the callback.
        m_engine->SetMessageCallback(asFUNCTION(AngelScript_ErrorCallback), 0, asCALL_CDECL);

        // Configure the script engine with all the functions, 
        // and variables that the script should be able to use.
        configureEngine(m_engine);
    }
Ejemplo n.º 3
0
EngineManagementWidget::EngineManagementWidget(QWidget* parent)
	: QWidget(parent),
	  m_engineManager(CuteChessApplication::instance()->engineManager()),
	  m_hasChanged(false),
	  m_filteredModel(new QSortFilterProxyModel(this)),
	  ui(new Ui::EngineManagementWidget)
{
	ui->setupUi(this);

	// Set up a filtered model
	m_filteredModel->setSourceModel(new EngineConfigurationModel(
		m_engineManager, this));
	m_filteredModel->setFilterCaseSensitivity(Qt::CaseInsensitive);
	m_filteredModel->setSortCaseSensitivity(Qt::CaseInsensitive);
	m_filteredModel->sort(0);
	m_filteredModel->setDynamicSortFilter(true);
	ui->m_enginesList->setModel(m_filteredModel);

	connect(ui->m_searchEngineEdit, SIGNAL(textChanged(QString)),
		this, SLOT(updateSearch(QString)));
	
	// Signals for updating the UI
	connect(ui->m_enginesList->selectionModel(),
		SIGNAL(selectionChanged(const QItemSelection&, const QItemSelection&)),
		this, SLOT(updateUi()));
	connect(ui->m_enginesList, SIGNAL(doubleClicked(QModelIndex)),
		this, SLOT(configureEngine(QModelIndex)));
	
	// Add button
	connect(ui->m_addBtn, SIGNAL(clicked(bool)), this, SLOT(addEngine()));

	// Configure button
	connect(ui->m_configureBtn, SIGNAL(clicked(bool)), this,
		SLOT(configureEngine()));
	
	// Remove button
	connect(ui->m_removeBtn, SIGNAL(clicked(bool)), this, SLOT(removeEngine()));

	// Default location for new engines
	QString dir = QSettings().value("ui/default_engine_location").toString();
	ui->m_defaultLocationEdit->setText(dir);
	connect(ui->m_browseDefaultLocationBtn, SIGNAL(clicked()),
		this, SLOT(browseDefaultLocation()));

	updateEngineCount();
}
EngineManagementDialog::EngineManagementDialog(QWidget* parent)
	: QDialog(parent),
	  m_filteredModel(new QSortFilterProxyModel(this)),
	  ui(new Ui::EngineManagementDialog)
{
	ui->setupUi(this);

	// Setup a copy of the Engine Manager to manage adding, deleting and
	// configuring engines _within_ this dialog.
	m_engineManager = new EngineManager(this);
	m_engineManager->setEngines(
		CuteChessApplication::instance()->engineManager()->engines());

	// Set up a filtered model
	m_filteredModel->setSourceModel(new EngineConfigurationModel(
		m_engineManager, this));
	m_filteredModel->setFilterCaseSensitivity(Qt::CaseInsensitive);
	m_filteredModel->setSortCaseSensitivity(Qt::CaseInsensitive);
	m_filteredModel->sort(0);
	m_filteredModel->setDynamicSortFilter(true);
	ui->m_enginesList->setModel(m_filteredModel);

	connect(ui->m_searchEngineEdit, SIGNAL(textChanged(QString)),
		this, SLOT(updateSearch(QString)));
	
	// Signals for updating the UI
	connect(ui->m_enginesList->selectionModel(),
		SIGNAL(selectionChanged(const QItemSelection&, const QItemSelection&)),
		this, SLOT(updateUi()));
	connect(ui->m_enginesList, SIGNAL(doubleClicked(QModelIndex)),
		this, SLOT(configureEngine(QModelIndex)));
	
	// Add button
	connect(ui->m_addBtn, SIGNAL(clicked(bool)), this, SLOT(addEngine()));

	// Configure button
	connect(ui->m_configureBtn, SIGNAL(clicked(bool)), this,
		SLOT(configureEngine()));
	
	// Remove button
	connect(ui->m_removeBtn, SIGNAL(clicked(bool)), this, SLOT(removeEngine()));
}
Ejemplo n.º 5
0
 void setEngine(Engine& engine)
 {
     assert(!_engine && "Engine is already assigned");
     _engine = &engine;
     configureEngine();
 }
void EngineManagementDialog::configureEngine()
{
	configureEngine(ui->m_enginesList->currentIndex());
}