public UnitySolution()
		{
			Singleton = this;
			var config = new UnitySolutionConfiguration {Id = "Unity Configuration"};
			Configurations.Add (config);
			DefaultConfiguration = config;
		}
        public UnitySolution()
        {
            Singleton = this;
            var config = new UnitySolutionConfiguration {
                Id = "Unity Configuration"
            };

            Configurations.Add(config);
            DefaultConfiguration = config;
        }
		public static void Initialize()
		{
			UnitySolution = new UnitySolution { Name = "UnitySolution" };


			UnityProjectStateChanged += (sender, e) =>
			{
				SolutionUpdater.Update(UnitySolution, e.State);

				if(!IdeApp.Workspace.Items.Contains(UnitySolution))
					IdeApp.Workspace.Items.Insert(0, UnitySolution);
			};
		}
Esempio n. 4
0
        public static void Initialize()
        {
            UnitySolution = new UnitySolution {
                Name = "UnitySolution"
            };


            UnityProjectStateChanged += (sender, e) =>
            {
                SolutionUpdater.Update(UnitySolution, e.State);

                if (!IdeApp.Workspace.Items.Contains(UnitySolution))
                {
                    IdeApp.Workspace.Items.Insert(0, UnitySolution);
                }
            };
        }
		public static void Update (UnitySolution s, UnityProjectState update)
		{
			var existingProjects = s.GetAllProjects ();

			var toRemoves = existingProjects.Where (p => update.Islands.All(p2 => p.Name != p2.Name)).ToArray ();
			foreach (var toRemove in toRemoves)
				s.RootFolder.Items.Remove (toRemove);

			foreach (var projectUpdate in update.Islands.Where(i => i.Files.Count > 0))
			{
				var existing = existingProjects.OfType<DotNetAssemblyProject>().SingleOrDefault (p => p.Name == projectUpdate.Name);
				if (existing == null)
					existing = CreateMonoDevelopProjectFromProjectUpdate (s, projectUpdate);

				ProjectUpdater.Update (existing, projectUpdate);
			}

			s.BaseDirectory = update.BaseDirectory;
		}
		static DotNetAssemblyProject CreateMonoDevelopProjectFromProjectUpdate (UnitySolution solution, MonoIsland projectUpdate)
		{
			var p = new DotNetAssemblyProject (projectUpdate.Language);

			// FIXME
			switch (projectUpdate.Language)
			{
				default: 
					var dotNetProjectConfig = (DotNetProjectConfiguration)p.AddNewConfiguration ("Debug");
					dotNetProjectConfig.CompilationParameters = new CSharpCompilerParameters();
					p.DefaultConfiguration = dotNetProjectConfig;
					break;
			}
		
			var rootFolder = solution.RootFolder;
			rootFolder.AddItem (p);
			solution.DefaultConfiguration.AddItem (p).Build = true;
			return p;
		}
Esempio n. 7
0
        static DotNetAssemblyProject CreateMonoDevelopProjectFromProjectUpdate(UnitySolution solution, MonoIsland projectUpdate)
        {
            var p = new DotNetAssemblyProject(projectUpdate.Language);

            // FIXME
            switch (projectUpdate.Language)
            {
            default:
                var dotNetProjectConfig = (DotNetProjectConfiguration)p.AddNewConfiguration("Debug");
                dotNetProjectConfig.CompilationParameters = new CSharpCompilerParameters();
                p.DefaultConfiguration = dotNetProjectConfig;
                break;
            }

            var rootFolder = solution.RootFolder;

            rootFolder.AddItem(p);
            solution.DefaultConfiguration.AddItem(p).Build = true;
            return(p);
        }
Esempio n. 8
0
        public static void Update(UnitySolution s, UnityProjectState update)
        {
            var existingProjects = s.GetAllProjects();

            var toRemoves = existingProjects.Where(p => update.Islands.All(p2 => p.Name != p2.Name)).ToArray();

            foreach (var toRemove in toRemoves)
            {
                s.RootFolder.Items.Remove(toRemove);
            }

            foreach (var projectUpdate in update.Islands.Where(i => i.Files.Count > 0))
            {
                var existing = existingProjects.OfType <DotNetAssemblyProject>().SingleOrDefault(p => p.Name == projectUpdate.Name);
                if (existing == null)
                {
                    existing = CreateMonoDevelopProjectFromProjectUpdate(s, projectUpdate);
                }

                ProjectUpdater.Update(existing, projectUpdate);
            }

            s.BaseDirectory = update.BaseDirectory;
        }
		public void TestSetup()
		{
			_solution = new UnitySolution ();
			_update = new UnityProjectState ();
		}