Internal structure
pyCompEditor je programový modul (softwarový komponent) - grafický editor vytvorený v jazyku Python a knižnici wxPython pre tvorbu a úpravy diagramov, zapojení a schém tvorených komponentami a prepojeniami medzi nimi. Modul je možné rozširovať o nové komponenty pomocou dedenia a definovania ich vlastností a chovania v jazyku Python.
Závislosti
pyCompEditor vo verzii pre wxPython využíva podporu výhradne open source knižníc:
- programovaci jazyk Python 2.7.3
- knižnicu wxPython 3.0
- knižnice SciPy a matplotlib
- knižnica wxpsvg pre renderovanie SVG obrazkov
Štruktúra
Modul je dedený z triedy wx.PyPanel a v aplikácii sa používa ako štandardný panel. Pre komunikáciu s modulom sa používajú nasledujúce postupy
- volanie metód triedy ComponentEditor (API) určených pre manipuláciu s komponentami a prepojeniami
- addComponent
- copyComponent
- addNet ...
- nastavením módu editora pomocou premennej editorMode, určenej pre riadenie chovania a reakcií na udalosti myši a klávesnice
- MODE_MOVE_VERTEX
Back tp Main Page
- MODE_MOVE_COMPONENT ...
Modul generuje zoznam komponentov a zoznam prepojení, ktoré sú dostupné z aplikácie, v ktorej je modul použitý. Modul obsahuje metódy pre uloženie a nahratie do-zo súboru.
Základom modulu sú triedy Component a Net, Component agreguje zoznam objektov triedy Terminal, ktore tvoria pripojovacie body komponentov. Prepojenie medzi komponentami je tvorené referenciou na počiatočný a koncový terminál a zoznamom vrchlov tvoriacich geometrický tvar prepojenia. Vzťahy medzi triedami ukazuje diagram tried.