miqt/cmd/miqt-uic
2024-10-05 17:49:21 +13:00
..
constructors.go uic: support promoted widgets assuming default ctor naming scheme 2024-10-03 17:22:49 +13: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: support colspan/rowspan in grid layouts 2024-10-05 17:49:10 +13:00
ui2go.go uic: support standard button connections in dialogs 2024-10-05 17:49:21 +13:00
uic_test.go uic: deeper implementation, add uidesigner example 2024-09-28 14:27:19 +12:00
util.go uic: layout spacing and margins 2024-10-03 18:07:43 +13: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).