Example #1
0
        void BuildItemProviders()
        {
            if (FirstRun)
            {
                WindowManager = true;

                if (!GnomeBuildLaunchers())
                {
                    DefaultBuildLaunchers();
                }
            }

            item_providers = new List <AbstractDockItemProvider> ();

            DefaultProvider = new FileApplicationProvider();
            item_providers.Add(DefaultProvider);

            foreach (string launcher in Launchers)
            {
                DefaultProvider.InsertItem(launcher);
            }

            foreach (string pluginId in Plugins)
            {
                Addin addin = PluginManager.AllAddins.FirstOrDefault(a => a.LocalId == pluginId);
                if (addin == null)
                {
                    continue;
                }
                addin.Enabled = true;

                AbstractDockItemProvider provider = PluginManager.ItemProviderFromAddin(addin.Id);
                if (provider != null)
                {
                    item_providers.Add(provider);
                }
            }

            List <string> sortList = SortList.ToList();

            foreach (AbstractDockItemProvider provider in item_providers)
            {
                SortProviderOnList(provider, sortList);
            }

            UpdateSortList();
        }