remove parent api, change Type handling and some setup reordering

unsure if the extensions is even going to get used
This commit is contained in:
Morgan 'ARR\!' Allen 2025-04-07 20:02:05 -07:00
parent e5ec81b2dd
commit b02645a195

View file

@ -1,23 +1,18 @@
class BaseObject: class BaseObject:
def __init__(self, parent, feature): TYPE = None
print(self)
self.parent = parent def __init__(self, feature):
print(self.__class__)
self.feature = feature self.feature = feature
feature.Proxy = self feature.Proxy = self
self.Type = '' self.setup_properties(feature)
self.setup_extensions(feature)
if hasattr(parent.__class__, 'TYPE'): feature.Type = self.TYPE
self.Type = parent.__class__.TYPE
self.setup_properties()
self.setup_extensions()
def execute(self, feature): def execute(self, feature):
print('execute', feature.Label, self.Type)
def setup_properties(self):
pass pass
def setup_extensions(self): def setup_extensions(self):
@ -31,5 +26,13 @@ class BaseObject:
def onChanged(self, feature, prop): def onChanged(self, feature, prop):
pass pass
def setup_extensions(self, feature):
if hasattr(self, 'EXTENSIONS'):
for ext in self.EXTENSIONS:
self.feature.addExtension(ext)
def setup_properties(self, feature):
feature.addProperty('App::PropertyString', 'Type', 'KiConnect', 'Internatl KiConnect Type', read_only=True, hidden=True)
def __getstate__(self): def __getstate__(self):
return None return None