diff options
author | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-02-24 18:42:24 +0000 |
---|---|---|
committer | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-02-24 18:42:24 +0000 |
commit | f508189682b6fba62e08feeb1596f682bad5fff9 (patch) | |
tree | 28aeb0e6c19386c385c1ce5edf8a92c1bca15281 /src/progs/pickit2/gui | |
download | piklab-f508189682b6fba62e08feeb1596f682bad5fff9.tar.gz piklab-f508189682b6fba62e08feeb1596f682bad5fff9.zip |
Added KDE3 version of PikLab
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/piklab@1095639 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'src/progs/pickit2/gui')
-rw-r--r-- | src/progs/pickit2/gui/Makefile.am | 6 | ||||
-rw-r--r-- | src/progs/pickit2/gui/pickit2_group_ui.cpp | 52 | ||||
-rw-r--r-- | src/progs/pickit2/gui/pickit2_group_ui.h | 42 |
3 files changed, 100 insertions, 0 deletions
diff --git a/src/progs/pickit2/gui/Makefile.am b/src/progs/pickit2/gui/Makefile.am new file mode 100644 index 0000000..d2fa763 --- /dev/null +++ b/src/progs/pickit2/gui/Makefile.am @@ -0,0 +1,6 @@ +INCLUDES = -I$(top_srcdir)/src $(all_includes) +METASOURCES = AUTO + +noinst_LTLIBRARIES = libpickit2ui.la +libpickit2ui_la_SOURCES = pickit2_group_ui.cpp +libpickit2ui_la_LDFLAGS = $(all_libraries)
\ No newline at end of file diff --git a/src/progs/pickit2/gui/pickit2_group_ui.cpp b/src/progs/pickit2/gui/pickit2_group_ui.cpp new file mode 100644 index 0000000..f36395a --- /dev/null +++ b/src/progs/pickit2/gui/pickit2_group_ui.cpp @@ -0,0 +1,52 @@ +/*************************************************************************** + * Copyright (C) 2006 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 "pickit2_group_ui.h" + +#include <kfiledialog.h> + +#include "common/global/purl.h" +#include "common/gui/misc_gui.h" +#include "progs/gui/prog_config_widget.h" +#include "progs/base/prog_group.h" +#include "progs/pickit2/base/pickit2_prog.h" +#include "progs/pickit2/base/pickit2.h" + +//---------------------------------------------------------------------------- +Pickit::AdvancedDialog::AdvancedDialog(Base &base, QWidget *parent, const char *name) + : ::Programmer::PicAdvancedDialog(base, parent, name) +{} + +void Pickit::AdvancedDialog::regenerateCalibration() +{ + if ( !base().deviceHasOsccalRegeneration() ) { + MessageBox::sorry(i18n("Osccal regeneration not available for the selected device."), Log::Show); + return; + } + KFileDialog dialog(":open_autohex", PURL::filter(PURL::Hex), this, "autohex_dialog", true); + dialog.setOperationMode(KFileDialog::Opening); + dialog.setCaption(i18n("Open Calibration Firmware")); + dialog.setMode(KFile::File); + //dialog.ops->clearHistory(); + dialog.setSelection("autocal.hex"); + dialog.exec(); + PURL::Url url(dialog.selectedURL()); + if ( url.isEmpty() ) return; + base().regenerateOsccal(url); +} + +//---------------------------------------------------------------------------- +::Programmer::ConfigWidget *Pickit2::GroupUI::createConfigWidget(QWidget *parent) const +{ + return new ::Programmer::ConfigWidget(static_cast<const ::Programmer::Group &>(group()), parent); +} + +::Programmer::AdvancedDialog *Pickit2::GroupUI::createAdvancedDialog(::Programmer::Base &base, QWidget *parent) const +{ + return new Pickit::AdvancedDialog(static_cast<Base &>(base), parent, "pickit2_advanced_dialog"); +} diff --git a/src/progs/pickit2/gui/pickit2_group_ui.h b/src/progs/pickit2/gui/pickit2_group_ui.h new file mode 100644 index 0000000..f79aa1f --- /dev/null +++ b/src/progs/pickit2/gui/pickit2_group_ui.h @@ -0,0 +1,42 @@ +/*************************************************************************** + * Copyright (C) 2006 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 PICKIT2_GROUP_UI_H +#define PICKIT2_GROUP_UI_H + +#include "devices/pic/gui/pic_prog_group_ui.h" +#include "progs/pickit2/base/pickit_prog.h" + +//---------------------------------------------------------------------------- +namespace Pickit +{ +class AdvancedDialog : public ::Programmer::PicAdvancedDialog +{ +Q_OBJECT +public: + AdvancedDialog(Base &base, QWidget *parent, const char *name); + Base &base() { return static_cast<Base &>(_base); } + +public slots: + virtual void regenerateCalibration(); +}; +} // namespace + +//---------------------------------------------------------------------------- +namespace Pickit2 +{ +class GroupUI : public ::Programmer::GroupUI +{ +public: + virtual ::Programmer::ConfigWidget *createConfigWidget(QWidget *parent) const; + virtual bool hasAdvancedDialog() const { return true; } + virtual ::Programmer::AdvancedDialog *createAdvancedDialog(::Programmer::Base &base, QWidget *parent) const; +}; +} // namespace + +#endif |