public QueueableSourceComboBox(string source_name) { // FIXME: Would probably be nice to use this, but variable // width reporting in SourceRowRenderer does not work as // I would expect, so currently it's forced to 200px wide // which causes quite a problem with a UI like Muinshee // and the MeeGo Media Panel // // SourceRowRenderer renderer = new SourceRowRenderer (); // renderer.ParentWidget = this; var renderer = new CellRendererText(); PackStart(renderer, true); SetCellDataFunc(renderer, new CellLayoutDataFunc( (layout, cell, model, iter) => renderer.Text = ((Source)model.GetValue(iter, 0)).Name )); var store = new SourceModel(); filter = new TreeModelFilter(store, null); filter.VisibleFunc = (model, iter) => IsQueueable(((SourceModel)model).GetSource(iter)); Model = filter; store.Refresh(); SetActiveSource(source_name); HasTooltip = true; QueryTooltip += HandleQueryTooltip; }