From 41cedf4b45fad3b18b3d050baf83a1301b276d70 Mon Sep 17 00:00:00 2001 From: Matthias Koefferlein Date: Fri, 15 Jun 2018 00:59:38 +0200 Subject: [PATCH] WIP: fixed the technology refactoring part --- src/db/db/dbTechnology.h | 2 -- src/ext/ext/extNetTracerPlugin.cc | 24 ++++++++++++------------ src/lay/lay/layTechSetupDialog.cc | 4 ++-- src/laybasic/laybasic/layTechnology.h | 2 -- 4 files changed, 14 insertions(+), 18 deletions(-) diff --git a/src/db/db/dbTechnology.h b/src/db/db/dbTechnology.h index ffc212fca..4056fc2c6 100644 --- a/src/db/db/dbTechnology.h +++ b/src/db/db/dbTechnology.h @@ -699,14 +699,12 @@ private: * @brief A base class for a technology component provider */ class DB_PUBLIC TechnologyComponentProvider - : public tl::RegisteredClass { public: /** * @brief The constructor */ TechnologyComponentProvider () - : tl::RegisteredClass (this) { // .. nothing yet .. } diff --git a/src/ext/ext/extNetTracerPlugin.cc b/src/ext/ext/extNetTracerPlugin.cc index 46af582ee..f4cfa1fc4 100644 --- a/src/ext/ext/extNetTracerPlugin.cc +++ b/src/ext/ext/extNetTracerPlugin.cc @@ -79,18 +79,6 @@ extern std::string net_tracer_component_name; // ----------------------------------------------------------------------------------- // NetTracerPlugin definition and implementation -class NetTracerTechnologyEditorProvider - : public lay::TechnologyEditorProvider -{ -public: - virtual lay::TechnologyComponentEditor *create_editor (QWidget *parent) const - { - return new NetTracerTechComponentEditor (parent); - } -}; - -static tl::RegisteredClass editor_decl (new NetTracerTechnologyEditorProvider (), 13000, "NetTracerPlugin"); - class NetTracerPluginDeclaration : public lay::PluginDeclaration { @@ -133,6 +121,18 @@ public: static tl::RegisteredClass config_decl (new NetTracerPluginDeclaration (), 13000, "NetTracerPlugin"); +class NetTracerTechnologyEditorProvider + : public lay::TechnologyEditorProvider +{ +public: + virtual lay::TechnologyComponentEditor *create_editor (QWidget *parent) const + { + return new NetTracerTechComponentEditor (parent); + } +}; + +static tl::RegisteredClass editor_decl (new NetTracerTechnologyEditorProvider (), 13000, net_tracer_component_name.c_str ()); + class NetTracerTechnologyComponentProvider : public db::TechnologyComponentProvider { diff --git a/src/lay/lay/layTechSetupDialog.cc b/src/lay/lay/layTechSetupDialog.cc index 1fe32873f..f44fd4aa3 100644 --- a/src/lay/lay/layTechSetupDialog.cc +++ b/src/lay/lay/layTechSetupDialog.cc @@ -972,7 +972,7 @@ TechSetupDialog::update_tech (db::Technology *t) m_technology_components.insert (std::make_pair (*n, tc)); tce_widget = 0; - for (tl::Registrar::iterator cls = tl::Registrar::begin (); cls != tl::Registrar::begin () && ! tce_widget; ++cls) { + for (tl::Registrar::iterator cls = tl::Registrar::begin (); cls != tl::Registrar::end () && ! tce_widget; ++cls) { if (cls.current_name () == tc->name ()) { tce_widget = cls->create_editor (this); } @@ -1155,7 +1155,7 @@ TechComponentSetupDialog::TechComponentSetupDialog (QWidget *parent, db::Technol mp_component = component->clone (); mp_editor = 0; - for (tl::Registrar::iterator cls = tl::Registrar::begin (); cls != tl::Registrar::begin () && ! mp_editor; ++cls) { + for (tl::Registrar::iterator cls = tl::Registrar::begin (); cls != tl::Registrar::end () && ! mp_editor; ++cls) { if (cls.current_name () == mp_component->name ()) { mp_editor = cls->create_editor (content_frame); } diff --git a/src/laybasic/laybasic/layTechnology.h b/src/laybasic/laybasic/layTechnology.h index 49d043b5f..e9aedb21d 100644 --- a/src/laybasic/laybasic/layTechnology.h +++ b/src/laybasic/laybasic/layTechnology.h @@ -106,14 +106,12 @@ private: * @brief A base class for a technology component provider */ class LAYBASIC_PUBLIC TechnologyEditorProvider - : public tl::RegisteredClass { public: /** * @brief The constructor */ TechnologyEditorProvider () - : tl::RegisteredClass (this) { // .. nothing yet .. }