コード例 #1
0
ファイル: Solution.cs プロジェクト: slagusev/monodevelop
        void DetachItem(SolutionEntityItem item, bool reloading)
        {
            item.NeedsReload = false;
            if (!reloading)
            {
                foreach (SolutionConfiguration conf in Configurations)
                {
                    conf.RemoveItem(item);
                }
                if (item is Project)
                {
                    RemoveReferencesToProject((Project)item);
                }

                if (StartupItem == item)
                {
                    StartupItem = null;
                }
                else
                {
                    MultiStartupItems.Remove(item);
                }
            }

            // Update the file name because the file format may have changed
            item.FileName = item.FileName;
        }
コード例 #2
0
ファイル: Solution.cs プロジェクト: slagusev/monodevelop
        void SetupNewItem(SolutionItem item, SolutionItem replacedItem)
        {
            ConvertToSolutionFormat(item, false);

            SolutionEntityItem eitem = item as SolutionEntityItem;

            if (eitem != null)
            {
                eitem.NeedsReload = false;
                if (eitem.SupportsConfigurations() || replacedItem != null)
                {
                    if (replacedItem == null)
                    {
                        // Register the new entry in every solution configuration
                        foreach (SolutionConfiguration conf in Configurations)
                        {
                            conf.AddItem(eitem);
                        }
                        // If there is no startup project or it is an invalid one, use the new project as startup if possible
                        if ((StartupItem == null || !StartupItem.SupportsExecute()) && eitem.SupportsExecute())
                        {
                            StartupItem = eitem;
                        }
                    }
                    else
                    {
                        // Reuse the configuration information of the replaced item
                        foreach (SolutionConfiguration conf in Configurations)
                        {
                            conf.ReplaceItem((SolutionEntityItem)replacedItem, eitem);
                        }
                        if (StartupItem == replacedItem)
                        {
                            StartupItem = eitem;
                        }
                        else
                        {
                            int i = MultiStartupItems.IndexOf((SolutionEntityItem)replacedItem);
                            if (i != -1)
                            {
                                MultiStartupItems [i] = eitem;
                            }
                        }
                    }
                }
            }
        }
コード例 #3
0
ファイル: Solution.cs プロジェクト: telebovich/monodevelop
        void SetupNewItem(SolutionItem item, SolutionItem replacedItem)
        {
            ConvertToSolutionFormat(item, false);

            SolutionEntityItem eitem = item as SolutionEntityItem;

            if (eitem != null)
            {
                eitem.NeedsReload = false;
                if (replacedItem == null)
                {
                    // Register the new entry in every solution configuration
                    foreach (SolutionConfiguration conf in Configurations)
                    {
                        conf.AddItem(eitem);
                    }
                }
                else
                {
                    // Reuse the configuration information of the replaced item
                    foreach (SolutionConfiguration conf in Configurations)
                    {
                        conf.ReplaceItem((SolutionEntityItem)replacedItem, eitem);
                    }
                    if (StartupItem == replacedItem)
                    {
                        StartupItem = eitem;
                    }
                    else
                    {
                        int i = MultiStartupItems.IndexOf((SolutionEntityItem)replacedItem);
                        if (i != -1)
                        {
                            MultiStartupItems [i] = eitem;
                        }
                    }
                }
            }
        }