| 20 | } |
| 21 | |
| 22 | func run() error { |
| 23 | engine := qml.NewEngine() |
| 24 | |
| 25 | model, err := Read("model/gopher.obj") |
| 26 | if err != nil { |
| 27 | return err |
| 28 | } |
| 29 | |
| 30 | qml.RegisterTypes("GoExtensions", 1, 0, []qml.TypeSpec{{ |
| 31 | Init: func(g *Gopher, obj qml.Object) { |
| 32 | g.Object = obj |
| 33 | g.model = model |
| 34 | }, |
| 35 | }}) |
| 36 | |
| 37 | component, err := engine.LoadFile(filename) |
| 38 | if err != nil { |
| 39 | return err |
| 40 | } |
| 41 | |
| 42 | win := component.CreateWindow(nil) |
| 43 | win.Set("x", 560) |
| 44 | win.Set("y", 320) |
| 45 | win.Show() |
| 46 | win.Wait() |
| 47 | return nil |
| 48 | } |
| 49 | |
| 50 | type Gopher struct { |
| 51 | qml.Object |