Default methoden für alle callbackroutinen rein. Umbau des Aufrufs der gui, um auch assemblies laden zu könenn

This commit is contained in:
2024-02-20 12:51:38 +01:00
parent 74df118118
commit 5e65dc2b36
5 changed files with 236 additions and 46 deletions
+7 -22
View File
@@ -4,11 +4,10 @@ import tkinter as tk
from gui import App
from caditem import CadItem, GuiLogic
from controller import Controller
from manage_configs import Configs, SivasAssemblyData
from manage_configs import Configs
import argparse
import os
import json
from get_teilestamm import FetchSivasTeilestamm
demo_data = """
@@ -81,13 +80,14 @@ class Environment:
self.cfg_dir = os.environ.get('CREMIG_CFG')
self.ruledesigner_csv_filename = os.environ.get('RD_DATABASE_NAME')
def build_gui(model, configs):
def build_gui(model, configs, sivasid, uselocal=True):
root = tk.Tk()
#root = ttk.Window()
app = App(root)
controller = Controller(model, app)
controller.set_env(configs.get_env())
controller.get_csv_files_of_asm(sivasid, uselocal)
logic = GuiLogic(model, configs)
model.add_logic(logic)
@@ -125,29 +125,14 @@ if __name__ == '__main__':
elif args.sivasid:
sivasid = args.sivasid.strip()
filename = sivasid + '.json'
assembl_path = os.path.join(output_dir, filename)
assembl_path = os.path.join(output_dir, sivasid + '.json')
if os.path.exists(assembl_path):
# wenn schon einmal das assembly als json abgespeichert wurde, dann dieses laden
model.load(demo_data)
model.load(assembl_path)
else:
# ansonsten sich die Einzelteile als .csv und den Aufbau des Assemblies als .json holen
sivas_teilestamm = FetchSivasTeilestamm(sivasid, data_dir)
sivas_teilestamm.fetch_from_db(args.uselocal)
if not args.uselocal:
sivas_teilestamm.get_unmigrated_teilstamm_csvs()
redids = sivas_teilestamm.get_red_ids()
sad = SivasAssemblyData(data_dir, filename)
parent_children = sad.get_parent_children()
model.set_red_ids(redids)
model.set_parent_children(parent_children)
model.set_asm_id(sivasid)
# dann die Gui damit aufbauen
build_gui(model, configs)
# die Gui aufbauen
build_gui(model, configs, sivasid, args.uselocal)
else:
parser.print_help()