static IEnumerable <TargetFramework> GetPortableTargetFrameworks(PackagingProject project) { return(Runtime.SystemAssemblyService.GetTargetFrameworks().Where(fx => fx.Id.Identifier == ".NETPortable" && !string.IsNullOrEmpty(fx.Id.Profile) && project.TargetRuntime.IsInstalled(fx))); }
public PackagingFeatureWidget(SolutionFolder parentFolder, SolutionItem entry) { this.Build(); this.entry = entry; this.parentFolder = parentFolder; creatingPackProject = entry is PackagingProject; if (!creatingPackProject) { ReadOnlyCollection <PackagingProject> packProjects = parentFolder.ParentSolution.GetAllSolutionItems <PackagingProject> (); newPackProject = new PackagingProject(); string label = GettextCatalog.GetString("Create packages for this project in a new Packaging Project"); AddCreatePackageSection(box, label, newPackProject, packProjects.Count > 0); foreach (PackagingProject project in packProjects) { AddProject(project); } } else { string label = GettextCatalog.GetString("Select packages to add to the new Packaging Project"); AddCreatePackageSection(box, label, (PackagingProject)entry, false); } }
public override void BuildNode(ITreeBuilder treeBuilder, object dataObject, NodeInfo nodeInfo) { PackagingProject project = dataObject as PackagingProject; nodeInfo.Label = project.Name; nodeInfo.Icon = Context.GetIcon("md-packaging-project"); }
public override void BuildNode(ITreeBuilder treeBuilder, object dataObject, ref string label, ref Gdk.Pixbuf icon, ref Gdk.Pixbuf closedIcon) { PackagingProject project = dataObject as PackagingProject; label = project.Name; icon = Context.GetIcon("md-packaging-project"); }
static IEnumerable<TargetFramework> GetPortableTargetFrameworks (PackagingProject project) { return Runtime.SystemAssemblyService.GetTargetFrameworks ().Where (fx => !fx.Hidden && fx.Id.Identifier == ".NETPortable" && !string.IsNullOrEmpty (fx.Id.Profile) && project.TargetRuntime.IsInstalled (fx)); }
internal void Save (PackagingProject project) { var selectedProfiles = pclProfiles .Where (profile => profile.IsEnabled) .Select (profile => profile.Framework.Id); project.UpdateReferenceAssemblyFrameworks (selectedProfiles); }
internal void Save(PackagingProject project) { var selectedProfiles = pclProfiles .Where(profile => profile.IsEnabled) .Select(profile => profile.Framework.Id); project.UpdateReferenceAssemblyFrameworks(selectedProfiles); }
void RegisterCheck(Gtk.CheckButton check, PackagingProject project, Package package) { PackageInfo pi = new PackageInfo(); pi.Check = check; pi.Project = project; pi.Package = package; packages.Add(pi); }
public override void BuildChildNodes(ITreeBuilder builder, object dataObject) { PackagingProject project = dataObject as PackagingProject; foreach (Package p in project.Packages) { builder.AddChild(p); } }
void AddPackageBuilder(Gtk.VBox parent, PackagingProject project, PackageBuilder pb) { Gtk.CheckButton check = new Gtk.CheckButton(pb.DefaultName); check.Show(); parent.PackStart(check, false, false, 0); Package pkg = new Package(pb); pkg.Name = pb.DefaultName; RegisterCheck(check, project, pkg); }
void AddPortableClassLibraryProfiles (PackagingProject project) { var targetFrameworks = GetPortableTargetFrameworks (project).ToList (); targetFrameworks.Sort (CompareFrameworks); var selectedTargetFrameworks = project.GetReferenceAssemblyFrameworks ().ToList (); pclProfiles = targetFrameworks.Select (fx => CreatePortableProfileViewModel (fx, selectedTargetFrameworks)).ToList (); foreach (PortableProfileViewModel profile in pclProfiles) { pclProfilesStore.AppendValues (profile.IsEnabled, profile.ProfileName, profile.GetProfileDescription (), profile); } }
void AddPortableClassLibraryProfiles(PackagingProject project) { var targetFrameworks = GetPortableTargetFrameworks(project).ToList(); targetFrameworks.Sort(CompareFrameworks); var selectedTargetFrameworks = project.GetReferenceAssemblyFrameworks().ToList(); pclProfiles = targetFrameworks.Select(fx => CreatePortableProfileViewModel(fx, selectedTargetFrameworks)).ToList(); foreach (PortableProfileViewModel profile in pclProfiles) { pclProfilesStore.AppendValues(profile.IsEnabled, profile.ProfileName, profile.GetProfileDescription(), profile); } }
public PackagingFeatureWidget (SolutionFolder parentFolder, SolutionItem entry) { this.Build(); this.entry = entry; this.parentFolder = parentFolder; creatingPackProject = entry is PackagingProject; if (!creatingPackProject) { ReadOnlyCollection<PackagingProject> packProjects = parentFolder.ParentSolution.GetAllSolutionItems<PackagingProject> (); newPackProject = new PackagingProject (); string label = GettextCatalog.GetString ("Create packages for this project in a new Packaging Project"); AddCreatePackageSection (box, label, newPackProject, packProjects.Count > 0); foreach (PackagingProject project in packProjects) AddProject (project); } else { string label = GettextCatalog.GetString ("Select packages to add to the new Packaging Project"); AddCreatePackageSection (box, label, (PackagingProject) entry, false); } }
public static IAsyncOperation BuildPackages(PackagingProject project) { return(BuildPackages(project.Packages)); }
internal void Save(PackagingProject project) { UpdateMetadata(); project.UpdatePackageMetadata(metadata); }
internal void Load(PackagingProject project) { metadata = project.GetPackageMetadata(); LoadMetadata(); }
public static IAsyncOperation BuildPackages (PackagingProject project) { return BuildPackages (project.Packages); }
protected override void SaveAsync(PackagingProject project) { project.SaveAsync(new ProgressMonitor()); }
void AddPackageBuilder (Gtk.VBox parent, PackagingProject project, PackageBuilder pb) { Gtk.CheckButton check = new Gtk.CheckButton (pb.DefaultName); check.Show (); parent.PackStart (check, false, false, 0); Package pkg = new Package (pb); pkg.Name = pb.DefaultName; RegisterCheck (check, project, pkg); }
void RegisterCheck (Gtk.CheckButton check, PackagingProject project, Package package) { PackageInfo pi = new PackageInfo (); pi.Check = check; pi.Project = project; pi.Package = package; packages.Add (pi); }
void AddCreatePackageSection (Gtk.VBox vbox, string label, PackagingProject parentProject, bool showCheck) { Gtk.VBox vboxNewPacks; Gtk.Widget hbox; if (showCheck) { Gtk.CheckButton check = new Gtk.CheckButton (label); check.Show (); vbox.PackStart (check, false, false, 0); AddBox (vbox, out hbox, out vboxNewPacks); check.Toggled += delegate { hbox.Visible = check.Active; if (!check.Active) DisableChecks (hbox); }; } else { Gtk.Label lab = new Gtk.Label (label); lab.Show (); vbox.PackStart (lab, false, false, 0); AddBox (vbox, out hbox, out vboxNewPacks); hbox.Show (); } ICollection builders; if (creatingPackProject) builders = DeployService.GetPackageBuilders (); else builders = DeployService.GetSupportedPackageBuilders (entry); foreach (PackageBuilder pb in builders) { if (creatingPackProject) { pb.SetSolutionItem (parentFolder.ParentSolution.RootFolder); // Add all compatible projects foreach (SolutionItem e in parentFolder.ParentSolution.GetAllSolutionItems ()) { if (pb.CanBuild (e)) pb.AddEntry (e); } } else { pb.SetSolutionItem (parentFolder, new SolutionItem [] { entry }); } PackageBuilder[] defp = pb.CreateDefaultBuilders (); if (defp.Length == 0) continue; if (defp.Length == 1) AddPackageBuilder (vboxNewPacks, parentProject, defp[0]); else { Gtk.CheckButton checkBuilder = new Gtk.CheckButton (pb.Description); checkBuilder.Show (); vboxNewPacks.PackStart (checkBuilder, false, false, 0); Gtk.VBox vboxDefPacks; Gtk.Widget thbox; AddBox (vboxNewPacks, out thbox, out vboxDefPacks); checkBuilder.Toggled += delegate { thbox.Visible = checkBuilder.Active; if (!checkBuilder.Active) DisableChecks (thbox); }; foreach (PackageBuilder dp in defp) AddPackageBuilder (vboxDefPacks, parentProject, dp); } } }
internal void Load (PackagingProject project) { AddPortableClassLibraryProfiles (project); }
public override void DeleteItem() { PackagingProject project = CurrentNode.DataItem as PackagingProject; IdeApp.ProjectOperations.RemoveSolutionItem(project); }
public override void OnNodeAdded(object dataObject) { PackagingProject project = dataObject as PackagingProject; project.PackagesChanged += OnConfigurationsChanged; }
void AddProject (PackagingProject project) { string pname = project.Name; SolutionFolder c = project.ParentFolder; while (c != null) { pname = c.Name + " / " + pname; if (c.IsRoot) break; c = c.ParentFolder; } // Get a list of packages that can contain the new project ArrayList list = new ArrayList (); foreach (Package p in project.Packages) { if (p.PackageBuilder.CanBuild (entry)) list.Add (p); } string label; Gtk.VBox vbox; if (list.Count > 0) { label = GettextCatalog.GetString ("Add the new project to the Packaging Project '{0}'", pname); Gtk.CheckButton checkAddNew = new Gtk.CheckButton (label); checkAddNew.Show (); box.PackStart (checkAddNew, false, false, 0); Gtk.Widget hbox; AddBox (box, out hbox, out vbox); checkAddNew.Toggled += delegate { hbox.Visible = checkAddNew.Active; if (!checkAddNew.Active) DisableChecks (hbox); }; // Options for adding the project to existing packages label = GettextCatalog.GetString ("Add the project to existing packages"); Gtk.CheckButton checkAddExist = new Gtk.CheckButton (label); checkAddExist.Show (); vbox.PackStart (checkAddExist, false, false, 0); Gtk.VBox vboxPacks; Gtk.Widget thbox; AddBox (vbox, out thbox, out vboxPacks); checkAddExist.Toggled += delegate { thbox.Visible = checkAddExist.Active; if (!checkAddExist.Active) DisableChecks (thbox); }; foreach (Package p in list) { label = p.Name; if (label != p.PackageBuilder.Description) label += " (" + p.PackageBuilder.Description + ")"; Gtk.CheckButton checkPackage = new Gtk.CheckButton (label); checkPackage.Show (); vboxPacks.PackStart (checkPackage, false, false, 0); RegisterCheck (checkPackage, project, p); } // Options for creating new packages label = GettextCatalog.GetString ("Create new packages for the project"); AddCreatePackageSection (vbox, label, project, true); } else { label = GettextCatalog.GetString ("Add new packages for this project in the packaging project '{0}'", pname); AddCreatePackageSection (box, label, project, true); } }
internal void Load(PackagingProject project) { AddPortableClassLibraryProfiles(project); }
public static Task BuildPackages(PackagingProject project) { return(BuildPackages(project.Packages)); }
public override bool HasChildNodes(ITreeBuilder builder, object dataObject) { PackagingProject project = dataObject as PackagingProject; return(project.Packages.Count > 0); }
void AddCreatePackageSection(Gtk.VBox vbox, string label, PackagingProject parentProject, bool showCheck) { Gtk.VBox vboxNewPacks; Gtk.Widget hbox; if (showCheck) { Gtk.CheckButton check = new Gtk.CheckButton(label); check.Show(); vbox.PackStart(check, false, false, 0); AddBox(vbox, out hbox, out vboxNewPacks); check.Toggled += delegate { hbox.Visible = check.Active; if (!check.Active) { DisableChecks(hbox); } }; } else { Gtk.Label lab = new Gtk.Label(label); lab.Show(); vbox.PackStart(lab, false, false, 0); AddBox(vbox, out hbox, out vboxNewPacks); hbox.Show(); } ICollection builders; if (creatingPackProject) { builders = DeployService.GetPackageBuilders(); } else { builders = DeployService.GetSupportedPackageBuilders(entry); } foreach (PackageBuilder pb in builders) { if (creatingPackProject) { pb.SetSolutionItem(parentFolder.ParentSolution.RootFolder); // Add all compatible projects foreach (SolutionItem e in parentFolder.ParentSolution.GetAllSolutionItems()) { if (pb.CanBuild(e)) { pb.AddEntry(e); } } } else { pb.SetSolutionItem(parentFolder, new SolutionItem [] { entry }); } PackageBuilder[] defp = pb.CreateDefaultBuilders(); if (defp.Length == 0) { continue; } if (defp.Length == 1) { AddPackageBuilder(vboxNewPacks, parentProject, defp[0]); } else { Gtk.CheckButton checkBuilder = new Gtk.CheckButton(pb.Description); checkBuilder.Show(); vboxNewPacks.PackStart(checkBuilder, false, false, 0); Gtk.VBox vboxDefPacks; Gtk.Widget thbox; AddBox(vboxNewPacks, out thbox, out vboxDefPacks); checkBuilder.Toggled += delegate { thbox.Visible = checkBuilder.Active; if (!checkBuilder.Active) { DisableChecks(thbox); } }; foreach (PackageBuilder dp in defp) { AddPackageBuilder(vboxDefPacks, parentProject, dp); } } } }
public override void BuildChildNodes(ITreeBuilder builder, object dataObject) { PackagingProject project = dataObject as PackagingProject; builder.AddChildren(project.Packages); }
void AddProject(PackagingProject project) { string pname = project.Name; SolutionFolder c = project.ParentFolder; while (c != null) { pname = c.Name + " / " + pname; if (c.IsRoot) { break; } c = c.ParentFolder; } // Get a list of packages that can contain the new project ArrayList list = new ArrayList(); foreach (Package p in project.Packages) { if (p.PackageBuilder.CanBuild(entry)) { list.Add(p); } } string label; Gtk.VBox vbox; if (list.Count > 0) { label = GettextCatalog.GetString("Add the new project to the Packaging Project '{0}'", pname); Gtk.CheckButton checkAddNew = new Gtk.CheckButton(label); checkAddNew.Show(); box.PackStart(checkAddNew, false, false, 0); Gtk.Widget hbox; AddBox(box, out hbox, out vbox); checkAddNew.Toggled += delegate { hbox.Visible = checkAddNew.Active; if (!checkAddNew.Active) { DisableChecks(hbox); } }; // Options for adding the project to existing packages label = GettextCatalog.GetString("Add the project to existing packages"); Gtk.CheckButton checkAddExist = new Gtk.CheckButton(label); checkAddExist.Show(); vbox.PackStart(checkAddExist, false, false, 0); Gtk.VBox vboxPacks; Gtk.Widget thbox; AddBox(vbox, out thbox, out vboxPacks); checkAddExist.Toggled += delegate { thbox.Visible = checkAddExist.Active; if (!checkAddExist.Active) { DisableChecks(thbox); } }; foreach (Package p in list) { label = p.Name; if (label != p.PackageBuilder.Description) { label += " (" + p.PackageBuilder.Description + ")"; } Gtk.CheckButton checkPackage = new Gtk.CheckButton(label); checkPackage.Show(); vboxPacks.PackStart(checkPackage, false, false, 0); RegisterCheck(checkPackage, project, p); } // Options for creating new packages label = GettextCatalog.GetString("Create new packages for the project"); AddCreatePackageSection(vbox, label, project, true); } else { label = GettextCatalog.GetString("Add new packages for this project in the packaging project '{0}'", pname); AddCreatePackageSection(box, label, project, true); } }
protected virtual void SaveAsync(PackagingProject project) { IdeApp.ProjectOperations.SaveAsync(project); }
public override void Initialize(OptionsDialog dialog, object dataObject) { packagingProject = dataObject as PackagingProject; project = dataObject as DotNetProject; base.Initialize(dialog, dataObject); }
protected void OnBuild() { PackagingProject project = CurrentNode.DataItem as PackagingProject; DeployOperations.BuildPackages(project); }
public override void Initialize (OptionsDialog dialog, object dataObject) { project = dataObject as PackagingProject; base.Initialize (dialog, dataObject); }
internal void Load (PackagingProject project) { metadata = project.GetPackageMetadata (); LoadMetadata (); }
internal void Save (PackagingProject project) { UpdateMetadata (); project.UpdatePackageMetadata (metadata); }
public override void OnNodeRemoved(object dataObject) { PackagingProject project = dataObject as PackagingProject; project.PackagesChanged -= configsChanged; }
public static Task BuildPackages (PackagingProject project) { return BuildPackages (project.Packages); }