From 7bacd37161428c8417589066d0502093308532af Mon Sep 17 00:00:00 2001 From: mappu Date: Fri, 7 Feb 2025 17:58:12 +1300 Subject: [PATCH] uic: add -Qt6 argument --- cmd/miqt-uic/main.go | 7 ++++++- cmd/miqt-uic/ui2go.go | 9 +++++++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/cmd/miqt-uic/main.go b/cmd/miqt-uic/main.go index 6059ba46..a683b15f 100644 --- a/cmd/miqt-uic/main.go +++ b/cmd/miqt-uic/main.go @@ -9,9 +9,14 @@ import ( "strings" ) +const ( + DefaultIsQt6 = false +) + func main() { inFile := flag.String("InFile", "", "Input .ui file") outFile := flag.String("OutFile", "-", "Output .go file, or - for stdout") + useQt6 := flag.Bool("Qt6", DefaultIsQt6, "Use Qt 6 instead of Qt 5") packageName := flag.String("Package", "main", "Custom package name") flag.Parse() @@ -31,7 +36,7 @@ func main() { panic(err) } - gosrc, err := generate(*packageName, strings.Join(os.Args[1:], " "), parsed) + gosrc, err := generate(*packageName, strings.Join(os.Args[1:], " "), parsed, *useQt6) if err != nil { panic(err) } diff --git a/cmd/miqt-uic/ui2go.go b/cmd/miqt-uic/ui2go.go index 1473b451..69089e93 100644 --- a/cmd/miqt-uic/ui2go.go +++ b/cmd/miqt-uic/ui2go.go @@ -490,7 +490,7 @@ func generateWidget(w UiWidget, parentName string, parentClass string) (string, return ret.String(), nil } -func generate(packageName string, goGenerateArgs string, u UiFile) ([]byte, error) { +func generate(packageName string, goGenerateArgs string, u UiFile, useQt6 bool) ([]byte, error) { ret := strings.Builder{} @@ -507,6 +507,11 @@ func generate(packageName string, goGenerateArgs string, u UiFile) ([]byte, erro // Header + importPackage := `"github.com/mappu/miqt/qt"` + if useQt6 { + importPackage = `qt "github.com/mappu/miqt/qt6"` + } + ret.WriteString(`// Generated by miqt-uic. To update this file, edit the .ui file in // Qt Designer, and then run 'go generate'. // @@ -515,7 +520,7 @@ func generate(packageName string, goGenerateArgs string, u UiFile) ([]byte, erro package ` + packageName + ` import ( - "github.com/mappu/miqt/qt" + ` + importPackage + ` ) type ` + u.Class + `Ui struct {