package main import ( "fmt" "os" qt "github.com/mappu/miqt/qt6" "github.com/mappu/miqt/qt6/qml" ) func main() { qt.NewQApplication(os.Args) engine := qml.NewQQmlApplicationEngine() url := qt.QUrl_FromLocalFile("main.qml") model := qt.NewQAbstractListModel() model.OnRowCount(func(parent *qt.QModelIndex) int { return 1000 }) model.OnData(func(idx *qt.QModelIndex, role int) *qt.QVariant { if !idx.IsValid() { return qt.NewQVariant() } switch qt.ItemDataRole(role) { case qt.DisplayRole: return qt.NewQVariant14(fmt.Sprintf("this is row %d", idx.Row())) default: return qt.NewQVariant() } }) engine.RootContext().SetContextProperty("myModel", model.QObject) engine.Load(url); qt.QApplication_Exec() }