Exemple #1
0
        public bool PlayFileMusic(List <PASection> targets, BKMusicFolder foler)
        {
            if (targets == null)
            {
                return(false);
            }

            DialRule rule = new DialRule();

            rule.Sections = targets;
            rule.BuildDialString();

            int sectionIds;

            if (!int.TryParse(rule.SectionsId, out sectionIds))
            {
                return(false);
            }

            int folderId = 0, filesId = 0;

            rule.GetFileMusicIds(foler, ref folderId, ref filesId);

            PARemoteProc proxy = _system.GetPARpc();

            proxy.StartFileMusic("111", sectionIds, rule.Zones, 1, folderId, filesId);
            return(true);
        }
Exemple #2
0
        public bool GetFileMusicIds(BKMusicFolder folder, ref int folderId, ref int fileId)
        {
            folderId = folder.Id;

            foreach (BKMusicFile file in folder.Files)
            {
                fileId |= file.Id;
            }
            return(true);
        }
Exemple #3
0
        private void GetFolderMusic(PARemoteProc proxy, PASection section, BKMusicFolder folder)
        {
            music_file[] files = proxy.GetMusicFiles(section.Id, folder.Id);
            if (files == null)
            {
                return;
            }

            foreach (music_file file in files)
            {
                BKMusicFile fi = new BKMusicFile(file.music_file_id,
                                                 file.music_file_name);
                folder.AddMusicFile(fi);
            }
        }
Exemple #4
0
        private void GetSectionMusic(PARemoteProc proxy, PASection section)
        {
            music_folder[] folders = proxy.GetMusicFolders(section.Id);
            if (folders == null)
            {
                return;
            }

            foreach (music_folder folder in folders)
            {
                BKMusicFolder fo = new BKMusicFolder(folder.music_folder_id,
                                                     folder.music_folder_name);

                section.AddBKMusic(fo);

                GetFolderMusic(proxy, section, fo);
            }
        }
        private void SetMusicFiles()
        {
            string name = lstFolders.SelectedItem as string;

            if (name == null)
            {
                MusicFolder = null;
                return;
            }

            PASection     section = GetPASection();
            BKMusicFolder folder  = section.GetMusicFolderByName(name);

            if (folder == null)
            {
                MusicFolder = null;
                return;
            }

            if (lstFiles.SelectedItems.Count == 0)
            {
                MusicFolder = folder;
            }
            else
            {
                MusicFolder = new BKMusicFolder(folder.Id, folder.Name);
                foreach (string fileName in lstFiles.SelectedItems)
                {
                    BKMusicFile file = folder.GetMusicFile(fileName);
                    if (file != null)
                    {
                        MusicFolder.AddMusicFile(file);
                    }
                }
            }
        }
        private void lstFolders_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (btnFile.IsChecked != true)
            {
                return;
            }

            string name = lstFolders.SelectedItem as string;

            Debug.Assert(name != null);

            PASection section = GetPASection();

            if (section == null)
            {
                lstFiles.ItemsSource = null;
                return;
            }

            BKMusicFolder folder = section.GetMusicFolderByName(name);

            if (folder == null)
            {
                lstFiles.ItemsSource = null;
                return;
            }

            List <string> files = new List <string>();

            foreach (BKMusicFile file in folder.Files)
            {
                files.Add(file.Name);
            }

            lstFiles.ItemsSource = files;
        }
Exemple #7
0
 public bool AddBKMusic(BKMusicFolder folder)
 {
     _musics.Add(folder);
     return(true);
 }