Esempio n. 1
0
        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;
        }