Skip to content

Design Goals

Jared Ketterer edited this page Jun 24, 2020 · 5 revisions

The core idea behind QtPyHammer is to make it easy to contribute to, be that contribution in the form of:

  • Custom User Configs
  • Addons (scripts)
  • New tools for map makers
  • Alternate UI

This is why the QtPyHammer folder has the following file structure:

|- ops\       # the functions attached to the interface
|- ui\        # the visual user interface
|- utilities\ # classes and functions for handling brushes, 3D math, rendering, etc.
|- hammer.py  # the script that runs it all

Separating ops from the ui makes it easier for a contributor to create something new.

If they are rearranging an old UI element, they don't have to copy the old functions, only import the same ones.
When combining elements, it's as simple as importing both libraries and taking elements from both interfaces.

Clone this wiki locally