[ TAG 496 ][30.07.2022] -Erfolgreich -IAP-20220403-20220403-1150 -PAS-System
Bevor ich mit dem [ PAS ]-System beginne, muss ich folgende Eigenschaften auf ihre Werte überprüfen. Diese Überprüfung mit entsprechenden [CHK]-Methoden werden im WND-Modul im [DeFSTL_LIB] stattfinden.
"WND": {
f"{si_ttl}": None,
f"{si_x}": None,
f"{si_y}": None,
f"{si_width}": None,
f"{si_height}": None,
f"{si_chldw}": None,
f"{si_chldh}": None,
f"{si_chldmw}": None,
f"{si_chldmh}": None,
f"{si_ml}": None,
f"{si_mr}": None,
f"{si_mt}": None,
f"{si_mb}": None,
f"{si_bg}": None,
f"{si_tc}": None,
f"{si_tpm}": None,
f"{si_ovrd}": None,
f"{si_alg}": None
},
Folgende Eigenschaften werden vom [ DAS ]-System gedeckt.
WND00: {
[ DAS ] 'x': 0,
[ DAS ] 'y': 0,
[ DAS ] 'width': 1920,
[ DAS ] 'height': 1080,
[ DAS ] 'margin-left': 0,
[ DAS ] 'margin-right': 0,
[ DAS ] 'margin-top': 0,
[ DAS ] 'margin-bottom': 0,
[ PAS ] 'CHLD-WIDTH': None,
[ PAS ] 'CHLD-HEIGHT': None,
[ PAS ] 'CHLD-MARGINS-WIDTH': None,
[ PAS ] 'CHLD-MARGINS-HEIGHT': None,
[ WND CHK_000 ] 'title': None,
[ WND CHK_000 ] 'bg': None,
[ WND CHK_000 ] '-transparentcolor': None,
[ WND CHK_000 ] '-topmost': None,
[ WND CHK_000 ] 'overrideredirect': None,
[ WND CHK_000 ] 'alignment': None
}
---------------------------------------------------------------------
Das [ DAS ]-System lässt sich sehr leicht in einzelne Komponente Beispiel [WND] integrieren.
Beim [ PAS ]-System funktioniert es nicht. Das [ PAS ]-System benötigt einen eigenen [ ITERATOR ].
Technisch lässt sich das [ PAS ]-System in einzelne Komponente integrieren. Jedoch würde es dazu führen, dass man unzählige Schleifen völlig unnötig doppelt und dreifach ausführen muss um zum Beispiel die Breite der Kindelemente zu ermitteln. Das ist kein unbedeutender Faktor.
Das [ PAS ]-System benötigt einen eigenen [ ITERATOR ], der die [USERSTL] nach [ LVL ] iteriert. Dabei geht man vom obersten [LVL-n] bis zum untersten [LVL-0].
Im [LVL-0] befinden sich die [WND]-Elemente.
Ich habe mir die Vorgängerprototypen [ GUIMOD > GUI_20220528 ] angeschaut und das [ PAS ]-System ist das [ADPSYS]. Ich bin damals auf das selbe Iterationsproblem gestoßen. Heute bin ich zum selben Entschluss gekommen, wie vor drei Wochen. Es war damals eine schlechte Idee das Positionierungs-SYSTEM in einzelne Elemente zu integrieren. An dieser Sichtweise hat sich heute nichts geändert.
Bevor ich an das PAS-System mich ran wagen kann, muss ich die [DeFSTL_LIB] fertig stellen. Dazu habe ich zwei [ WORK_ORDER ] formuliert.
- WO_20220730_1300
- WO_20220730_1302
Nach dem diese WOs abgearbeitet wurden, kann man mit dem PAS-System anfangen. Als Referenz kann man den Prototypen [GUI_20220528] nehmen.
from GUIMOD.NoNSTL import *
from GUIMOD.USERSTL import *
from GUIMOD.DeFSTL import *
from GUIMOD.INISTL import *
from GUIMOD.ADPSYS import *
from tkinter import *
print("GUI_20220528")
root = Tk()
NoNSTL_ILLG_ELM(USERSTL)
NoNSTL_ILLG_EVNT(USERSTL)
NoNSTL_ILLG_ELMVAL(USERSTL)
NoNSTL_ILLG_ELM(DeFSTL)
NoNSTL_ILLG_EVNT(DeFSTL)
NoNSTL_ILLG_ELMVAL(DeFSTL)
DeFSTL_ITERATOR(USERSTL)
ADPSYS_ITERATOR(userstl=USERSTL, defstl=DeFSTL)
INISTL_ITERATOR(root=root, userstl=USERSTL)
root.mainloop()
Kommentare
Kommentar veröffentlichen