summaryrefslogtreecommitdiffstats
path: root/src/progs/picdem_bootloader/gui
diff options
context:
space:
mode:
Diffstat (limited to 'src/progs/picdem_bootloader/gui')
-rw-r--r--src/progs/picdem_bootloader/gui/Makefile.am6
-rw-r--r--src/progs/picdem_bootloader/gui/picdem_bootloader_ui.cpp48
-rw-r--r--src/progs/picdem_bootloader/gui/picdem_bootloader_ui.h37
3 files changed, 91 insertions, 0 deletions
diff --git a/src/progs/picdem_bootloader/gui/Makefile.am b/src/progs/picdem_bootloader/gui/Makefile.am
new file mode 100644
index 0000000..57d10bb
--- /dev/null
+++ b/src/progs/picdem_bootloader/gui/Makefile.am
@@ -0,0 +1,6 @@
+INCLUDES = -I$(top_srcdir)/src $(all_includes)
+METASOURCES = AUTO
+
+noinst_LTLIBRARIES = libpicdembootloaderui.la
+libpicdembootloaderui_la_LDFLAGS = $(all_libraries)
+libpicdembootloaderui_la_SOURCES = picdem_bootloader_ui.cpp
diff --git a/src/progs/picdem_bootloader/gui/picdem_bootloader_ui.cpp b/src/progs/picdem_bootloader/gui/picdem_bootloader_ui.cpp
new file mode 100644
index 0000000..c958249
--- /dev/null
+++ b/src/progs/picdem_bootloader/gui/picdem_bootloader_ui.cpp
@@ -0,0 +1,48 @@
+/***************************************************************************
+ * Copyright (C) 2007 Nicolas Hadacek <hadacek@kde.org> *
+ * *
+ * 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 "picdem_bootloader_ui.h"
+
+#include "progs/picdem_bootloader/base/picdem_bootloader.h"
+
+//-----------------------------------------------------------------------------
+PicdemBootloader::ConfigWidget::ConfigWidget(const ::Programmer::Group &group, QWidget *parent)
+ : ::Programmer::ConfigWidget(group, parent)
+{
+ uint row = numRows();
+
+ QLabel *label = new QLabel(i18n("USB Vendor Id:"), this);
+ addWidget(label, row,row, 0,0);
+ _vendorId = new HexWordEditor(4, this);
+ addWidget(_vendorId, row,row, 1,1);
+ row++;
+
+ label = new QLabel(i18n("USB Product Id:"), this);
+ addWidget(label, row,row, 0,0);
+ _productId = new HexWordEditor(4, this);
+ addWidget(_productId, row,row, 1,1);
+ row++;
+}
+
+void PicdemBootloader::ConfigWidget::saveConfig()
+{
+ Config::writeVendorId(_vendorId->value().toUInt());
+ Config::writeProductId(_productId->value().toUInt());
+}
+
+void PicdemBootloader::ConfigWidget::loadConfig()
+{
+ _vendorId->setValue(Config::readVendorId());
+ _productId->setValue(Config::readProductId());
+}
+
+//-----------------------------------------------------------------------------
+::Programmer::ConfigWidget *PicdemBootloader::GroupUI::createConfigWidget(QWidget *parent) const
+{
+ return new ConfigWidget(static_cast<const ::Programmer::Group &>(group()), parent);
+}
diff --git a/src/progs/picdem_bootloader/gui/picdem_bootloader_ui.h b/src/progs/picdem_bootloader/gui/picdem_bootloader_ui.h
new file mode 100644
index 0000000..50777af
--- /dev/null
+++ b/src/progs/picdem_bootloader/gui/picdem_bootloader_ui.h
@@ -0,0 +1,37 @@
+/***************************************************************************
+ * Copyright (C) 2007 Nicolas Hadacek <hadacek@kde.org> *
+ * *
+ * 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. *
+ ***************************************************************************/
+#ifndef PICDEM_BOOTLOADER_UI_H
+#define PICDEM_BOOTLOADER_UI_H
+
+#include "progs/bootloader/gui/bootloader_ui.h"
+
+namespace PicdemBootloader
+{
+//----------------------------------------------------------------------------
+class ConfigWidget: public ::Programmer::ConfigWidget
+{
+Q_OBJECT
+public:
+ ConfigWidget(const ::Programmer::Group &group, QWidget *parent);
+ virtual void loadConfig();
+ virtual void saveConfig();
+
+private:
+ HexWordEditor *_vendorId, *_productId;
+};
+
+//----------------------------------------------------------------------------
+class GroupUI : public ::Bootloader::GroupUI
+{
+public:
+ virtual ::Programmer::ConfigWidget *createConfigWidget(QWidget *parent) const;
+};
+} // namespace
+
+#endif