コード例 #1
0
        public FirstVoiceSetRecordPage(VoiceListItem item)
        {
            InitializeComponent();

            recordFileName = $"{item.Chapter}_{item.Number}.mp3";
            recordPath     = Path.Combine(AppEnvironment.appDataPath, AppEnvironment.authService.AuthenticatedUser.GetUserString());
            recordFilePath = Path.Combine(recordPath, recordFileName);

            FirstVoiceSetRecordText.FontSize = Preferences.Get(AppSettingKeys.TextSizeSetting, 15);

            BindingContext = new FirstVoiceSetRecordViewModel(item);

            timeTimer = new Timer(1000)
            {
                AutoReset = true
            };
            timeTimer.Elapsed += delegate
            {
                RecordCountProgressBar.Progress = secCount++ / 10.0;

                if (secCount > 10)
                {
                    timeTimer.Stop();
                    MainThread.BeginInvokeOnMainThread(() => { recorder.StopRecording(); });
                }
            };

            UpdateButtonStatus();
        }
コード例 #2
0
        private async void CollectionView_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (e.CurrentSelection.Count < 1)
            {
                return;
            }

            var item = previousItem = e.CurrentSelection.FirstOrDefault() as VoiceListItem;

            (sender as CollectionView).SelectedItem = null;

            await Navigation.PushAsync(new VoiceRecordDetailPage(item));
        }
コード例 #3
0
        public VoiceRecordDetailPage(VoiceListItem item)
        {
            InitializeComponent();

            recordFileName = $"{item.Section}_{item.Chapter}_{item.Number}.mp3";
            recordFilePath = Path.Combine(AppEnvironment.appDataPath, AppEnvironment.authService.AuthenticatedUser.GetUserString(), recordFileName);

            RecordTextLabel.FontSize = Preferences.Get(AppSettingKeys.TextSizeSetting, 15);

            BindingContext = new VoiceRecordDetailViewModel(item);

            UpdateButtonStatus();
        }
コード例 #4
0
ファイル: Main.cs プロジェクト: zhangli0092/opennetcf
        /// <summary>
        /// Updates the Listview
        /// </summary>
        private void UpdateList()
        {
            this.listBox21.BeginUpdate();
            this.listBox21.Items.Clear();
            VoiceListItem item;

            foreach (VoiceNote.VoiceNoteRow row in this.voiceNote1._VoiceNote.Rows)
            {
                item = new VoiceListItem(row);
                this.listBox21.Items.Add(new VoiceListItem(row));
            }
            this.listBox21.EndUpdate();
        }
コード例 #5
0
 private void addVoiceListItem(VoiceListItem wowItem)
 {
     lock (ScrollMessagesGridLock)
     {
         ScrollMessagesGrid = ScrollGrid();
         // Leave maximum 100 items in the list.
         while (WowMessageList.Count > 100)
         {
             WowMessageList.RemoveAt(0);
         }
         // Add new item at the bottom.
         WowMessageList.Add(wowItem);
     }
     ProcessVoiceTextMessage(wowItem.VoiceXml);
 }
コード例 #6
0
        public void SetFilter(VoiceListItem item, bool detailFilter = false)
        {
            LastFilters    = GetFilters(item);
            IsDetailFilter = detailFilter;
            var filter     = string.Join(" and ", LastFilters);
            var deviceType = "Socket";

            foreach (var device in CaptureDevices)
            {
                if (device is WinPcapDevice)
                {
                    deviceType = "WinPcap";
                }
                device.Filter = filter;
            }
            OnStatusChanged(null, string.Format("{0} Filters: {1}", deviceType, LastFilters.Count));
        }
コード例 #7
0
        private void CreateItems()
        {
            ListItems = new List <VoiceListItem>();

            for (int i = 0; i < currentChapterItem.Count; ++i)
            {
                var item = new VoiceListItem()
                {
                    Section = currentChapterItem.Section,
                    Chapter = currentChapterItem.Chapter,
                    Index   = currentChapterItem.Range.start + i,
                    Number  = i + 1
                };

                item.VoiceText = AppEnvironment.dataService.voiceTextData[item.Section][item.Index];

                ListItems.Add(item);
            }
        }
コード例 #8
0
        List <string> GetFilters(VoiceListItem item)
        {
            var    filters = new List <string>();
            string f;
            var    defaultItem = Program.MonitorItem;

            if (defaultItem == null)
            {
                filters.Add("ip");
                return(filters);
            }
            // Protocol type.
            if (defaultItem.FilterProtocol != ProtocolType.Unspecified)
            {
                f = string.Format("{0}", defaultItem.FilterProtocol).ToLower();
                filters.Add(f);
            }
            // UDP/TCP Port.
            if (defaultItem.SourcePort > 0)
            {
                f = string.Format("src port {0}", defaultItem.SourcePort);
                filters.Add(f);
            }
            if (defaultItem.DestinationPort > 0)
            {
                f = string.Format("dst port {0}", defaultItem.DestinationPort);
                filters.Add(f);
            }
            // If source address is set and local then...
            if (item.SourceAddress != null && IpAddresses.Contains(item.SourceAddress))
            {
                f = string.Format("src host {0}", item.SourceAddress);
                filters.Add(f);
            }
            // If destination address is set and local then...
            if (item.DestinationAddress != null && IpAddresses.Contains(item.DestinationAddress))
            {
                f = string.Format("dst host {0}", item.DestinationAddress);
                filters.Add(f);
            }
            return(filters);
        }
コード例 #9
0
        public void SetFilter(VoiceListItem item, bool detailFilter = false)
        {
            LastFilters    = GetFilters(item);
            IsDetailFilter = detailFilter;
            var filter     = string.Join(" and ", LastFilters);
            var deviceType = "Socket";

            foreach (var device in CaptureDevices)
            {
                if (device is WinPcapDevice)
                {
                    deviceType = "WinPcap";
                }
                device.Filter = filter;
            }
            BeginInvoke((MethodInvoker) delegate()
            {
                FilterStatusLabel.Text = string.Format("{0} Filters: {1}", deviceType, LastFilters.Count);
            });
        }
コード例 #10
0
        internal async Task UpdateStatus(VoiceListItem item)
        {
            await Task.Delay(100);

            string serverDirPath = AppEnvironment.dataService.ServerUserDataDirPath + "/";

            string serverFilePath = Path.Combine(serverDirPath, $"{item.Section}_{item.Chapter}_{item.Number}.mp3");

            if (FTPService.CheckFileExist(serverFilePath))
            {
                item.IsUploaded      = true;
                item.CompletedText   = AppResources.Successed;
                item.UploadTextColor = Color.Green;
            }
            else
            {
                item.IsUploaded      = false;
                item.CompletedText   = AppResources.NonSuccessed;
                item.UploadTextColor = Color.Red;
            }
        }
コード例 #11
0
        private void CreateItems()
        {
            ListItems = new List <VoiceListItem>();

            for (int i = 0; i < currentChapterItem.Count; ++i)
            {
                var item = new VoiceListItem()
                {
                    Section = currentChapterItem.Section,
                    Chapter = currentChapterItem.Chapter,
                    Index   = currentChapterItem.Range.start + i,
                    Number  = i + 1
                };

                switch (item.Number)
                {
                default:
                case 1:
                case 2:
                case 3:
                    item.VoiceText = AppResources.VoiceFirstSet_VoiceText_1;
                    break;

                case 4:
                case 5:
                case 6:
                    item.VoiceText = AppResources.VoiceFirstSet_VoiceText_2;
                    break;

                case 7:
                case 8:
                case 9:
                    item.VoiceText = AppResources.VoiceFirstSet_VoiceText_3;
                    break;
                }

                ListItems.Add(item);
            }
        }
コード例 #12
0
        public FirstVoiceSetRecordViewModel(VoiceListItem item)
        {
            Item = item;

            Title = $"{Item.Section}-{item.Chapter} No. {Item.Number}";
        }
コード例 #13
0
        public VoiceRecordDetailViewModel(VoiceListItem item)
        {
            Item = item;

            Title = $"{Item.Section}-{item.Chapter} No. {Item.Number}";
        }
コード例 #14
0
ファイル: Global.cs プロジェクト: JocysCom/TextToSpeech
 public static void addVoiceListItem(VoiceListItem item)
 {
     OnEvent(AddingVoiceListItem, item);
     ProcessVoiceTextMessage(item.VoiceXml);
 }