update to miqt 0.10, update to qt 6
This commit is contained in:
parent
18331ae007
commit
18f10fc1b4
19
Makefile
19
Makefile
@ -8,7 +8,7 @@ DOCKER := docker
|
|||||||
MIQT_UIC := miqt-uic
|
MIQT_UIC := miqt-uic
|
||||||
MIQT_RCC := miqt-rcc
|
MIQT_RCC := miqt-rcc
|
||||||
GO_WINRES := go-winres
|
GO_WINRES := go-winres
|
||||||
SOURCES := $(wildcard *.go *.ui *.qrc) resources.go mainwindow_ui.go itemwindow_ui.go rsrc_windows_amd64.syso
|
SOURCES := $(wildcard *.go *.ui *.qrc) resources.go resources.rcc mainwindow_ui.go itemwindow_ui.go rsrc_windows_amd64.syso
|
||||||
|
|
||||||
.PHONY: all
|
.PHONY: all
|
||||||
all: build/qbolt build/qbolt.exe
|
all: build/qbolt build/qbolt.exe
|
||||||
@ -18,20 +18,25 @@ dist: build/qbolt-${VERSION}-windows-x86_64.zip build/qbolt-${VERSION}-debian12-
|
|||||||
|
|
||||||
.PHONY: clean
|
.PHONY: clean
|
||||||
clean:
|
clean:
|
||||||
rm -f qbolt || true
|
rm -f qbolt
|
||||||
rm -rf build || true
|
rm -rf build
|
||||||
rm -f windows-manifest.json || true
|
mkdir -p build
|
||||||
|
touch build/.create_dir
|
||||||
|
rm -f windows-manifest.json
|
||||||
|
rm -f rsrc_windows_amd64.syso
|
||||||
|
rm -f resources.go
|
||||||
|
rm -f resources.rcc
|
||||||
|
|
||||||
# Generated files
|
# Generated files
|
||||||
|
|
||||||
resources.rcc resources.go: resources.qrc
|
resources.rcc resources.go: resources.qrc
|
||||||
$(MIQT_RCC) resources.qrc
|
$(MIQT_RCC) -Qt6 -Input resources.qrc
|
||||||
|
|
||||||
mainwindow_ui.go: mainwindow.ui
|
mainwindow_ui.go: mainwindow.ui
|
||||||
$(MIQT_UIC) -InFile mainwindow.ui -OutFile mainwindow_ui.go
|
$(MIQT_UIC) -Qt6 -InFile mainwindow.ui -OutFile mainwindow_ui.go
|
||||||
|
|
||||||
itemwindow_ui.go: itemwindow.ui
|
itemwindow_ui.go: itemwindow.ui
|
||||||
$(MIQT_UIC) -InFile itemwindow.ui -OutFile itemwindow_ui.go
|
$(MIQT_UIC) -Qt6 -InFile itemwindow.ui -OutFile itemwindow_ui.go
|
||||||
|
|
||||||
windows-manifest.json: windows-manifest.template.json Makefile
|
windows-manifest.json: windows-manifest.template.json Makefile
|
||||||
cat windows-manifest.template.json | sed -re 's_%VERSION%_$(VERSION)_' > windows-manifest.json
|
cat windows-manifest.template.json | sed -re 's_%VERSION%_$(VERSION)_' > windows-manifest.json
|
||||||
|
2
go.mod
2
go.mod
@ -3,7 +3,7 @@ module code.ivysaur.me/qbolt
|
|||||||
go 1.23
|
go 1.23
|
||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/mappu/miqt v0.5.0
|
github.com/mappu/miqt v0.10.0
|
||||||
go.etcd.io/bbolt v1.3.11
|
go.etcd.io/bbolt v1.3.11
|
||||||
)
|
)
|
||||||
|
|
||||||
|
9
go.sum
9
go.sum
@ -1,11 +1,16 @@
|
|||||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||||
github.com/mappu/miqt v0.5.0 h1:BWajkNI9PWlWN6ZDgWKwv1gieBGEImRqlWS8ZqDmDfA=
|
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||||
github.com/mappu/miqt v0.5.0/go.mod h1:xFg7ADaO1QSkmXPsPODoKe/bydJpRG9fgCYyIDl/h1U=
|
github.com/mappu/miqt v0.10.0 h1:w+ucRwdoIO7xS32us34lL2Mh0+aarywNpQz6c76ZSDY=
|
||||||
|
github.com/mappu/miqt v0.10.0/go.mod h1:xFg7ADaO1QSkmXPsPODoKe/bydJpRG9fgCYyIDl/h1U=
|
||||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||||
|
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||||
github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk=
|
github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk=
|
||||||
|
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
|
||||||
go.etcd.io/bbolt v1.3.11 h1:yGEzV1wPz2yVCLsD8ZAiGHhHVlczyC9d1rP43/VCRJ0=
|
go.etcd.io/bbolt v1.3.11 h1:yGEzV1wPz2yVCLsD8ZAiGHhHVlczyC9d1rP43/VCRJ0=
|
||||||
go.etcd.io/bbolt v1.3.11/go.mod h1:dksAq7YMXoljX0xu6VF5DMZGbhYYoLUalEiSySYAS4I=
|
go.etcd.io/bbolt v1.3.11/go.mod h1:dksAq7YMXoljX0xu6VF5DMZGbhYYoLUalEiSySYAS4I=
|
||||||
golang.org/x/sync v0.5.0 h1:60k92dhOjHxJkrqnwsfl8KuaHbn/5dl0lUPUklKo3qE=
|
golang.org/x/sync v0.5.0 h1:60k92dhOjHxJkrqnwsfl8KuaHbn/5dl0lUPUklKo3qE=
|
||||||
|
golang.org/x/sync v0.5.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
|
||||||
golang.org/x/sys v0.4.0 h1:Zr2JFtRQNX3BCZ8YtxRE9hNJYC8J6I1MVbMg6owUp18=
|
golang.org/x/sys v0.4.0 h1:Zr2JFtRQNX3BCZ8YtxRE9hNJYC8J6I1MVbMg6owUp18=
|
||||||
golang.org/x/sys v0.4.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.4.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
||||||
|
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
// Generated by miqt-uic. To update this file, edit the .ui file in
|
// Generated by miqt-uic. To update this file, edit the .ui file in
|
||||||
// Qt Designer, and then run 'go generate'.
|
// Qt Designer, and then run 'go generate'.
|
||||||
//
|
//
|
||||||
//go:generate miqt-uic -InFile itemwindow.ui -OutFile itemwindow_ui.go
|
//go:generate miqt-uic -Qt6 -InFile itemwindow.ui -OutFile itemwindow_ui.go
|
||||||
|
|
||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/mappu/miqt/qt"
|
qt "github.com/mappu/miqt/qt6"
|
||||||
)
|
)
|
||||||
|
|
||||||
type ItemWindowUi struct {
|
type ItemWindowUi struct {
|
||||||
@ -22,8 +22,7 @@ type ItemWindowUi struct {
|
|||||||
func NewItemWindowUi() *ItemWindowUi {
|
func NewItemWindowUi() *ItemWindowUi {
|
||||||
ui := &ItemWindowUi{}
|
ui := &ItemWindowUi{}
|
||||||
|
|
||||||
ui.ItemWindow = qt.NewQDialog2(nil)
|
ui.ItemWindow = qt.NewQDialog(nil)
|
||||||
ui.ItemWindow.SetObjectName("ItemWindow")
|
|
||||||
ui.ItemWindow.Resize(370, 353)
|
ui.ItemWindow.Resize(370, 353)
|
||||||
ui.ItemWindow.SetWindowTitle("")
|
ui.ItemWindow.SetWindowTitle("")
|
||||||
icon0 := qt.NewQIcon()
|
icon0 := qt.NewQIcon()
|
||||||
@ -31,27 +30,22 @@ func NewItemWindowUi() *ItemWindowUi {
|
|||||||
ui.ItemWindow.SetWindowIcon(icon0)
|
ui.ItemWindow.SetWindowIcon(icon0)
|
||||||
|
|
||||||
ui.gridLayout_2 = qt.NewQGridLayout(ui.ItemWindow.QWidget)
|
ui.gridLayout_2 = qt.NewQGridLayout(ui.ItemWindow.QWidget)
|
||||||
ui.gridLayout_2.SetObjectName("gridLayout_2")
|
|
||||||
ui.gridLayout_2.SetVerticalSpacing(0)
|
ui.gridLayout_2.SetVerticalSpacing(0)
|
||||||
ui.gridLayout_2.SetContentsMargins(0, 0, 0, 0)
|
ui.gridLayout_2.SetContentsMargins(0, 0, 0, 0)
|
||||||
ui.gridLayout_2.SetSpacing(6)
|
ui.gridLayout_2.SetSpacing(6)
|
||||||
|
|
||||||
ui.contentArea = qt.NewQPlainTextEdit3(ui.ItemWindow.QWidget)
|
ui.contentArea = qt.NewQPlainTextEdit(ui.ItemWindow.QWidget)
|
||||||
ui.contentArea.SetObjectName("contentArea")
|
|
||||||
ui.contentArea.SetFrameShape(qt.QFrame__NoFrame)
|
ui.contentArea.SetFrameShape(qt.QFrame__NoFrame)
|
||||||
|
|
||||||
ui.gridLayout_2.AddWidget2(ui.contentArea.QWidget, 0, 0)
|
ui.gridLayout_2.AddWidget2(ui.contentArea.QWidget, 0, 0)
|
||||||
|
|
||||||
ui.frame = qt.NewQFrame2(ui.ItemWindow.QWidget)
|
ui.frame = qt.NewQFrame(ui.ItemWindow.QWidget)
|
||||||
ui.frame.SetObjectName("frame")
|
|
||||||
|
|
||||||
ui.gridLayout = qt.NewQGridLayout(ui.frame.QWidget)
|
ui.gridLayout = qt.NewQGridLayout(ui.frame.QWidget)
|
||||||
ui.gridLayout.SetObjectName("gridLayout")
|
|
||||||
ui.gridLayout.SetContentsMargins(11, 11, 11, 11)
|
ui.gridLayout.SetContentsMargins(11, 11, 11, 11)
|
||||||
ui.gridLayout.SetSpacing(6)
|
ui.gridLayout.SetSpacing(6)
|
||||||
|
|
||||||
ui.buttonBox = qt.NewQDialogButtonBox5(ui.frame.QWidget)
|
ui.buttonBox = qt.NewQDialogButtonBox(ui.frame.QWidget)
|
||||||
ui.buttonBox.SetObjectName("buttonBox")
|
|
||||||
ui.buttonBox.SetStandardButtons(qt.QDialogButtonBox__Cancel | qt.QDialogButtonBox__Save)
|
ui.buttonBox.SetStandardButtons(qt.QDialogButtonBox__Cancel | qt.QDialogButtonBox__Save)
|
||||||
ui.buttonBox.OnAccepted(ui.ItemWindow.Accept)
|
ui.buttonBox.OnAccepted(ui.ItemWindow.Accept)
|
||||||
ui.buttonBox.OnRejected(ui.ItemWindow.Reject)
|
ui.buttonBox.OnRejected(ui.ItemWindow.Reject)
|
||||||
|
2
main.go
2
main.go
@ -3,7 +3,7 @@ package main
|
|||||||
import (
|
import (
|
||||||
"os"
|
"os"
|
||||||
|
|
||||||
"github.com/mappu/miqt/qt"
|
qt "github.com/mappu/miqt/qt6"
|
||||||
)
|
)
|
||||||
|
|
||||||
var Version string = "v0.0.0-devel"
|
var Version string = "v0.0.0-devel"
|
||||||
|
@ -6,7 +6,7 @@ import (
|
|||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/mappu/miqt/qt"
|
qt "github.com/mappu/miqt/qt6"
|
||||||
bolt "go.etcd.io/bbolt"
|
bolt "go.etcd.io/bbolt"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -24,13 +24,13 @@ func NewMainWindow() *MainWindow {
|
|||||||
|
|
||||||
this.on_bucketTree_currentItemChanged(nil, nil)
|
this.on_bucketTree_currentItemChanged(nil, nil)
|
||||||
|
|
||||||
this.databaseContext = qt.NewQMenu()
|
this.databaseContext = qt.NewQMenu(this.ui.MainWindow.QWidget)
|
||||||
this.databaseContext.QWidget.AddAction(this.ui.actionRefresh_buckets)
|
this.databaseContext.QWidget.AddAction(this.ui.actionRefresh_buckets)
|
||||||
this.databaseContext.QWidget.AddAction(this.ui.actionAdd_bucket)
|
this.databaseContext.QWidget.AddAction(this.ui.actionAdd_bucket)
|
||||||
this.databaseContext.AddSeparator()
|
this.databaseContext.AddSeparator()
|
||||||
this.databaseContext.QWidget.AddAction(this.ui.actionDisconnect)
|
this.databaseContext.QWidget.AddAction(this.ui.actionDisconnect)
|
||||||
|
|
||||||
this.bucketContext = qt.NewQMenu()
|
this.bucketContext = qt.NewQMenu(this.ui.MainWindow.QWidget)
|
||||||
this.bucketContext.QWidget.AddAction(this.ui.actionRefresh_buckets)
|
this.bucketContext.QWidget.AddAction(this.ui.actionRefresh_buckets)
|
||||||
this.bucketContext.QWidget.AddAction(this.ui.actionAdd_bucket)
|
this.bucketContext.QWidget.AddAction(this.ui.actionAdd_bucket)
|
||||||
this.bucketContext.AddSeparator()
|
this.bucketContext.AddSeparator()
|
||||||
@ -68,7 +68,7 @@ var bdbs []*bolt.DB = nil
|
|||||||
func SET_BDB(top *qt.QTreeWidgetItem, bdb *bolt.DB) {
|
func SET_BDB(top *qt.QTreeWidgetItem, bdb *bolt.DB) {
|
||||||
idx := len(bdbs)
|
idx := len(bdbs)
|
||||||
bdbs = append(bdbs, bdb)
|
bdbs = append(bdbs, bdb)
|
||||||
top.SetData(0, BdbPointerRole, qt.NewQVariant7(idx)) // Don't store a Go pointer in Qt memory
|
top.SetData(0, BdbPointerRole, qt.NewQVariant4(idx)) // Don't store a Go pointer in Qt memory
|
||||||
}
|
}
|
||||||
|
|
||||||
func GET_BDB(top *qt.QTreeWidgetItem) *bolt.DB {
|
func GET_BDB(top *qt.QTreeWidgetItem) *bolt.DB {
|
||||||
@ -157,7 +157,7 @@ func (this *MainWindow) refreshBucketTree(itm *qt.QTreeWidgetItem) {
|
|||||||
|
|
||||||
child := qt.NewQTreeWidgetItem6(itm) // NewQTreeWidgetItem()
|
child := qt.NewQTreeWidgetItem6(itm) // NewQTreeWidgetItem()
|
||||||
child.SetText(0, getDisplayName(qba))
|
child.SetText(0, getDisplayName(qba))
|
||||||
child.SetData(0, BinaryDataRole, qt.NewQVariant15(MakeQByteArray(qba)))
|
child.SetData(0, BinaryDataRole, qt.NewQVariant12([]byte(qba)))
|
||||||
child.SetIcon(0, qt.NewQIcon4(":/rsrc/table.png"))
|
child.SetIcon(0, qt.NewQIcon4(":/rsrc/table.png"))
|
||||||
|
|
||||||
itm.AddChild(child)
|
itm.AddChild(child)
|
||||||
@ -215,11 +215,11 @@ func (this *MainWindow) on_bucketTree_customContextMenuRequested(pos *qt.QPoint)
|
|||||||
|
|
||||||
if itm.Parent() != nil {
|
if itm.Parent() != nil {
|
||||||
// Child item, show the bucket menu
|
// Child item, show the bucket menu
|
||||||
this.bucketContext.Popup(this.ui.bucketTree.Viewport().MapToGlobal(pos))
|
this.bucketContext.Popup(this.ui.bucketTree.Viewport().MapToGlobalWithQPoint(pos))
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
// Top-level item, show the database menu
|
// Top-level item, show the database menu
|
||||||
this.databaseContext.Popup(this.ui.bucketTree.Viewport().MapToGlobal(pos))
|
this.databaseContext.Popup(this.ui.bucketTree.Viewport().MapToGlobalWithQPoint(pos))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -283,7 +283,7 @@ func (this *MainWindow) refreshData(bdb *bolt.DB, browse []string) {
|
|||||||
err := Bolt_ListItems(bdb, browse, func(lii ListItemInfo) error {
|
err := Bolt_ListItems(bdb, browse, func(lii ListItemInfo) error {
|
||||||
itm := qt.NewQTreeWidgetItem()
|
itm := qt.NewQTreeWidgetItem()
|
||||||
itm.SetText(0, getDisplayName(lii.Name))
|
itm.SetText(0, getDisplayName(lii.Name))
|
||||||
itm.SetData(0, BinaryDataRole, qt.NewQVariant15(MakeQByteArray(lii.Name)))
|
itm.SetData(0, BinaryDataRole, qt.NewQVariant12([]byte(lii.Name)))
|
||||||
itm.SetText(1, fmt.Sprintf("%d", lii.DataLen))
|
itm.SetText(1, fmt.Sprintf("%d", lii.DataLen))
|
||||||
this.ui.bucketData.AddTopLevelItem(itm)
|
this.ui.bucketData.AddTopLevelItem(itm)
|
||||||
return nil
|
return nil
|
||||||
@ -328,7 +328,7 @@ func (this *MainWindow) getSelection(itm *qt.QTreeWidgetItem) windowSelection {
|
|||||||
if top.Parent() == nil {
|
if top.Parent() == nil {
|
||||||
break
|
break
|
||||||
} else {
|
} else {
|
||||||
browse = append(browse, FromQByteArray(top.Data(0, BinaryDataRole).ToByteArray()))
|
browse = append(browse, string(top.Data(0, BinaryDataRole).ToByteArray()))
|
||||||
top = top.Parent()
|
top = top.Parent()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -370,8 +370,7 @@ func (this *MainWindow) on_bucketData_doubleClicked(index *qt.QModelIndex) {
|
|||||||
|
|
||||||
// Get item key
|
// Get item key
|
||||||
|
|
||||||
model := index.Model()
|
key := string(index.DataWithRole(BinaryDataRole).ToByteArray())
|
||||||
key := FromQByteArray(model.Data2(model.Index(index.Row(), 0), BinaryDataRole).ToByteArray())
|
|
||||||
|
|
||||||
// DB lookup
|
// DB lookup
|
||||||
content, err := Bolt_GetItem(ws.bdb, ws.browse, key)
|
content, err := Bolt_GetItem(ws.bdb, ws.browse, key)
|
||||||
@ -415,8 +414,8 @@ func (this *MainWindow) on_actionDelete_bucket_triggered() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Prompt for confirmation
|
// Prompt for confirmation
|
||||||
bucketToDelete := FromQByteArray(ws.itm.Data(0, BinaryDataRole).ToByteArray())
|
bucketToDelete := string(ws.itm.Data(0, BinaryDataRole).ToByteArray())
|
||||||
if qt.QMessageBox_Question4(
|
if qt.QMessageBox_Question2(
|
||||||
this.Widget(),
|
this.Widget(),
|
||||||
"Delete bucket",
|
"Delete bucket",
|
||||||
fmt.Sprintf("Are you sure you want to remove the bucket '%s'?", getDisplayName(bucketToDelete)),
|
fmt.Sprintf("Are you sure you want to remove the bucket '%s'?", getDisplayName(bucketToDelete)),
|
||||||
@ -474,13 +473,13 @@ func (this *MainWindow) on_DeleteDataButton_clicked() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Prompt for confirmation
|
// Prompt for confirmation
|
||||||
if qt.QMessageBox_Question4(this.Widget(), "Delete items", fmt.Sprintf("Are you sure you want to remove %d item(s)?", len(selection)), qt.QMessageBox__Yes, qt.QMessageBox__Cancel) != int(qt.QMessageBox__Yes) {
|
if qt.QMessageBox_Question2(this.Widget(), "Delete items", fmt.Sprintf("Are you sure you want to remove %d item(s)?", len(selection)), qt.QMessageBox__Yes, qt.QMessageBox__Cancel) != int(qt.QMessageBox__Yes) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
var i int = len(selection)
|
var i int = len(selection)
|
||||||
for i > 0 {
|
for i > 0 {
|
||||||
err := Bolt_DeleteItem(ws.bdb, ws.browse, FromQByteArray(selection[i-1].Data(0, BinaryDataRole).ToByteArray()))
|
err := Bolt_DeleteItem(ws.bdb, ws.browse, string(selection[i-1].Data(0, BinaryDataRole).ToByteArray()))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
this.alert(fmt.Sprintf("Error removing item: %s", err.Error()))
|
this.alert(fmt.Sprintf("Error removing item: %s", err.Error()))
|
||||||
return
|
return
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
// Generated by miqt-uic. To update this file, edit the .ui file in
|
// Generated by miqt-uic. To update this file, edit the .ui file in
|
||||||
// Qt Designer, and then run 'go generate'.
|
// Qt Designer, and then run 'go generate'.
|
||||||
//
|
//
|
||||||
//go:generate miqt-uic -InFile mainwindow.ui -OutFile mainwindow_ui.go
|
//go:generate miqt-uic -Qt6 -InFile mainwindow.ui -OutFile mainwindow_ui.go
|
||||||
|
|
||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/mappu/miqt/qt"
|
qt "github.com/mappu/miqt/qt6"
|
||||||
)
|
)
|
||||||
|
|
||||||
type MainWindowUi struct {
|
type MainWindowUi struct {
|
||||||
@ -57,8 +57,7 @@ type MainWindowUi struct {
|
|||||||
func NewMainWindowUi() *MainWindowUi {
|
func NewMainWindowUi() *MainWindowUi {
|
||||||
ui := &MainWindowUi{}
|
ui := &MainWindowUi{}
|
||||||
|
|
||||||
ui.MainWindow = qt.NewQMainWindow2(nil)
|
ui.MainWindow = qt.NewQMainWindow(nil)
|
||||||
ui.MainWindow.SetObjectName("MainWindow")
|
|
||||||
ui.MainWindow.Resize(668, 405)
|
ui.MainWindow.Resize(668, 405)
|
||||||
ui.MainWindow.SetWindowTitle("QBolt")
|
ui.MainWindow.SetWindowTitle("QBolt")
|
||||||
icon0 := qt.NewQIcon()
|
icon0 := qt.NewQIcon()
|
||||||
@ -66,105 +65,83 @@ func NewMainWindowUi() *MainWindowUi {
|
|||||||
ui.MainWindow.SetWindowIcon(icon0)
|
ui.MainWindow.SetWindowIcon(icon0)
|
||||||
|
|
||||||
ui.actionAbout_qbolt = qt.NewQAction()
|
ui.actionAbout_qbolt = qt.NewQAction()
|
||||||
ui.actionAbout_qbolt.SetObjectName("actionAbout_qbolt")
|
|
||||||
icon1 := qt.NewQIcon()
|
icon1 := qt.NewQIcon()
|
||||||
icon1.AddFile4(":/rsrc/information.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
icon1.AddFile4(":/rsrc/information.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
||||||
ui.actionAbout_qbolt.SetIcon(icon1)
|
ui.actionAbout_qbolt.SetIcon(icon1)
|
||||||
|
|
||||||
ui.actionAbout_Qt = qt.NewQAction()
|
ui.actionAbout_Qt = qt.NewQAction()
|
||||||
ui.actionAbout_Qt.SetObjectName("actionAbout_Qt")
|
|
||||||
|
|
||||||
ui.actionOpen_database = qt.NewQAction()
|
ui.actionOpen_database = qt.NewQAction()
|
||||||
ui.actionOpen_database.SetObjectName("actionOpen_database")
|
|
||||||
icon2 := qt.NewQIcon()
|
icon2 := qt.NewQIcon()
|
||||||
icon2.AddFile4(":/rsrc/database.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
icon2.AddFile4(":/rsrc/database.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
||||||
ui.actionOpen_database.SetIcon(icon2)
|
ui.actionOpen_database.SetIcon(icon2)
|
||||||
|
|
||||||
ui.actionExit = qt.NewQAction()
|
ui.actionExit = qt.NewQAction()
|
||||||
ui.actionExit.SetObjectName("actionExit")
|
|
||||||
icon3 := qt.NewQIcon()
|
icon3 := qt.NewQIcon()
|
||||||
icon3.AddFile4(":/rsrc/door_out.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
icon3.AddFile4(":/rsrc/door_out.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
||||||
ui.actionExit.SetIcon(icon3)
|
ui.actionExit.SetIcon(icon3)
|
||||||
|
|
||||||
ui.actionDisconnect = qt.NewQAction()
|
ui.actionDisconnect = qt.NewQAction()
|
||||||
ui.actionDisconnect.SetObjectName("actionDisconnect")
|
|
||||||
icon4 := qt.NewQIcon()
|
icon4 := qt.NewQIcon()
|
||||||
icon4.AddFile4(":/rsrc/disconnect.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
icon4.AddFile4(":/rsrc/disconnect.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
||||||
ui.actionDisconnect.SetIcon(icon4)
|
ui.actionDisconnect.SetIcon(icon4)
|
||||||
|
|
||||||
ui.actionDelete_bucket = qt.NewQAction()
|
ui.actionDelete_bucket = qt.NewQAction()
|
||||||
ui.actionDelete_bucket.SetObjectName("actionDelete_bucket")
|
|
||||||
icon5 := qt.NewQIcon()
|
icon5 := qt.NewQIcon()
|
||||||
icon5.AddFile4(":/rsrc/table_delete.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
icon5.AddFile4(":/rsrc/table_delete.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
||||||
ui.actionDelete_bucket.SetIcon(icon5)
|
ui.actionDelete_bucket.SetIcon(icon5)
|
||||||
|
|
||||||
ui.actionRefresh_buckets = qt.NewQAction()
|
ui.actionRefresh_buckets = qt.NewQAction()
|
||||||
ui.actionRefresh_buckets.SetObjectName("actionRefresh_buckets")
|
|
||||||
icon6 := qt.NewQIcon()
|
icon6 := qt.NewQIcon()
|
||||||
icon6.AddFile4(":/rsrc/arrow_refresh.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
icon6.AddFile4(":/rsrc/arrow_refresh.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
||||||
ui.actionRefresh_buckets.SetIcon(icon6)
|
ui.actionRefresh_buckets.SetIcon(icon6)
|
||||||
|
|
||||||
ui.actionClear_selection = qt.NewQAction()
|
ui.actionClear_selection = qt.NewQAction()
|
||||||
ui.actionClear_selection.SetObjectName("actionClear_selection")
|
|
||||||
|
|
||||||
ui.actionNew_database = qt.NewQAction()
|
ui.actionNew_database = qt.NewQAction()
|
||||||
ui.actionNew_database.SetObjectName("actionNew_database")
|
|
||||||
icon7 := qt.NewQIcon()
|
icon7 := qt.NewQIcon()
|
||||||
icon7.AddFile4(":/rsrc/database_add.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
icon7.AddFile4(":/rsrc/database_add.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
||||||
ui.actionNew_database.SetIcon(icon7)
|
ui.actionNew_database.SetIcon(icon7)
|
||||||
|
|
||||||
ui.actionAdd_bucket = qt.NewQAction()
|
ui.actionAdd_bucket = qt.NewQAction()
|
||||||
ui.actionAdd_bucket.SetObjectName("actionAdd_bucket")
|
|
||||||
icon8 := qt.NewQIcon()
|
icon8 := qt.NewQIcon()
|
||||||
icon8.AddFile4(":/rsrc/table_add.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
icon8.AddFile4(":/rsrc/table_add.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
||||||
ui.actionAdd_bucket.SetIcon(icon8)
|
ui.actionAdd_bucket.SetIcon(icon8)
|
||||||
|
|
||||||
ui.actionOpen_database_as_read_only = qt.NewQAction()
|
ui.actionOpen_database_as_read_only = qt.NewQAction()
|
||||||
ui.actionOpen_database_as_read_only.SetObjectName("actionOpen_database_as_read_only")
|
|
||||||
|
|
||||||
ui.centralWidget = qt.NewQWidget2(ui.MainWindow.QWidget)
|
ui.centralWidget = qt.NewQWidget(ui.MainWindow.QWidget)
|
||||||
ui.centralWidget.SetObjectName("centralWidget")
|
|
||||||
|
|
||||||
ui.gridLayout = qt.NewQGridLayout(ui.centralWidget)
|
ui.gridLayout = qt.NewQGridLayout(ui.centralWidget)
|
||||||
ui.gridLayout.SetObjectName("gridLayout")
|
|
||||||
ui.gridLayout.SetContentsMargins(0, 0, 0, 0)
|
ui.gridLayout.SetContentsMargins(0, 0, 0, 0)
|
||||||
ui.gridLayout.SetSpacing(6)
|
ui.gridLayout.SetSpacing(6)
|
||||||
|
|
||||||
ui.splitter = qt.NewQSplitter3(ui.centralWidget)
|
ui.splitter = qt.NewQSplitter(ui.centralWidget)
|
||||||
ui.splitter.SetObjectName("splitter")
|
|
||||||
ui.splitter.SetOrientation(qt.Horizontal)
|
ui.splitter.SetOrientation(qt.Horizontal)
|
||||||
ui.splitter.SetChildrenCollapsible(false)
|
ui.splitter.SetChildrenCollapsible(false)
|
||||||
|
|
||||||
ui.bucketTree = qt.NewQTreeWidget2(ui.splitter.QWidget)
|
ui.bucketTree = qt.NewQTreeWidget(ui.splitter.QWidget)
|
||||||
ui.bucketTree.SetObjectName("bucketTree")
|
|
||||||
ui.bucketTree.SetContextMenuPolicy(qt.CustomContextMenu)
|
ui.bucketTree.SetContextMenuPolicy(qt.CustomContextMenu)
|
||||||
ui.bucketTree.SetUniformRowHeights(true)
|
ui.bucketTree.SetUniformRowHeights(true)
|
||||||
ui.splitter.AddWidget(ui.bucketTree.QWidget)
|
ui.splitter.AddWidget(ui.bucketTree.QWidget)
|
||||||
|
|
||||||
ui.stackedWidget = qt.NewQStackedWidget2(ui.splitter.QWidget)
|
ui.stackedWidget = qt.NewQStackedWidget(ui.splitter.QWidget)
|
||||||
ui.stackedWidget.SetObjectName("stackedWidget")
|
|
||||||
|
|
||||||
ui.databasePage = qt.NewQWidget2(ui.stackedWidget.QWidget)
|
ui.databasePage = qt.NewQWidget(ui.stackedWidget.QWidget)
|
||||||
ui.databasePage.SetObjectName("databasePage")
|
|
||||||
|
|
||||||
ui.gridLayout_4 = qt.NewQGridLayout(ui.databasePage)
|
ui.gridLayout_4 = qt.NewQGridLayout(ui.databasePage)
|
||||||
ui.gridLayout_4.SetObjectName("gridLayout_4")
|
|
||||||
ui.gridLayout_4.SetContentsMargins(0, 0, 0, 0)
|
ui.gridLayout_4.SetContentsMargins(0, 0, 0, 0)
|
||||||
ui.gridLayout_4.SetSpacing(6)
|
ui.gridLayout_4.SetSpacing(6)
|
||||||
|
|
||||||
ui.databaseTabWidget = qt.NewQTabWidget2(ui.databasePage)
|
ui.databaseTabWidget = qt.NewQTabWidget(ui.databasePage)
|
||||||
ui.databaseTabWidget.SetObjectName("databaseTabWidget")
|
|
||||||
|
|
||||||
ui.databasePropertiesTab = qt.NewQWidget2(ui.databaseTabWidget.QWidget)
|
ui.databasePropertiesTab = qt.NewQWidget(ui.databaseTabWidget.QWidget)
|
||||||
ui.databasePropertiesTab.SetObjectName("databasePropertiesTab")
|
|
||||||
|
|
||||||
ui.gridLayout_2 = qt.NewQGridLayout(ui.databasePropertiesTab)
|
ui.gridLayout_2 = qt.NewQGridLayout(ui.databasePropertiesTab)
|
||||||
ui.gridLayout_2.SetObjectName("gridLayout_2")
|
|
||||||
ui.gridLayout_2.SetContentsMargins(3, 3, 3, 3)
|
ui.gridLayout_2.SetContentsMargins(3, 3, 3, 3)
|
||||||
ui.gridLayout_2.SetSpacing(6)
|
ui.gridLayout_2.SetSpacing(6)
|
||||||
|
|
||||||
ui.databasePropertiesArea = qt.NewQPlainTextEdit3(ui.databasePropertiesTab)
|
ui.databasePropertiesArea = qt.NewQPlainTextEdit(ui.databasePropertiesTab)
|
||||||
ui.databasePropertiesArea.SetObjectName("databasePropertiesArea")
|
|
||||||
ui.databasePropertiesArea.SetFrameShape(qt.QFrame__NoFrame)
|
ui.databasePropertiesArea.SetFrameShape(qt.QFrame__NoFrame)
|
||||||
ui.databasePropertiesArea.SetReadOnly(true)
|
ui.databasePropertiesArea.SetReadOnly(true)
|
||||||
|
|
||||||
@ -176,27 +153,21 @@ func NewMainWindowUi() *MainWindowUi {
|
|||||||
ui.gridLayout_4.AddWidget2(ui.databaseTabWidget.QWidget, 0, 0)
|
ui.gridLayout_4.AddWidget2(ui.databaseTabWidget.QWidget, 0, 0)
|
||||||
ui.stackedWidget.AddWidget(ui.databasePage)
|
ui.stackedWidget.AddWidget(ui.databasePage)
|
||||||
|
|
||||||
ui.bucketPage = qt.NewQWidget2(ui.stackedWidget.QWidget)
|
ui.bucketPage = qt.NewQWidget(ui.stackedWidget.QWidget)
|
||||||
ui.bucketPage.SetObjectName("bucketPage")
|
|
||||||
|
|
||||||
ui.gridLayout_3 = qt.NewQGridLayout(ui.bucketPage)
|
ui.gridLayout_3 = qt.NewQGridLayout(ui.bucketPage)
|
||||||
ui.gridLayout_3.SetObjectName("gridLayout_3")
|
|
||||||
ui.gridLayout_3.SetContentsMargins(0, 0, 0, 0)
|
ui.gridLayout_3.SetContentsMargins(0, 0, 0, 0)
|
||||||
ui.gridLayout_3.SetSpacing(6)
|
ui.gridLayout_3.SetSpacing(6)
|
||||||
|
|
||||||
ui.bucketTabWidget = qt.NewQTabWidget2(ui.bucketPage)
|
ui.bucketTabWidget = qt.NewQTabWidget(ui.bucketPage)
|
||||||
ui.bucketTabWidget.SetObjectName("bucketTabWidget")
|
|
||||||
|
|
||||||
ui.bucketPropertiesTab = qt.NewQWidget2(ui.bucketTabWidget.QWidget)
|
ui.bucketPropertiesTab = qt.NewQWidget(ui.bucketTabWidget.QWidget)
|
||||||
ui.bucketPropertiesTab.SetObjectName("bucketPropertiesTab")
|
|
||||||
|
|
||||||
ui.gridLayout_5 = qt.NewQGridLayout(ui.bucketPropertiesTab)
|
ui.gridLayout_5 = qt.NewQGridLayout(ui.bucketPropertiesTab)
|
||||||
ui.gridLayout_5.SetObjectName("gridLayout_5")
|
|
||||||
ui.gridLayout_5.SetContentsMargins(3, 3, 3, 3)
|
ui.gridLayout_5.SetContentsMargins(3, 3, 3, 3)
|
||||||
ui.gridLayout_5.SetSpacing(6)
|
ui.gridLayout_5.SetSpacing(6)
|
||||||
|
|
||||||
ui.bucketPropertiesArea = qt.NewQPlainTextEdit3(ui.bucketPropertiesTab)
|
ui.bucketPropertiesArea = qt.NewQPlainTextEdit(ui.bucketPropertiesTab)
|
||||||
ui.bucketPropertiesArea.SetObjectName("bucketPropertiesArea")
|
|
||||||
ui.bucketPropertiesArea.SetFrameShape(qt.QFrame__NoFrame)
|
ui.bucketPropertiesArea.SetFrameShape(qt.QFrame__NoFrame)
|
||||||
ui.bucketPropertiesArea.SetReadOnly(true)
|
ui.bucketPropertiesArea.SetReadOnly(true)
|
||||||
|
|
||||||
@ -205,16 +176,13 @@ func NewMainWindowUi() *MainWindowUi {
|
|||||||
icon10.AddFile4(":/rsrc/chart_bar.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
icon10.AddFile4(":/rsrc/chart_bar.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
||||||
ui.bucketTabWidget.AddTab2(ui.bucketPropertiesTab, icon10, "")
|
ui.bucketTabWidget.AddTab2(ui.bucketPropertiesTab, icon10, "")
|
||||||
|
|
||||||
ui.bucketDataTab = qt.NewQWidget2(ui.bucketTabWidget.QWidget)
|
ui.bucketDataTab = qt.NewQWidget(ui.bucketTabWidget.QWidget)
|
||||||
ui.bucketDataTab.SetObjectName("bucketDataTab")
|
|
||||||
|
|
||||||
ui.gridLayout_6 = qt.NewQGridLayout(ui.bucketDataTab)
|
ui.gridLayout_6 = qt.NewQGridLayout(ui.bucketDataTab)
|
||||||
ui.gridLayout_6.SetObjectName("gridLayout_6")
|
|
||||||
ui.gridLayout_6.SetContentsMargins(3, 3, 3, 3)
|
ui.gridLayout_6.SetContentsMargins(3, 3, 3, 3)
|
||||||
ui.gridLayout_6.SetSpacing(6)
|
ui.gridLayout_6.SetSpacing(6)
|
||||||
|
|
||||||
ui.bucketData = qt.NewQTreeWidget2(ui.bucketDataTab)
|
ui.bucketData = qt.NewQTreeWidget(ui.bucketDataTab)
|
||||||
ui.bucketData.SetObjectName("bucketData")
|
|
||||||
ui.bucketData.SetSelectionMode(qt.QAbstractItemView__ExtendedSelection)
|
ui.bucketData.SetSelectionMode(qt.QAbstractItemView__ExtendedSelection)
|
||||||
ui.bucketData.SetIndentation(0)
|
ui.bucketData.SetIndentation(0)
|
||||||
ui.bucketData.SetRootIsDecorated(false)
|
ui.bucketData.SetRootIsDecorated(false)
|
||||||
@ -223,8 +191,7 @@ func NewMainWindowUi() *MainWindowUi {
|
|||||||
|
|
||||||
ui.gridLayout_6.AddWidget3(ui.bucketData.QWidget, 0, 0, 1, 3)
|
ui.gridLayout_6.AddWidget3(ui.bucketData.QWidget, 0, 0, 1, 3)
|
||||||
|
|
||||||
ui.AddDataButton = qt.NewQPushButton4(ui.bucketDataTab)
|
ui.AddDataButton = qt.NewQPushButton(ui.bucketDataTab)
|
||||||
ui.AddDataButton.SetObjectName("AddDataButton")
|
|
||||||
icon11 := qt.NewQIcon()
|
icon11 := qt.NewQIcon()
|
||||||
icon11.AddFile4(":/rsrc/add.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
icon11.AddFile4(":/rsrc/add.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
||||||
ui.AddDataButton.SetIcon(icon11)
|
ui.AddDataButton.SetIcon(icon11)
|
||||||
@ -232,8 +199,7 @@ func NewMainWindowUi() *MainWindowUi {
|
|||||||
ui.gridLayout_6.AddWidget2(ui.AddDataButton.QWidget, 1, 0)
|
ui.gridLayout_6.AddWidget2(ui.AddDataButton.QWidget, 1, 0)
|
||||||
/* miqt-uic: no handler for spacer */
|
/* miqt-uic: no handler for spacer */
|
||||||
|
|
||||||
ui.DeleteDataButton = qt.NewQPushButton4(ui.bucketDataTab)
|
ui.DeleteDataButton = qt.NewQPushButton(ui.bucketDataTab)
|
||||||
ui.DeleteDataButton.SetObjectName("DeleteDataButton")
|
|
||||||
icon12 := qt.NewQIcon()
|
icon12 := qt.NewQIcon()
|
||||||
icon12.AddFile4(":/rsrc/delete.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
icon12.AddFile4(":/rsrc/delete.png", qt.NewQSize(), qt.QIcon__Normal, qt.QIcon__Off)
|
||||||
ui.DeleteDataButton.SetIcon(icon12)
|
ui.DeleteDataButton.SetIcon(icon12)
|
||||||
@ -250,41 +216,35 @@ func NewMainWindowUi() *MainWindowUi {
|
|||||||
ui.gridLayout.AddWidget2(ui.splitter.QWidget, 0, 0)
|
ui.gridLayout.AddWidget2(ui.splitter.QWidget, 0, 0)
|
||||||
ui.MainWindow.SetCentralWidget(ui.centralWidget) // Set central widget
|
ui.MainWindow.SetCentralWidget(ui.centralWidget) // Set central widget
|
||||||
|
|
||||||
ui.menuBar = qt.NewQMenuBar2(ui.MainWindow.QWidget)
|
ui.menuBar = qt.NewQMenuBar(ui.MainWindow.QWidget)
|
||||||
ui.menuBar.SetObjectName("menuBar")
|
|
||||||
ui.menuBar.Resize(668, 29)
|
ui.menuBar.Resize(668, 29)
|
||||||
|
|
||||||
ui.menuFile = qt.NewQMenu3(ui.menuBar.QWidget)
|
ui.menuFile = qt.NewQMenu(ui.menuBar.QWidget)
|
||||||
ui.menuFile.SetObjectName("menuFile")
|
|
||||||
ui.menuFile.QWidget.AddAction(ui.actionNew_database)
|
ui.menuFile.QWidget.AddAction(ui.actionNew_database)
|
||||||
ui.menuFile.QWidget.AddAction(ui.actionOpen_database)
|
ui.menuFile.QWidget.AddAction(ui.actionOpen_database)
|
||||||
ui.menuFile.QWidget.AddAction(ui.actionOpen_database_as_read_only)
|
ui.menuFile.QWidget.AddAction(ui.actionOpen_database_as_read_only)
|
||||||
ui.menuFile.AddSeparator()
|
ui.menuFile.AddSeparator()
|
||||||
ui.menuFile.QWidget.AddAction(ui.actionExit)
|
ui.menuFile.QWidget.AddAction(ui.actionExit)
|
||||||
|
|
||||||
ui.menuHelp = qt.NewQMenu3(ui.menuBar.QWidget)
|
ui.menuHelp = qt.NewQMenu(ui.menuBar.QWidget)
|
||||||
ui.menuHelp.SetObjectName("menuHelp")
|
|
||||||
ui.menuHelp.QWidget.AddAction(ui.actionAbout_qbolt)
|
ui.menuHelp.QWidget.AddAction(ui.actionAbout_qbolt)
|
||||||
ui.menuHelp.QWidget.AddAction(ui.actionAbout_Qt)
|
ui.menuHelp.QWidget.AddAction(ui.actionAbout_Qt)
|
||||||
|
|
||||||
ui.menuView = qt.NewQMenu3(ui.menuBar.QWidget)
|
ui.menuView = qt.NewQMenu(ui.menuBar.QWidget)
|
||||||
ui.menuView.SetObjectName("menuView")
|
|
||||||
ui.menuView.QWidget.AddAction(ui.actionClear_selection)
|
ui.menuView.QWidget.AddAction(ui.actionClear_selection)
|
||||||
ui.menuBar.AddMenu(ui.menuFile)
|
ui.menuBar.AddMenu(ui.menuFile)
|
||||||
ui.menuBar.AddMenu(ui.menuView)
|
ui.menuBar.AddMenu(ui.menuView)
|
||||||
ui.menuBar.AddMenu(ui.menuHelp)
|
ui.menuBar.AddMenu(ui.menuHelp)
|
||||||
ui.MainWindow.SetMenuBar(ui.menuBar)
|
ui.MainWindow.SetMenuBar(ui.menuBar)
|
||||||
|
|
||||||
ui.mainToolBar = qt.NewQToolBar4(ui.MainWindow.QWidget)
|
ui.mainToolBar = qt.NewQToolBar(ui.MainWindow.QWidget)
|
||||||
ui.mainToolBar.SetObjectName("mainToolBar")
|
|
||||||
ui.MainWindow.AddToolBar(qt.TopToolBarArea, ui.mainToolBar)
|
ui.MainWindow.AddToolBar(qt.TopToolBarArea, ui.mainToolBar)
|
||||||
/* miqt-uic: no handler for mainToolBar attribute 'toolBarBreak' */
|
/* miqt-uic: no handler for mainToolBar attribute 'toolBarBreak' */
|
||||||
ui.mainToolBar.QWidget.AddAction(ui.actionNew_database)
|
ui.mainToolBar.QWidget.AddAction(ui.actionNew_database)
|
||||||
ui.mainToolBar.QWidget.AddAction(ui.actionOpen_database)
|
ui.mainToolBar.QWidget.AddAction(ui.actionOpen_database)
|
||||||
ui.mainToolBar.AddSeparator()
|
ui.mainToolBar.AddSeparator()
|
||||||
|
|
||||||
ui.statusBar = qt.NewQStatusBar2(ui.MainWindow.QWidget)
|
ui.statusBar = qt.NewQStatusBar(ui.MainWindow.QWidget)
|
||||||
ui.statusBar.SetObjectName("statusBar")
|
|
||||||
ui.MainWindow.SetStatusBar(ui.statusBar)
|
ui.MainWindow.SetStatusBar(ui.statusBar)
|
||||||
|
|
||||||
ui.Retranslate()
|
ui.Retranslate()
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
//go:generate miqt-rcc.sh resources.qrc
|
//go:generate miqt-rcc -Input "resources.qrc" -OutputGo "resources.go" -OutputRcc "resources.rcc" -Qt6
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"embed"
|
"embed"
|
||||||
|
|
||||||
"github.com/mappu/miqt/qt"
|
qt "github.com/mappu/miqt/qt6"
|
||||||
)
|
)
|
||||||
|
|
||||||
//go:embed resources.rcc
|
//go:embed resources.rcc
|
||||||
|
BIN
resources.rcc
BIN
resources.rcc
Binary file not shown.
15
util.go
15
util.go
@ -1,11 +1,5 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
|
||||||
"unsafe"
|
|
||||||
|
|
||||||
"github.com/mappu/miqt/qt"
|
|
||||||
)
|
|
||||||
|
|
||||||
// ReverseSlice reverses a slice.
|
// ReverseSlice reverses a slice.
|
||||||
// @ref https://stackoverflow.com/a/28058324
|
// @ref https://stackoverflow.com/a/28058324
|
||||||
func ReverseSlice[S ~[]E, E any](s S) {
|
func ReverseSlice[S ~[]E, E any](s S) {
|
||||||
@ -13,12 +7,3 @@ func ReverseSlice[S ~[]E, E any](s S) {
|
|||||||
s[i], s[j] = s[j], s[i]
|
s[i], s[j] = s[j], s[i]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func MakeQByteArray(s string) *qt.QByteArray {
|
|
||||||
return qt.NewQByteArray7(s, len(s))
|
|
||||||
}
|
|
||||||
|
|
||||||
func FromQByteArray(qba *qt.QByteArray) string {
|
|
||||||
var rawData []byte = unsafe.Slice((*byte)(qba.Data()), qba.Length())
|
|
||||||
return string(rawData) // copy
|
|
||||||
}
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user