コード例 #1
0
ファイル: PluginMain.cs プロジェクト: littlesome/LuaDevelop
        void CloseProject(bool internalClosing)
        {
            Project project = Tree.Projects.Count > 0 ? Tree.Projects[0] : null; // TODO we need a main project/solution

            if (project == null)
            {
                return;                  // already closed
            }
            listenToPathChange = false;

            // save project prefs
            ProjectPreferences prefs = Settings.GetPrefs(project);

            prefs.ExpandedPaths = Tree.ExpandedPaths;

            if (!PluginBase.MainForm.ClosingEntirely)
            {
                SaveProjectSession();
            }

            activeProject = null;
            if (projectResources != null)
            {
                projectResources.Close();
                projectResources = null;
            }

            if (!internalClosing)
            {
                pluginUI.SetProject(null);
                Settings.LastProject   = "";
                menus.DisabledForBuild = true;

                PluginBase.CurrentSolution = null;
                PluginBase.CurrentProject  = null;
                PluginBase.CurrentSDK      = null;
                PluginBase.MainForm.RefreshUI();

                BroadcastProjectInfo(null);
            }
            TabColors.UpdateTabColors(Settings);
        }