miqt/cmd/miqt-uic
2024-09-28 14:52:13 +12:00
..
constructors.go uic: deeper implementation, add uidesigner example 2024-09-28 14:27:19 +12:00
main.go uic: add main flag handling, add go:generate comment with preserved flags 2024-09-28 11:31:23 +12:00
README.md uic: add development README 2024-09-28 14:52:13 +12:00
types.go uic: recursive emit basic go implementation 2024-09-28 13:04:31 +12:00
ui2go.go uic: support QTabWidget.title, QDockWidget locations 2024-09-28 14:39:56 +12:00
uic_test.go uic: deeper implementation, add uidesigner example 2024-09-28 14:27:19 +12:00
util.go uic: deeper implementation, add uidesigner example 2024-09-28 14:27:19 +12:00

miqt-uic

The miqt-uic program compiles Qt Designer .ui files into MIQT .go files.

For usage information, see the examples/uidesigner folder.

Architecture design

  1. Parse xml type definitions
  2. Recursively walk and emit Go code.

When developing miqt-uic, it's useful to run Qt uic side-by-side, and compare the output of each program for missing attributes or assignments.

There is a hardcoded list of known MIQT constructor functions taking single parent *qt.QWidget argument.

  • A bash function to regenerate this list is included in constructors.go. It should be re-run if MIQT is updated.
  • "Promoted Widget" will result in no matching found constructor function (current known issue).