mirror of https://github.com/KLayout/klayout.git
WIP: fixed the technology refactoring part
This commit is contained in:
parent
10cfac3d42
commit
41cedf4b45
|
|
@ -699,14 +699,12 @@ private:
|
||||||
* @brief A base class for a technology component provider
|
* @brief A base class for a technology component provider
|
||||||
*/
|
*/
|
||||||
class DB_PUBLIC TechnologyComponentProvider
|
class DB_PUBLIC TechnologyComponentProvider
|
||||||
: public tl::RegisteredClass<TechnologyComponentProvider>
|
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
* @brief The constructor
|
* @brief The constructor
|
||||||
*/
|
*/
|
||||||
TechnologyComponentProvider ()
|
TechnologyComponentProvider ()
|
||||||
: tl::RegisteredClass<TechnologyComponentProvider> (this)
|
|
||||||
{
|
{
|
||||||
// .. nothing yet ..
|
// .. nothing yet ..
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -79,18 +79,6 @@ extern std::string net_tracer_component_name;
|
||||||
// -----------------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------------
|
||||||
// NetTracerPlugin definition and implementation
|
// 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<lay::TechnologyEditorProvider> editor_decl (new NetTracerTechnologyEditorProvider (), 13000, "NetTracerPlugin");
|
|
||||||
|
|
||||||
class NetTracerPluginDeclaration
|
class NetTracerPluginDeclaration
|
||||||
: public lay::PluginDeclaration
|
: public lay::PluginDeclaration
|
||||||
{
|
{
|
||||||
|
|
@ -133,6 +121,18 @@ public:
|
||||||
|
|
||||||
static tl::RegisteredClass<lay::PluginDeclaration> config_decl (new NetTracerPluginDeclaration (), 13000, "NetTracerPlugin");
|
static tl::RegisteredClass<lay::PluginDeclaration> 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<lay::TechnologyEditorProvider> editor_decl (new NetTracerTechnologyEditorProvider (), 13000, net_tracer_component_name.c_str ());
|
||||||
|
|
||||||
class NetTracerTechnologyComponentProvider
|
class NetTracerTechnologyComponentProvider
|
||||||
: public db::TechnologyComponentProvider
|
: public db::TechnologyComponentProvider
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -972,7 +972,7 @@ TechSetupDialog::update_tech (db::Technology *t)
|
||||||
m_technology_components.insert (std::make_pair (*n, tc));
|
m_technology_components.insert (std::make_pair (*n, tc));
|
||||||
|
|
||||||
tce_widget = 0;
|
tce_widget = 0;
|
||||||
for (tl::Registrar<lay::TechnologyEditorProvider>::iterator cls = tl::Registrar<lay::TechnologyEditorProvider>::begin (); cls != tl::Registrar<lay::TechnologyEditorProvider>::begin () && ! tce_widget; ++cls) {
|
for (tl::Registrar<lay::TechnologyEditorProvider>::iterator cls = tl::Registrar<lay::TechnologyEditorProvider>::begin (); cls != tl::Registrar<lay::TechnologyEditorProvider>::end () && ! tce_widget; ++cls) {
|
||||||
if (cls.current_name () == tc->name ()) {
|
if (cls.current_name () == tc->name ()) {
|
||||||
tce_widget = cls->create_editor (this);
|
tce_widget = cls->create_editor (this);
|
||||||
}
|
}
|
||||||
|
|
@ -1155,7 +1155,7 @@ TechComponentSetupDialog::TechComponentSetupDialog (QWidget *parent, db::Technol
|
||||||
mp_component = component->clone ();
|
mp_component = component->clone ();
|
||||||
|
|
||||||
mp_editor = 0;
|
mp_editor = 0;
|
||||||
for (tl::Registrar<lay::TechnologyEditorProvider>::iterator cls = tl::Registrar<lay::TechnologyEditorProvider>::begin (); cls != tl::Registrar<lay::TechnologyEditorProvider>::begin () && ! mp_editor; ++cls) {
|
for (tl::Registrar<lay::TechnologyEditorProvider>::iterator cls = tl::Registrar<lay::TechnologyEditorProvider>::begin (); cls != tl::Registrar<lay::TechnologyEditorProvider>::end () && ! mp_editor; ++cls) {
|
||||||
if (cls.current_name () == mp_component->name ()) {
|
if (cls.current_name () == mp_component->name ()) {
|
||||||
mp_editor = cls->create_editor (content_frame);
|
mp_editor = cls->create_editor (content_frame);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -106,14 +106,12 @@ private:
|
||||||
* @brief A base class for a technology component provider
|
* @brief A base class for a technology component provider
|
||||||
*/
|
*/
|
||||||
class LAYBASIC_PUBLIC TechnologyEditorProvider
|
class LAYBASIC_PUBLIC TechnologyEditorProvider
|
||||||
: public tl::RegisteredClass<TechnologyEditorProvider>
|
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
* @brief The constructor
|
* @brief The constructor
|
||||||
*/
|
*/
|
||||||
TechnologyEditorProvider ()
|
TechnologyEditorProvider ()
|
||||||
: tl::RegisteredClass<TechnologyEditorProvider> (this)
|
|
||||||
{
|
{
|
||||||
// .. nothing yet ..
|
// .. nothing yet ..
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue