Line 34: |
Line 34: |
| *splash_zynthian | | *splash_zynthian |
| *splash_zynthian_error | | *splash_zynthian_error |
| + | |
| + | Now these are fairly low level functionality and try to helpfully display some information in case the GUI doesn't start for some reason, like machine IP address ( a well known bootstrap problem in that if you don't know the machine address how can you point a terminal at it to configure it with it's IP address...?). So that if your zynth doesnt start you can ssh into it to examine quite why start up has failed ( It's normally jackd whinging about something...:-) ) |
| + | |
| + | Once that load_config_env has loaded up all the environmental variables that hold the actual state of a zynthian. It's all in there and is used to define the context that the zynthian runs under. |
| + | Quite how a specific environment file is exposed to this process depends on the config, so mechansisms like MIDI configs define these states depending on wether or not a user has defined their own specific MIDI configuration or indeed several. Zynthian is basically a device for starting and stopping jack instruments and interacting with the engines once they are running. |
| + | The GUI controls those interactions. |
| + | |
| + | We then start up the python file |
| + | |
| + | /zynthian/zynthian-ui/zynthian_gui.py |
| + | |
| + | This module primarily defines the zynthian_gui class object with a few tkinter helper functions |
| + | and this is what actually handles all the GUI interaction and functionality. |
| + | |
| + | It's about 2000 lines of code and after all this definition |
| + | |
| + | At line 1775 or there abouts we get |
| + | |
| + | * logging.info("STARTING ZYNTHIAN-UI ...") |
| + | Always good to log and use the python logging infrastructure. |
| + | * zynthian_gui_config.zyngui=zyngui=zynthian_gui() |
| + | |
| + | Some name binding for maintaining different names spaces or some possibly more nefereous purpose, before running |
| + | * zyngui.start() |
| + | |
| + | This method of the zynthian_gui class configures the GUI environment ready to start. |