changed project workflow to use make* more in the FC Feature style. Board now creates Parts, as will layers, stubbed out copper for now

This commit is contained in:
Morgan 'ARR\!' Allen 2025-04-08 12:19:33 -07:00
parent c5d757c6bd
commit da64ab6b6e

View file

@ -7,10 +7,10 @@ from kipy import KiCad
from . import settings
from .api import API
from . import api
from .copper import Copper
from .board import Board
from .parts import Parts
#from .parts import Parts
class Project:
def __init__(self):
@ -21,23 +21,21 @@ class Project:
self.viewprovider = None
feature = App.ActiveDocument.addObject('App::Part', 'KiConnect')
feature.Type = 'KiConnect::Project'
self.feature = feature
feature.addProperty('App::PropertyTime', 'ProcessTime', 'KiConnect', 'Time to process Project', hidden=True, read_only=True)
self.API = API()
self.feature.addObject(self.API.feature)
self.API = api.makeAPI(self.feature)
if self.API.is_connected:
kicad_board = self.API.kicad.get_board()
if self.API.Proxy.is_connected:
kicad_board = self.API.Proxy.kicad.get_board()
self.board = Board(kicad_board)
self.feature.addObject(self.board.feature)
self.board = Board(kicad_board, self.feature)
self.parts = Parts(kicad_board, self.board)
self.board.feature.addObject(self.parts.feature)
self.copper = Copper(kicad_board, self.board)
self.board.feature.addObject(self.copper.feature)
#self.copper = Copper(kicad_board, self.board)
#self.board.feature.addObject(self.copper.feature)
feature.ProcessTime = time.time() - start_time
App.ActiveDocument.recompute()