move TYPE/ICON declarations to Object/ViewObject classes
This commit is contained in:
parent
a0941452ae
commit
e5ec81b2dd
4 changed files with 30 additions and 13 deletions
|
@ -7,6 +7,8 @@ from . import settings
|
|||
from .bases import BaseObject, BaseViewProvider
|
||||
|
||||
class APIObject(BaseObject):
|
||||
TYPE = 'KiConnect::API'
|
||||
|
||||
def __init__(self, parent, feature):
|
||||
super(APIObject, self).__init__(parent, feature)
|
||||
|
||||
|
@ -19,9 +21,6 @@ class APIObject(BaseObject):
|
|||
class APIViewProvider(BaseViewProvider):
|
||||
pass
|
||||
|
||||
class API():
|
||||
ICON = 'icon_footprint_browser.svg'
|
||||
TYPE = 'KiConnect::API'
|
||||
|
||||
def __init__(self):
|
||||
self.feature = App.ActiveDocument.addObject('App::FeaturePython', 'API')
|
||||
|
@ -39,6 +38,25 @@ class API():
|
|||
def ping_connection(self):
|
||||
try:
|
||||
self.kicad.ping()
|
||||
self._connected = True
|
||||
except:
|
||||
self._connected = False
|
||||
feature.Connected = True
|
||||
except Exception as e:
|
||||
print(e)
|
||||
feature.Connected = False
|
||||
pass
|
||||
|
||||
|
||||
class APIViewProvider(BaseViewProvider):
|
||||
ICON = 'icon_footprint_browser.svg'
|
||||
TYPE = 'KiConnect::API'
|
||||
|
||||
def __init__(self, parent, viewprovider):
|
||||
super(APIViewProvider, self).__init__(parent, viewprovider)
|
||||
|
||||
|
||||
class API():
|
||||
def __init__(self):
|
||||
self.feature = App.ActiveDocument.addObject('App::FeaturePython', 'API')
|
||||
|
||||
self.object = APIObject(self, self.feature)
|
||||
self.viewobject = APIViewProvider(self, self.feature.ViewObject)
|
||||
|
||||
|
|
|
@ -5,6 +5,10 @@ from pivy import coin
|
|||
from .. import settings
|
||||
|
||||
class BaseViewProvider:
|
||||
ICON = None
|
||||
TYPE = None
|
||||
VIEWPROVIDER_EXTENSIONS = []
|
||||
|
||||
def __init__(self, parent, viewprovider):
|
||||
self.parent = parent
|
||||
self.viewprovider = viewprovider
|
||||
|
@ -13,11 +17,6 @@ class BaseViewProvider:
|
|||
|
||||
viewprovider.Proxy = self
|
||||
|
||||
self.Type = ''
|
||||
|
||||
if hasattr(self, 'TYPE'):
|
||||
self.Type = self.TYPE
|
||||
|
||||
self.setup_extensions()
|
||||
|
||||
def setup_extensions(self):
|
||||
|
|
|
@ -16,7 +16,7 @@ materials_manager = Materials.MaterialManager()
|
|||
gold = materials_manager.Materials[gold_mat_uuid]
|
||||
|
||||
class CopperObject(BaseObject):
|
||||
pass
|
||||
TYPE = 'KiConnect::Copper'
|
||||
|
||||
class CopperViewProvider(BaseViewProvider):
|
||||
ICON = 'show_all_copper_layers.svg'
|
||||
|
|
|
@ -13,7 +13,7 @@ from . import settings
|
|||
from .bases import BaseObject, BaseViewProvider
|
||||
|
||||
class PartsObject(BaseObject):
|
||||
pass
|
||||
TYPE = 'KiConnect::Parts'
|
||||
|
||||
class PartsViewProvider(BaseViewProvider):
|
||||
ICON = 'icon_footprint_browser.svg'
|
||||
|
|
Loading…
Add table
Reference in a new issue