Skip to content

salviati/go-qt5

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

#go-qt5

##Before you start This is a fork of visualfc's qt4 bindings, and several critical bugs are inherited along the way. Until these bugs are fixed, this package is not recommended for any real use. I don't have any time to actively work on this project, but I'll keep reviewing and merging pull requests.

Some other Qt-related, active go projects:

##Before filing an issue

  • Please read the above section first.
  • Make sure it's specifically about the go-qt5 wrappers, and not "how do I do XYZ in Qt?". Such questions are better placed in Qt5 forums.
  • If you find that go-qt5 lacks the wrapper for a particular class you need, feel free to send a patch.

##Introduction go-qt5 provides with qt5 bindings for Go programming language, based on visualfc's go-ui library.

Lua code that generates the wrappers (uiobjs.go and cdrv.cpp) can be found under make.

The wrapper code is by far incomplete, so pull requests are more than welcome. Adding new functionality usually consists of editing or adding files under make/qt5, and updating make/make.lua script, and making relevant changes in qt5 and qtdrv.

##License go-qt5 lib BSD qtdrv lib LGPL

##Using go-qt5

###1. get go-qt5 $ go get github.com/salviati/go-qt5 ###2. generate bindings $ cd $GOPATH/src/github.com/salviati/go-qt5/make $ lua make.lua $ lua makelib.lua ###3. build & install C layer $ cd $GOPATH/src/github.com/salviati/go-qt5/goqtdrv5 $ qmake "CONFIG+=release" $ make # make install ###4.build go-qt5 $ cd $GOPATH/src/github.com/salviati/go-qt5/qt5 $ go install ###5.build examples $ cd $GOPATH/src/github.com/salviati/go-qt5/examples $ go run minimal.go

##A minimal example

package main

import (
    "github.com/salviati/go-qt5/qt5"
)

func main() {
    qt5.Main(func() {
	    w := qt5.NewWidget()
	    w.SetWindowTitle(qt5.Version())
	    w.SetSizev(300, 200)
	    defer w.Close()
	    w.Show()
	    qt5.Run()
    })
}

About

qt5 bindings for go

Resources

License

BSD-2-Clause, LGPL-2.1 licenses found

Licenses found

BSD-2-Clause
LICENSE
LGPL-2.1
LICENSE.LGPL

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Lua 55.0%
  • C++ 23.7%
  • Go 19.9%
  • Other 1.4%