Exemple #1
0
func newUnifiedLayout(ui *gtkUI, left, parent *gtk.Box) *unifiedLayout {
	ul := &unifiedLayout{
		ui:       ui,
		cl:       &conversationList{},
		leftPane: left,
		itemMap:  make(map[int]*conversationStackItem),
	}
	ul.cl.layout = ul

	builder := newBuilder("UnifiedLayout")
	builder.getItems(
		"treeview", &ul.cl.view,
		"liststore", &ul.cl.model,

		"revealer", &ul.revealer,
		"notebook", &ul.notebook,
		"header_label", &ul.header,
		"header_box", &ul.headerBox,
		"close_button", &ul.close,
	)
	builder.ConnectSignals(map[string]interface{}{
		"on_activate":    ul.cl.onActivate,
		"on_clicked":     ul.onCloseClicked,
		"on_switch_page": ul.onSwitchPage,
	})
	parent.PackStart(ul.revealer, false, true, 0)
	parent.SetChildPacking(left, false, true, 0, gtk.PACK_START)
	ul.notebook.SetSizeRequest(500, -1)
	ul.revealer.Hide()
	left.SetHAlign(gtk.ALIGN_FILL)
	left.SetHExpand(true)
	return ul
}