diff options
Diffstat (limited to 'src/libgui/project_editor.cpp')
-rw-r--r-- | src/libgui/project_editor.cpp | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/src/libgui/project_editor.cpp b/src/libgui/project_editor.cpp new file mode 100644 index 0000000..4b86429 --- /dev/null +++ b/src/libgui/project_editor.cpp @@ -0,0 +1,72 @@ +/*************************************************************************** + * Copyright (C) 2005-2006 Nicolas Hadacek <hadacek@kde.org> * + * Copyright (C) 2003 Alain Gibaud <alain.gibaud@free.fr> * + * * + * 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 2 of the License, or * + * (at your option) any later version. * + ***************************************************************************/ +#include "project_editor.h" + +#include <qlabel.h> +#include <qlayout.h> +#include <klocale.h> + +#include "project.h" +#include "tools/list/compile_config.h" +#include "device_gui.h" + +ProjectEditor::ProjectEditor(Project &project, QWidget *parent) + : Dialog(parent, "project_options", true, i18n("Project Options"), Ok|Cancel, Ok, false), + _project(project) +{ + QVBoxLayout *top = new QVBoxLayout(mainWidget(), 0, 10); + TabWidget *tabWidget = new TabWidget(mainWidget()); + top->addWidget(tabWidget); + +// global + QWidget *tab = new QWidget(tabWidget); + tabWidget->addTab(tab, i18n("General")); + QGridLayout *grid = new QGridLayout(tab, 0, 0, 10, 10); + QLabel *label = new QLabel(i18n("Name:"), tab); + grid->addWidget(label, 0, 0); + label = new QLabel(project.name(), tab); + grid->addWidget(label, 0, 1); + label = new QLabel(i18n("Description:"), tab); + grid->addWidget(label, 1, 0); + _description = new QTextEdit(tab); + _description->setText(_project.description()); + grid->addMultiCellWidget(_description, 1,1, 1,2); + label = new QLabel(i18n("Version:"), tab); + grid->addWidget(label, 2, 0); + _version = new QLineEdit(tab); + _version->setText(_project.version()); + grid->addWidget(_version, 2, 1); + label = new QLabel(i18n("Device:"), tab); + grid->addWidget(label, 3, 0); + _device = new DeviceChooser::Button(false, tab); + _device->setDevice(Compile::Config::device(&_project)); + grid->addWidget(_device, 3, 1); + grid->setRowStretch(4, 1); + grid->setColStretch(2, 1); + +// toochain + tab = new QWidget(tabWidget); + tabWidget->addTab(tab, i18n("Toochain")); + grid = new QGridLayout(tab, 0, 0, 10, 10); + _tools = new ToolsConfigWidget(&project, tab); + _tools->loadConfig(); + grid->addMultiCellWidget(_tools, 0,0, 0,2); + grid->setRowStretch(1, 1); + grid->setColStretch(2, 1); +} + +void ProjectEditor::slotOk() +{ + _project.setDescription(_description->text()); + _project.setVersion(_version->text()); + Compile::Config::setDevice(&_project, _device->device()); + _tools->saveConfig(); + accept(); +} |