Default methoden für alle callbackroutinen rein. Umbau des Aufrufs der gui, um auch assemblies laden zu könenn
This commit is contained in:
@@ -443,6 +443,7 @@ Der Wert aus der Spalte "HzOhneSaegeliste" in "from_siv.csv" muss in gemappter /
|
|||||||
**Nachfolgende Logik definiert:**
|
**Nachfolgende Logik definiert:**
|
||||||
- state der ComboBox je nach Situation (readonly / disabled)
|
- state der ComboBox je nach Situation (readonly / disabled)
|
||||||
- Dropdownwerte (Quelle, wo die Dropdownwerte zu finden sind, bzw. direkt die Werte)
|
- Dropdownwerte (Quelle, wo die Dropdownwerte zu finden sind, bzw. direkt die Werte)
|
||||||
|
-
|
||||||
|
|
||||||
IF PDM-Kategorie == "Baugruppe":
|
IF PDM-Kategorie == "Baugruppe":
|
||||||
Dropdownwerte = None (keine Werte)
|
Dropdownwerte = None (keine Werte)
|
||||||
|
|||||||
+7
-22
@@ -4,11 +4,10 @@ import tkinter as tk
|
|||||||
from gui import App
|
from gui import App
|
||||||
from caditem import CadItem, GuiLogic
|
from caditem import CadItem, GuiLogic
|
||||||
from controller import Controller
|
from controller import Controller
|
||||||
from manage_configs import Configs, SivasAssemblyData
|
from manage_configs import Configs
|
||||||
import argparse
|
import argparse
|
||||||
import os
|
import os
|
||||||
import json
|
import json
|
||||||
from get_teilestamm import FetchSivasTeilestamm
|
|
||||||
|
|
||||||
|
|
||||||
demo_data = """
|
demo_data = """
|
||||||
@@ -81,13 +80,14 @@ class Environment:
|
|||||||
self.cfg_dir = os.environ.get('CREMIG_CFG')
|
self.cfg_dir = os.environ.get('CREMIG_CFG')
|
||||||
self.ruledesigner_csv_filename = os.environ.get('RD_DATABASE_NAME')
|
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 = tk.Tk()
|
||||||
#root = ttk.Window()
|
#root = ttk.Window()
|
||||||
app = App(root)
|
app = App(root)
|
||||||
|
|
||||||
controller = Controller(model, app)
|
controller = Controller(model, app)
|
||||||
controller.set_env(configs.get_env())
|
controller.set_env(configs.get_env())
|
||||||
|
controller.get_csv_files_of_asm(sivasid, uselocal)
|
||||||
|
|
||||||
logic = GuiLogic(model, configs)
|
logic = GuiLogic(model, configs)
|
||||||
model.add_logic(logic)
|
model.add_logic(logic)
|
||||||
@@ -125,29 +125,14 @@ if __name__ == '__main__':
|
|||||||
|
|
||||||
elif args.sivasid:
|
elif args.sivasid:
|
||||||
sivasid = args.sivasid.strip()
|
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):
|
if os.path.exists(assembl_path):
|
||||||
# wenn schon einmal das assembly als json abgespeichert wurde, dann dieses laden
|
# wenn schon einmal das assembly als json abgespeichert wurde, dann dieses laden
|
||||||
model.load(demo_data)
|
model.load(assembl_path)
|
||||||
else:
|
else:
|
||||||
# ansonsten sich die Einzelteile als .csv und den Aufbau des Assemblies als .json holen
|
# die Gui aufbauen
|
||||||
sivas_teilestamm = FetchSivasTeilestamm(sivasid, data_dir)
|
build_gui(model, configs, sivasid, args.uselocal)
|
||||||
|
|
||||||
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)
|
|
||||||
else:
|
else:
|
||||||
parser.print_help()
|
parser.print_help()
|
||||||
|
|
||||||
|
|||||||
+189
-19
@@ -55,6 +55,7 @@ class CadItem(DataModel):
|
|||||||
"Freigabevermerk", "ZusaetzlicheInformationen"]
|
"Freigabevermerk", "ZusaetzlicheInformationen"]
|
||||||
|
|
||||||
gui_data_keys = [
|
gui_data_keys = [
|
||||||
|
# Felder der Oberfläche um etwas einzugeben
|
||||||
"asm_id",
|
"asm_id",
|
||||||
"teilenummer",
|
"teilenummer",
|
||||||
"datenbank",
|
"datenbank",
|
||||||
@@ -96,6 +97,9 @@ class CadItem(DataModel):
|
|||||||
"freigabevermerk_sivas", "freigabevermerk_neu",
|
"freigabevermerk_sivas", "freigabevermerk_neu",
|
||||||
"zusatzinfos_auto_text",
|
"zusatzinfos_auto_text",
|
||||||
"zusatzinfos_bendef_text",
|
"zusatzinfos_bendef_text",
|
||||||
|
# das wird nur zur Datenübergabe aus der csv verwendet,
|
||||||
|
# ist also eigentlich kein Teil der gui
|
||||||
|
"truemmer",
|
||||||
# Felder der Comboboxen. benannt wie deren callbacks
|
# Felder der Comboboxen. benannt wie deren callbacks
|
||||||
"cb_pdm_kategorie_neu",
|
"cb_pdm_kategorie_neu",
|
||||||
"cb_halbzeug_neu",
|
"cb_halbzeug_neu",
|
||||||
@@ -146,7 +150,7 @@ class CadItem(DataModel):
|
|||||||
"HalbzeugExtern":"halbzeug_sivas",
|
"HalbzeugExtern":"halbzeug_sivas",
|
||||||
"Werkstoff":"werkstofftyp_sivas",
|
"Werkstoff":"werkstofftyp_sivas",
|
||||||
"Oberfläche":"cb_oberflaeche_neu",
|
"Oberfläche":"cb_oberflaeche_neu",
|
||||||
# "Truemmer":"truemmer",
|
"Truemmer":"truemmer",
|
||||||
"HzOhneSaegeliste":"halbzeugOhneSaege_sivas",
|
"HzOhneSaegeliste":"halbzeugOhneSaege_sivas",
|
||||||
"Ruestcode":"ruestcode_sivas",
|
"Ruestcode":"ruestcode_sivas",
|
||||||
"Fertigungsart":"fertigungsart_sivas",
|
"Fertigungsart":"fertigungsart_sivas",
|
||||||
@@ -180,6 +184,8 @@ class CadItem(DataModel):
|
|||||||
def get_asm_id(self):
|
def get_asm_id(self):
|
||||||
return self.get_gui_data("asm_id")
|
return self.get_gui_data("asm_id")
|
||||||
|
|
||||||
|
def set_current_item_id(self, tid):
|
||||||
|
self.set_gui_data('teilenummer', tid)
|
||||||
def get_current_item_id(self):
|
def get_current_item_id(self):
|
||||||
return self.get_gui_data('teilenummer')
|
return self.get_gui_data('teilenummer')
|
||||||
|
|
||||||
@@ -465,36 +471,36 @@ class GuiLogic():
|
|||||||
elif key == 'cb_halbzeugOhneSaege_neu':
|
elif key == 'cb_halbzeugOhneSaege_neu':
|
||||||
ret = self.cb_halbzeugOhneSaege_neu(value)
|
ret = self.cb_halbzeugOhneSaege_neu(value)
|
||||||
elif key == 'cb_ruestcode_neu':
|
elif key == 'cb_ruestcode_neu':
|
||||||
pass
|
ret = self.cb_ruestcode_neu(value)
|
||||||
|
###
|
||||||
elif key == 'cb_fertigungsart_neu':
|
elif key == 'cb_fertigungsart_neu':
|
||||||
pass
|
ret = self.cb_fertigungsart_neu(value)
|
||||||
elif key == 'cb_allgemeintoleranz_neu':
|
elif key == 'cb_allgemeintoleranz_neu':
|
||||||
pass
|
ret = self.cb_allgemeintoleranz_neu(value)
|
||||||
elif key == 'cb_fosGruppe_neu':
|
elif key == 'cb_fosGruppe_neu':
|
||||||
pass
|
ret = self.cb_fosGruppe_neu(value)
|
||||||
elif key == 'cb_kalkulationsart_neu':
|
elif key == 'cb_kalkulationsart_neu':
|
||||||
pass
|
ret = self.cb_kalkulationsart_neu(value)
|
||||||
elif key == 'cb_beschaffungsart_neu':
|
elif key == 'cb_beschaffungsart_neu':
|
||||||
pass
|
ret = self.cb_beschaffungsart_neu(value)
|
||||||
elif key == 'cb_mengeneinheit_neu':
|
elif key == 'cb_mengeneinheit_neu':
|
||||||
pass
|
ret = self.cb_mengeneinheit_neu(value)
|
||||||
elif key == 'cb_halbzeug_neu':
|
elif key == 'cb_halbzeug_neu':
|
||||||
pass
|
ret = self.cb_halbzeug_neu(value)
|
||||||
elif key == 'cb_dispogruppe_neu':
|
elif key == 'cb_dispogruppe_neu':
|
||||||
pass
|
ret = self.cb_dispogruppe_neu(value)
|
||||||
elif key == 'cb_dispolaufgruppe_neu':
|
elif key == 'cb_dispolaufgruppe_neu':
|
||||||
pass
|
ret = self.cb_dispolaufgruppe_neu(value)
|
||||||
elif key == 'cb_hersteller_neu':
|
elif key == 'cb_hersteller_neu':
|
||||||
pass
|
ret = self.cb_hersteller_neu(value)
|
||||||
elif key == 'cb_werkstoffdiskrepanz':
|
elif key == 'cb_werkstoffdiskrepanz':
|
||||||
pass
|
ret = self.cb_werkstoffdiskrepanz(value)
|
||||||
elif key == 'cb_werkstofftyp_neu':
|
elif key == 'cb_werkstofftyp_neu':
|
||||||
pass
|
ret = self.cb_werkstofftyp_neu(value)
|
||||||
# ret = self.cb_werkstofftyp_neu(value)
|
|
||||||
elif key == 'cb_material_neu':
|
elif key == 'cb_material_neu':
|
||||||
pass
|
ret = self.cb_material_neu(value)
|
||||||
elif key == 'cb_oberflaeche_neu':
|
elif key == 'cb_oberflaeche_neu':
|
||||||
pass
|
ret = self.cb_oberflaeche_neu(value)
|
||||||
elif key == 'cb_farbe_neu':
|
elif key == 'cb_farbe_neu':
|
||||||
ret = self.cb_farbe_neu(value)
|
ret = self.cb_farbe_neu(value)
|
||||||
else:
|
else:
|
||||||
@@ -584,9 +590,9 @@ class GuiLogic():
|
|||||||
# Entry-Abhängigkeit der Bezeichnung 1. keine eigene Callback. Abhängig von der Kategorie
|
# Entry-Abhängigkeit der Bezeichnung 1. keine eigene Callback. Abhängig von der Kategorie
|
||||||
pdm_kat = ret["pdm_kategorie_neu"]
|
pdm_kat = ret["pdm_kategorie_neu"]
|
||||||
if pdm_kat == "Baugruppe" or pdm_kat == "Schweissbaugruppe":
|
if pdm_kat == "Baugruppe" or pdm_kat == "Schweissbaugruppe":
|
||||||
maxlen = 5 # Längenbeschränkung = 45 Zeichen
|
maxlen = 45 # Längenbeschränkung = 45 Zeichen
|
||||||
else:
|
else:
|
||||||
maxlen = 10 # Längenbeschränkung = 50 Zeichen
|
maxlen = 50 # Längenbeschränkung = 50 Zeichen
|
||||||
text = self._model.get_gui_data("bezeichnung1_sivas")
|
text = self._model.get_gui_data("bezeichnung1_sivas")
|
||||||
if len(text) > maxlen:
|
if len(text) > maxlen:
|
||||||
ret["bezeichnung1_neu"] = text[0:maxlen]
|
ret["bezeichnung1_neu"] = text[0:maxlen]
|
||||||
@@ -765,6 +771,147 @@ class GuiLogic():
|
|||||||
pass
|
pass
|
||||||
return ret
|
return ret
|
||||||
|
|
||||||
|
def cb_ruestcode_neu(self, selected):
|
||||||
|
ret = dict()
|
||||||
|
pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu")
|
||||||
|
|
||||||
|
ret['cb_ruestcode_neu'] = ''
|
||||||
|
ret['ruestcode_neu'] = ''
|
||||||
|
if pdm_kategorie_neu == "Baugruppe":
|
||||||
|
lrstcodes = self._config.Allgemein.get_options("RuestcodeBaugruppe")
|
||||||
|
else:
|
||||||
|
lrstcodes = self._config.Allgemein.get_options("RuestcodeStandard")
|
||||||
|
|
||||||
|
if selected is None:
|
||||||
|
ret['ruestcode_neu'] = lrstcodes[0]
|
||||||
|
ret['cb_ruestcode_neu'] = lrstcodes
|
||||||
|
else:
|
||||||
|
ret['ruestcode_neu'] = selected
|
||||||
|
|
||||||
|
# self._controller.message_info('Rüstcodeinformationen', 'rüstcode_infos')
|
||||||
|
return ret
|
||||||
|
|
||||||
|
def cb_fertigungsart_neu(self, value):
|
||||||
|
ret = dict()
|
||||||
|
pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu")
|
||||||
|
|
||||||
|
ret['cb_halbzeugOhneSaege_neu'] = ''
|
||||||
|
ret['fertigungsart_neu'] = ''
|
||||||
|
if pdm_kategorie_neu == "Baugruppe":
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
return ret
|
||||||
|
def cb_allgemeintoleranz_neu(self, value):
|
||||||
|
ret = dict()
|
||||||
|
pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu")
|
||||||
|
|
||||||
|
ret['cb_allgemeintoleranz_neu'] = ''
|
||||||
|
ret['allgemeintoleranz_neu'] = ''
|
||||||
|
if pdm_kategorie_neu == "Baugruppe":
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
return ret
|
||||||
|
def cb_fosGruppe_neu(self, value):
|
||||||
|
ret = dict()
|
||||||
|
pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu")
|
||||||
|
|
||||||
|
ret['cb_fosGruppe_neu'] = ''
|
||||||
|
ret['fosGruppe_neu'] = ''
|
||||||
|
if pdm_kategorie_neu == "Baugruppe":
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
return ret
|
||||||
|
def cb_kalkulationsart_neu(self, value):
|
||||||
|
ret = dict()
|
||||||
|
pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu")
|
||||||
|
|
||||||
|
ret['cb_kalkulationsart_neu'] = ''
|
||||||
|
ret['kalkulationsart_neu'] = ''
|
||||||
|
if pdm_kategorie_neu == "Baugruppe":
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
return ret
|
||||||
|
def cb_beschaffungsart_neu(self, value):
|
||||||
|
ret = dict()
|
||||||
|
pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu")
|
||||||
|
|
||||||
|
ret['cb_beschaffungsart_neu'] = ''
|
||||||
|
ret['beschaffungsart_neu'] = ''
|
||||||
|
if pdm_kategorie_neu == "Baugruppe":
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
return ret
|
||||||
|
def cb_mengeneinheit_neu(self, value):
|
||||||
|
ret = dict()
|
||||||
|
pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu")
|
||||||
|
|
||||||
|
ret['cb_mengeneinheit_neu'] = ''
|
||||||
|
ret['mengeneinheit_neu'] = ''
|
||||||
|
if pdm_kategorie_neu == "Baugruppe":
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
return ret
|
||||||
|
def cb_halbzeug_neu(self, value):
|
||||||
|
ret = dict()
|
||||||
|
pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu")
|
||||||
|
|
||||||
|
ret['cb_halbzeug_neu'] = ''
|
||||||
|
ret['halbzeug_neu'] = ''
|
||||||
|
if pdm_kategorie_neu == "Baugruppe":
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
return ret
|
||||||
|
def cb_dispogruppe_neu(self, value):
|
||||||
|
ret = dict()
|
||||||
|
pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu")
|
||||||
|
|
||||||
|
ret['cb_dispogruppe_neu'] = ''
|
||||||
|
ret['dispogruppe_neu'] = ''
|
||||||
|
if pdm_kategorie_neu == "Baugruppe":
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
return ret
|
||||||
|
def cb_dispolaufgruppe_neu(self, value):
|
||||||
|
ret = dict()
|
||||||
|
pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu")
|
||||||
|
|
||||||
|
ret['cb_dispolaufgruppe_neu'] = ''
|
||||||
|
ret['dispolaufgruppe_neu'] = ''
|
||||||
|
if pdm_kategorie_neu == "Baugruppe":
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
return ret
|
||||||
|
def cb_hersteller_neu(self, value):
|
||||||
|
ret = dict()
|
||||||
|
pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu")
|
||||||
|
|
||||||
|
ret['cb_hersteller_neu'] = ''
|
||||||
|
ret['hersteller_neu'] = ''
|
||||||
|
if pdm_kategorie_neu == "Baugruppe":
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
return ret
|
||||||
|
def cb_werkstoffdiskrepanz(self, value):
|
||||||
|
ret = dict()
|
||||||
|
pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu")
|
||||||
|
|
||||||
|
ret['cb_werkstoffdiskrepanz'] = ''
|
||||||
|
if pdm_kategorie_neu == "Baugruppe":
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
return ret
|
||||||
|
|
||||||
# def cb_werkstofftyp_neu(self, selected_werkstoff):
|
# def cb_werkstofftyp_neu(self, selected_werkstoff):
|
||||||
# """bekommt Aluminium, Stahl etc. und setzt dann die anderen Felder der Oberfläche"""
|
# """bekommt Aluminium, Stahl etc. und setzt dann die anderen Felder der Oberfläche"""
|
||||||
|
|
||||||
@@ -802,6 +949,29 @@ class GuiLogic():
|
|||||||
# }
|
# }
|
||||||
# return ret
|
# return ret
|
||||||
|
|
||||||
|
def cb_material_neu(self, value):
|
||||||
|
ret = dict()
|
||||||
|
pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu")
|
||||||
|
|
||||||
|
ret['cb_material_neu'] = ''
|
||||||
|
ret['material_neu'] = ''
|
||||||
|
if pdm_kategorie_neu == "Baugruppe":
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
return ret
|
||||||
|
def cb_oberflaeche_neu(self, value):
|
||||||
|
ret = dict()
|
||||||
|
pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu")
|
||||||
|
|
||||||
|
ret['cb_oberflaeche_neu'] = ''
|
||||||
|
ret['oberflaeche_neu'] = ''
|
||||||
|
if pdm_kategorie_neu == "Baugruppe":
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
return ret
|
||||||
|
|
||||||
# def oberfläche(self, selected):
|
# def oberfläche(self, selected):
|
||||||
|
|
||||||
# ret = dict()
|
# ret = dict()
|
||||||
|
|||||||
+37
-4
@@ -1,4 +1,8 @@
|
|||||||
import os
|
import os
|
||||||
|
|
||||||
|
from manage_configs import SivasAssemblyData
|
||||||
|
from get_teilestamm import FetchSivasTeilestamm
|
||||||
|
|
||||||
"""
|
"""
|
||||||
Contains the logic for the MVC of CreoMigrate Gui
|
Contains the logic for the MVC of CreoMigrate Gui
|
||||||
"""
|
"""
|
||||||
@@ -76,6 +80,24 @@ class Controller(Observer):
|
|||||||
raise Exception("this path is not defined "+env_path)
|
raise Exception("this path is not defined "+env_path)
|
||||||
return ret
|
return ret
|
||||||
|
|
||||||
|
|
||||||
|
def get_csv_files_of_asm(self, asmid, uselocal):
|
||||||
|
""" sich die Einzelteile als .csv und den Aufbau des Assemblies als .json holen """
|
||||||
|
sivas_teilestamm = FetchSivasTeilestamm(asmid, self.get_env("data"))
|
||||||
|
|
||||||
|
# falls uselocal True, dann keine Serverabfrage, sondern mit den lokalen Daten arbeiten
|
||||||
|
sivas_teilestamm.fetch_from_db(uselocal)
|
||||||
|
if not uselocal:
|
||||||
|
sivas_teilestamm.get_unmigrated_teilstamm_csvs()
|
||||||
|
redids = sivas_teilestamm.get_red_ids()
|
||||||
|
|
||||||
|
sad = SivasAssemblyData(self.get_env("data"), asmid + '.json')
|
||||||
|
parent_children = sad.get_parent_children()
|
||||||
|
|
||||||
|
self._model.set_red_ids(redids)
|
||||||
|
self._model.set_parent_children(parent_children)
|
||||||
|
self._model.set_asm_id(asmid)
|
||||||
|
|
||||||
def set_model(self, model):
|
def set_model(self, model):
|
||||||
self._model = model
|
self._model = model
|
||||||
self.attach(model)
|
self.attach(model)
|
||||||
@@ -89,9 +111,9 @@ class Controller(Observer):
|
|||||||
self._view.data_from_model()
|
self._view.data_from_model()
|
||||||
|
|
||||||
def get_current_asm_id(self):
|
def get_current_asm_id(self):
|
||||||
self._model.get_current_asm_id()
|
self._model.get_asm_id()
|
||||||
def set_current_asm_id(self, asm_id):
|
def set_current_asm_id(self, asm_id):
|
||||||
self._model.set_current_asm_id(asm_id)
|
self._model.set_asm_id(asm_id)
|
||||||
|
|
||||||
|
|
||||||
def set_current_item_id(self, cid):
|
def set_current_item_id(self, cid):
|
||||||
@@ -103,10 +125,14 @@ class Controller(Observer):
|
|||||||
red_ids = self._model.get_red_ids()
|
red_ids = self._model.get_red_ids()
|
||||||
if not cid in red_ids:
|
if not cid in red_ids:
|
||||||
return
|
return
|
||||||
|
|
||||||
# TODO save current given data. In case, ask whether you should save or drop
|
# TODO save current given data. In case, ask whether you should save or drop
|
||||||
self.set_gui_data('teilenummer', cid)
|
self._model.set_current_item_id(cid)
|
||||||
|
self._load_cid_data2model(cid)
|
||||||
|
|
||||||
|
|
||||||
|
def _load_cid_data2model(self, cid):
|
||||||
|
"""lädt alle nötigen Daten für diese ID """
|
||||||
# falls eine .json Datei davon im Work Ordner existiert, dann diese zuerst versuchen ins Modell zu laden
|
# falls eine .json Datei davon im Work Ordner existiert, dann diese zuerst versuchen ins Modell zu laden
|
||||||
isok = self._model.from_json_file(self.get_env("out"), cid)
|
isok = self._model.from_json_file(self.get_env("out"), cid)
|
||||||
if isok == False:
|
if isok == False:
|
||||||
@@ -162,6 +188,12 @@ class Controller(Observer):
|
|||||||
#self._view.set_widget_status(widgetname, status)
|
#self._view.set_widget_status(widgetname, status)
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
def message_info(self, title, key, questions='ok'):
|
||||||
|
return tkinter.messageBox.showinfo(title, message[key])
|
||||||
|
|
||||||
|
def message_error(self, title, key, type='error'):
|
||||||
|
pass
|
||||||
|
|
||||||
def callback(self, key, value):
|
def callback(self, key, value):
|
||||||
if not self._model:
|
if not self._model:
|
||||||
raise Exception("no model yet added")
|
raise Exception("no model yet added")
|
||||||
@@ -174,6 +206,7 @@ class Controller(Observer):
|
|||||||
elif key == 'cb_zurücksetzen':
|
elif key == 'cb_zurücksetzen':
|
||||||
pass
|
pass
|
||||||
elif key == 'cb_suche_asm':
|
elif key == 'cb_suche_asm':
|
||||||
|
#self._model.save_to_file()
|
||||||
pass
|
pass
|
||||||
elif key == 'cb_3dsuchen':
|
elif key == 'cb_3dsuchen':
|
||||||
self.suche_3d()
|
self.suche_3d()
|
||||||
|
|||||||
@@ -459,7 +459,8 @@ class Configs:
|
|||||||
|
|
||||||
def set_data_dir(self, data_dir):
|
def set_data_dir(self, data_dir):
|
||||||
self._data_dir = data_dir
|
self._data_dir = data_dir
|
||||||
self.TeileNummern = RuleDesignerDatabaseConfig(data_dir)
|
def get_data_dir(self, data_dir):
|
||||||
|
return self._data_dir
|
||||||
|
|
||||||
def set_env(self, env):
|
def set_env(self, env):
|
||||||
self._env = env
|
self._env = env
|
||||||
|
|||||||
Reference in New Issue
Block a user