// Initialize view to reflect the model: func (v *FilesTreeView) init(model *models.FilesTreeStore) error { renderer1, err := gtk.CellRendererTextNew() if err != nil { return fmt.Errorf("Error CellRendererTextNew:", err) } renderer2, err := gtk.CellRendererPixbufNew() if err != nil { return fmt.Errorf("Error CellRendererPixbufNew:", err) } col1, err := gtk.TreeViewColumnNewWithAttribute("Type", renderer2, "pixbuf", 0) if err != nil { return fmt.Errorf("Error col1:", err) } col2, err := gtk.TreeViewColumnNewWithAttribute("Name", renderer1, "text", 1) if err != nil { return fmt.Errorf("Error col2:", err) } v.view, err = gtk.TreeViewNewWithModel(model.TreeStore()) if err != nil { return fmt.Errorf("Error TreeViewNew", err) } v.view.AppendColumn(col1) v.view.AppendColumn(col2) v.scrolled.Add(v.view) return nil }
func createImageColumn(title string, id int) *gtk.TreeViewColumn { // In this column we want to show image data from Pixbuf, hence // create a pixbuf renderer cellRenderer, err := gtk.CellRendererPixbufNew() if err != nil { log.Fatal("Unable to create pixbuf cell renderer:", err) } // Tell the renderer where to pick input from. Pixbuf renderer understands // the "pixbuf" property. column, err := gtk.TreeViewColumnNewWithAttribute(title, cellRenderer, "pixbuf", id) if err != nil { log.Fatal("Unable to create cell column:", err) } return column }
// CellRendererPixbuf creates a *gtk.CellRendererPixbuf. func CellRendererPixbuf() *gtk.CellRendererPixbuf { w, _ := gtk.CellRendererPixbufNew() return w }