Ejemplo n.º 1
0
    /// <summary>
    /// AlbumMangaerを生成する。
    /// </summary>
    /// <param name="database">DB情報</param>
    /// <param name="artwork">アートワーク</param>
    public AlbumManager(Database database, ArtworkManager artwork)
    {
        this._database = database ?? throw new InvalidOperationException();

        this.Albums  = new ConcurrentObservableList <AlbumInfo>();
        this.Artwork = artwork;

        BindingOperations.EnableCollectionSynchronization(this.Albums, new object());
    }
Ejemplo n.º 2
0
 public ClipboardObject(Guid id, ClipboardTrigger mainTrigger, ClipboardObject?linked)
 {
     Id              = id;
     MainTrigger     = mainTrigger;
     Linked          = linked;
     Implementations = new ConcurrentObservableList <ClipboardImplementation>();
     Implementations.CollectionChanged += CheckIfImplementationShouldBeInThis;
     Properties = new ConcurrentObservableList <ClipboardObjectProperty>();
     Triggers   = new ConcurrentObservableList <ClipboardTrigger>
     {
         MainTrigger
     };
 }
Ejemplo n.º 3
0
    public void ConcurrentObservableListSerializationTest()
    {
        // ARRANGE
        // =======

        // A random generator (we'll test random values to avoid hard-codings)
        var r = new Random();

        // The data contract serializer we'll use to serialize and deserialize
        var dcs = new DataContractSerializer(typeof(ConcurrentObservableList <DummyDataContract>));

        // The dummy data
        var ddc1 = new DummyDataContract {
            RandomValue = r.Next()
        };
        var ddc2 = new DummyDataContract {
            RandomValue = r.Next()
        };
        var ddc3 = new DummyDataContract {
            RandomValue = r.Next()
        };
        var ddc4 = new DummyDataContract {
            RandomValue = r.Next()
        };

        // The original observable list
        using (var l1 = new ConcurrentObservableList <DummyDataContract>
        {
            ddc1,
            ddc2,
            ddc3,
            ddc4,
        })
        {
            // The deserialized list
            ConcurrentObservableList <DummyDataContract> l2;

            // The serialization content
            string content;

            // ACT
            // ===
            using (var ms = new MemoryStream())
            {
                dcs.WriteObject(
                    ms,
                    l1);

                _ = ms.Seek(
                    0,
                    SeekOrigin.Begin);

                using (var textReader = new StreamReader(
                           ms,
                           Encoding.UTF8,
                           false,
                           32768,
                           true))
                {
                    content = textReader.ReadToEnd();
                }

                _ = ms.Seek(
                    0,
                    SeekOrigin.Begin);

                l2 = dcs.ReadObject(ms) as ConcurrentObservableList <DummyDataContract>;
            }

            try
            {
                // ASSERT
                // ======

                // Serialization content is OK
                Assert.False(string.IsNullOrWhiteSpace(content));
                Assert.Equal(
                    $@"<ConcurrentObservableDDCList xmlns=""http://ns.ixiancorp.com/IX/IX.Observable"" xmlns:i=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:a=""http://schemas.datacontract.org/2004/07/IX.UnitTests.Observable""><Item><a:RandomValue>{ddc1.RandomValue}</a:RandomValue></Item><Item><a:RandomValue>{ddc2.RandomValue}</a:RandomValue></Item><Item><a:RandomValue>{ddc3.RandomValue}</a:RandomValue></Item><Item><a:RandomValue>{ddc4.RandomValue}</a:RandomValue></Item></ConcurrentObservableDDCList>",
                    content);

                // Deserialized object is OK
                Assert.NotNull(l2);
                Assert.Equal(
                    l1.Count,
                    l2.Count);
                Assert.True(l1.SequenceEquals(l2));
            }
            finally
            {
                l2?.Dispose();
            }
        }
    }
Ejemplo n.º 4
0
        private ConcurrentObservableList <string> GetAllNetVersionsInstalled()
        {
            string path = @"SOFTWARE\Microsoft\NET Framework Setup\NDP";
            ConcurrentObservableList <string> display_framwork_name = new ConcurrentObservableList <string>();
            string temp_name = string.Empty;

            using (RegistryKey installed_versions = Registry.LocalMachine.OpenSubKey(path))
            {
                string[] version_names = installed_versions.GetSubKeyNames();
                for (int i = 1; i <= version_names.Length - 1; i++)
                {
                    //string temp_name = "Microsoft .NET Framework " + version_names[i].ToString() + "  SP" + installed_versions.OpenSubKey(version_names[i]).GetValue("SP");
                    temp_name = version_names[i].ToString();
                    display_framwork_name.Add(temp_name);
                }
            }

            using (RegistryKey ndpKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32)
                                        .OpenSubKey("SOFTWARE\\Microsoft\\NET Framework Setup\\NDP\\v4\\Full\\"))
            {
                int releaseKey = Convert.ToInt32(ndpKey.GetValue("Release"));

                if (releaseKey >= 461808)
                {
                    temp_name = "v4.7.2";
                    display_framwork_name.Add(temp_name);
                }
                if (releaseKey >= 461308)
                {
                    temp_name = "v4.7.1";
                    display_framwork_name.Add(temp_name);
                }
                if (releaseKey >= 460798)
                {
                    temp_name = "v4.7";
                    display_framwork_name.Add(temp_name);
                }
                if (releaseKey >= 394802)
                {
                    temp_name = "v4.6.2";
                    display_framwork_name.Add(temp_name);
                }
                if (releaseKey >= 394254)
                {
                    temp_name = "v4.6.1";
                    display_framwork_name.Add(temp_name);
                }
                if (releaseKey >= 393295)
                {
                    temp_name = "v4.6";
                    display_framwork_name.Add(temp_name);
                }
                if ((releaseKey >= 379893))
                {
                    temp_name = "v4.5.2";
                    display_framwork_name.Add(temp_name);
                }
                if ((releaseKey >= 378675))
                {
                    temp_name = "v4.5.1";
                    display_framwork_name.Add(temp_name);
                }
                if ((releaseKey >= 378389))
                {
                    temp_name = "v4.5";
                    display_framwork_name.Add(temp_name);
                }
            }

            display_framwork_name.Sort((x1, x2) => x1.CompareTo(x2));

            return(display_framwork_name);
        }
 public TextClipboardImplementation(ClipboardObject clipboardObject, ClipboardImplementationFactory factory, TextEquatableFormat source) : base(source.Format, factory, clipboardObject)
 {
     Source        = source.Text;
     LinkedContent = new ConcurrentObservableList <ILinkedTextContent>();
     Task.Run(() => DiContainer.SP !.GetRequiredService <LinkedTextContentFactoriesManager>().ProvideAsync(this));
 }
 public TextClipboardImplementation(ClipboardFormat format, ClipboardImplementationFactory factory, ClipboardImplementation parent, string source) : base(format, factory, parent)
 {
     Source        = source;
     LinkedContent = null;
 }