/* * Copyright 2008 Ben Boeckel * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program. If not, see . */ // Header include #include "ScriptWidget.h" Pokemodr::ScriptWidget::ScriptWidget(QWidget* parent, const Pokemod::Script& value) : QWidget(parent), m_value(value) { setupUi(this); QStringList languages = QStringList() << "python" << "ruby" << "kjs"; varInterpreter->addItems(languages); } Pokemod::Script Pokemodr::ScriptWidget::value() const { return m_value; } void Pokemodr::ScriptWidget::setValue(const Pokemod::Script& value) { if (m_value == value) return; m_value = value; varInterpreter->setEditText(m_value.interpreter()); QTextCursor cursor = varScript->textCursor(); varScript->setPlainText(m_value.script()); varScript->setTextCursor(cursor); emit(valueChanged(m_value)); } void Pokemodr::ScriptWidget::on_varInterpreter_activated(const QString& interpreter) { m_value.setInterpreter(interpreter); emit(valueChanged(m_value)); } void Pokemodr::ScriptWidget::on_varScript_textChanged() { m_value.setScript(varScript->toPlainText()); emit(valueChanged(m_value)); }