Skip to content

davidvlaminck/OTLMOW-GUI

Repository files navigation

OTLMOW-GUI

PyPI otlmow-gui-downloads Unittests PyPI - Python Version GitHub issues coverage

Summary

The main use case of the otlmow-gui is to provide a graphical user interface for the OTLMOW project. It is built using the PyQt6 framework and is compatible with Python 3.7 and higher. This will eventually replace the OTL wizard.

OTLMOW Project

This project aims to implement the Flemish data standard OTL (https://wegenenverkeer.data.vlaanderen.be/) in Python. It is split into different packages to reduce compatibility issues

Installation guide

Currently, you need at least Python version 3.9 to use this library.

To install the OTL MOW project into your Python project, use pip to install it:

pip install otlmow_gui

To upgrade an existing installation use:

pip install otlmow_gui --upgrade

To run the OTL-wizard do the following:

python OTLWizard.py

We are working on a way to deploy this to the different operating systems. This is expected near the end of 2023.

Translations guide

  1. Install babel in a seperate python environment so it doesn't end up in the requirements.txt
    pip install babel

  2. Generate the locale\base.pot file from the strings in your python code by running using the seperate python environment:
    pybabel extract -F babel.cfg -o locale\base.pot .\Domain .\GUI .\Exceptions

  3. Update the locale\\<language_code>\LC_MESSAGES\message.po files to the new base.pot using the seperate python environment with:
    pybabel update -i .\locale\base.pot -d locale --no-fuzzy-matching

  4. Find your new_text_key in the locale\\<language_code>\LC_MESSAGES\message.po of each language and fill in the tranlation for that text in like:

    msgid "new_text_key"
    msgstr "The translation for this new key"
    

    if you don't know all the text_keys you added you can search for msgstr "" to find all msgids that have no translation yet

  5. Compile new translations into messages.mo files using the seperate python environment
    pybabel compile -d locale

exe and installer creation guide

  1. Make sure you have a python 3.13 environment with the requirements.txt installed set up
  2. Run the pyinstaller_script.py in that environment
    This will make the OTL Wizard 2.exe in the LatestReleaseMulti folder
  3. Download and install Inno Setup Compiler
  4. In the LatestReleaseMulti/inno_setup_installer_setup_script.iss script replace all occurrences of:
    C:\Users\chris\PycharmProjects\OTLMOW-GUI
    with the absolute path to the root of your project
  5. Open LatestReleaseMulti/inno_setup_installer_setup_script.iss with Inno Setup Compiler and compile.
    This should create LatestReleaseMulti/OTL wizard 2 installer.exe

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages