SetMessage() public method

Sets the dialog's message content.
public SetMessage ( string message ) : void
message string The message to be set.
return void
コード例 #1
0
        public string CreateXmlDb(List<MagicCard> listOfCards, ProgressDialogController dialogController)
        {
            var curCard = 0;
            var totalCards = listOfCards.Count;

            foreach (var distinctSet in listOfCards.DistinctBy(o => o.Set))
            {
                var enumerable = listOfCards.Where(op => op.Set == distinctSet.Set && op.PathOfCardImage.Contains("original")).DistinctBy(o => o.Name);
                foreach (var distinctCard in enumerable)
                {
                    var cardElement = _xmlfile.CreateElement("card");
                    AddChildElementAndValue(cardElement, _util.GetVariableName(() => distinctCard.Name), distinctCard.Name);
                    AddChildElementAndValue(cardElement, _util.GetVariableName(() => distinctCard.Set), distinctCard.Set);
                    AddChildElementAndValue(cardElement, _util.GetVariableName(() => distinctCard.PathOfCardImage), distinctCard.PathOfCardImage);

                    var phashesElement = _xmlfile.CreateElement("phashes");
                    foreach (var magicCard in listOfCards.Where(o => o.Name == distinctCard.Name && o.Set == distinctSet.Set))
                    {
                        foreach (var phash in magicCard.PHashes)
                        {
                            AddChildElementAndValue(phashesElement, "phash", phash.ToString());
                        }
                    }
                    cardElement.AppendChild(phashesElement);
                    _rootNode.AppendChild(cardElement);
                    curCard++;
                    dialogController.SetProgress((double)curCard / totalCards);
                    dialogController.SetMessage("Creating a Simple Database of all those pHashes: " + curCard + "/" + totalCards);
                }
            }

            SaveXmlFile();
            return Path.GetFullPath(XmlDbPath);
        }
コード例 #2
0
ファイル: FlexParser.cs プロジェクト: QANTau/QPAS
        public void Parse(string flexXML, ProgressDialogController progress)
        {
            progress.SetMessage("Parsing Flex File");
            var context = new DBContext();
            context.Configuration.AutoDetectChangesEnabled = false;

            bool skipLastDateCheck = !Properties.Settings.Default.preventDuplicateImports;

            XDocument xml = XDocument.Parse(flexXML);

            ParseAccounts(xml, context);

            IEnumerable<XElement> flexStatements = xml.Descendants("FlexStatement");

            foreach(XElement flexStatement in flexStatements)
            {
                ParseStatement(flexStatement, progress, context, skipLastDateCheck);
            }

            context.Configuration.AutoDetectChangesEnabled = true;
            context.Dispose();
        }
コード例 #3
0
ファイル: MainWindow.xaml.cs プロジェクト: KennyJLam/AoA
        public async Task<bool> LoadLastUpdateAndFill(ProgressDialogController controller)
        {
            DateTime start = DateTime.Now;
            InitializationController init = new InitializationController();
            
            await Task.Delay(2000);
            init.OnLoadingUpdate += delegate(object sender, string mess) { controller.SetMessage(mess); };
            if ( init.LoadData())
            {
                this.Dispatcher.Invoke(() =>
                {
                    this.Title += " | Game version = " + init.Version;
                });

                List<BuildingViewModel> usmodels = new List<BuildingViewModel>();
                List<BuildingViewModel> carmodels = new List<BuildingViewModel>();
                List<BuildingViewModel> chimmodels = new List<BuildingViewModel>();
                //Fill the forms
                //US
                foreach (AoABuilding b in init.UsBuildings)
                {
                    BuildingViewModel buioding = new BuildingViewModel(b);
                    usmodels.Add(buioding);
                }
                
                this.Dispatcher.Invoke(() =>
                {
                    FactionBuildingListView Usview = new FactionBuildingListView(new FactionViewModel(usmodels));
                    UsGrid.Children.Clear();
                    UsGrid.Children.Add(Usview);
                });
                init.UsBuildings.Clear();
            
                

                //Cartel
                foreach (AoABuilding b in init.CartelBuildings)
                {
                    BuildingViewModel buioding = new BuildingViewModel(b);
                    carmodels.Add(buioding);
                }
                
                this.Dispatcher.Invoke(() =>
                {
                    FactionBuildingListView cartelview = new FactionBuildingListView(new FactionViewModel(carmodels));
                    CartelGrid.Children.Clear();
                    CartelGrid.Children.Add(cartelview);
                });
                init.CartelBuildings.Clear();
                    
                

                //Chimera
                foreach (AoABuilding b in init.ChimeraBuildings)
                {
                    BuildingViewModel buioding = new BuildingViewModel(b);
                    chimmodels.Add(buioding);
                }
                
                this.Dispatcher.Invoke(() =>
                {
                    FactionBuildingListView chimview = new FactionBuildingListView(new FactionViewModel(chimmodels));
                    ChimeraGrid.Children.Clear();
                    ChimeraGrid.Children.Add(chimview);
                });

                init.ChimeraBuildings.Clear();
                controller.SetMessage("finished, time taken : " + (DateTime.Now - start).TotalSeconds);
                await Task.Delay(2000);
                
                return true;
            }
            else
            {
                init.Clear(); Console.Out.WriteLine(DateTime.Now.ToShortDateString() + " : loading last update failed."); 
                controller.SetMessage("loading failed...");
                await Task.Delay(2000); 
                return false;
            }
        }
コード例 #4
0
 public void ComputePHashes(string selectedPath, ProgressDialogController dialogController)
 {
     ListOfMagicCards.Clear();
     //read images in resources
     Util.TraverseTree(@"H:\Compy Sci\MTG-Scanner\MTG-Scanner\Resources\Card Images", ListOfMagicCards);
     //Util.TraverseTree(selectedPath, ListOfMagicCards);
     //Util.TraverseTree(selectedPath, ListOfMagicCards);
     //compute hashes
     var curCard = 0;
     var totalCards = ListOfMagicCards.Count;
     Parallel.ForEach(ListOfMagicCards, card =>
     {
         var hash = Util.ComputePHash(card);
         card.PHashes.Add(hash);
         curCard++;
         dialogController.SetProgress((double)curCard / totalCards);
         dialogController.SetMessage("pHashing real hard! Finished: " + curCard + "/" + totalCards);
     });
 }
コード例 #5
0
        private void DoExport(ProgressDialogController dialogController, List<BulkExportModel> timersToExport)
        {
            for (var i = 0; i < timersToExport.Count; i++)
            {
                var exportModel = timersToExport[i];

                if (i == 0)
                {
                    dialogController.SetMessage($"Exporting Timer {exportModel.JiraRef} For {exportModel.ExportDate.Date.ToString("ddd, dd MMM")}");
                }
                else
                {
                    dialogController.SetMessage($"Exporting Timer {exportModel.JiraRef} For {exportModel.ExportDate.Date.ToString("ddd, dd MMM")}\nDone {i} Of {timersToExport.Count}");
                }

                try
                {
                    var jiraRef = exportModel.JiraRef;
                    var date = exportModel.ExportDate;
                    var toExport = exportModel.ToExport;
                    var strategy = exportModel.WorkLogStrategy;
                    var comment = exportModel.Comment;
                    var remaining = exportModel.Remaining;
                    var standardComment = exportModel.StandardComment;
                    modelHelpers.Gallifrey.JiraConnection.LogTime(jiraRef, date, toExport, strategy, standardComment, comment, remaining);
                    modelHelpers.Gallifrey.JiraTimerCollection.AddJiraExportedTime(exportModel.Timer.UniqueId, exportModel.ToExportHours ?? 0, exportModel.ToExportMinutes ?? 0);
                }
                catch (WorkLogException ex)
                {
                    throw new BulkExportException($"Error Logging Work To {exportModel.JiraRef}\n\nError Message From Jira: { ex.InnerException.Message }");
                }
                catch (CommentException)
                {
                    throw new BulkExportException($"The Comment Was Not Added To Jira {exportModel.JiraRef}");
                }
            }
        }
コード例 #6
0
        private List<BulkExportModel> GetTimers(ProgressDialogController dialogController, List<JiraTimer> timers)
        {
            var timersToShow = new List<BulkExportModel>();
            var issuesRetrieved = new List<Issue>();
            var timersToGet = timers.Where(x => !x.LocalTimer && !x.IsRunning).ToList();

            for (var i = 0; i < timersToGet.Count; i++)
            {
                var timerToShow = timersToGet[i];

                var requireRefresh = !timerToShow.LastJiraTimeCheck.HasValue || timerToShow.LastJiraTimeCheck < DateTime.UtcNow.AddMinutes(-15);
                var model = new BulkExportModel(timerToShow, modelHelpers.Gallifrey.Settings.ExportSettings);
                var jiraIssue = issuesRetrieved.FirstOrDefault(x => x.key == timerToShow.JiraReference);

                if (i == 0)
                {
                    dialogController.SetMessage($"Downloading Jira Work Logs For {timerToShow.JiraReference} To Ensure Accurate Export");
                }
                else
                {
                    dialogController.SetMessage($"Downloading Jira Work Logs For {timerToShow.JiraReference} To Ensure Accurate Export\nDone {i} Of {timersToGet.Count}");
                }

                if (jiraIssue == null)
                {
                    try
                    {
                        jiraIssue = modelHelpers.Gallifrey.JiraConnection.GetJiraIssue(timerToShow.JiraReference, requireRefresh);
                        issuesRetrieved.Add(jiraIssue);
                    }
                    catch (Exception)
                    {
                        throw new BulkExportException($"Unable To Locate Jira {timerToShow.JiraReference}!\nCannot Export Time\nPlease Verify/Correct Jira Reference");
                    }
                }

                if (requireRefresh)
                {
                    modelHelpers.Gallifrey.JiraTimerCollection.RefreshFromJira(timerToShow.UniqueId, jiraIssue, modelHelpers.Gallifrey.JiraConnection.CurrentUser);
                    timerToShow = modelHelpers.Gallifrey.JiraTimerCollection.GetTimer(timerToShow.UniqueId);
                }

                if (!timerToShow.FullyExported)
                {
                    model.UpdateTimer(timerToShow, jiraIssue);
                    timersToShow.Add(model);
                }
            }

            return timersToShow;
        }
コード例 #7
0
        private static async Task WaitForCancel(ProgressDialogController dialog, string message)
        {
            dialog.SetMessage("Failed: " + message);
            dialog.SetCancelable(true);

            while (!dialog.IsCanceled)
                await Task.Delay(10);

            await dialog.CloseAsync();
        }
コード例 #8
0
        private async void OnFlyoutFirstOpen( )
        {
            if ( MainWindow.Client.IsLoggedIn ) return;

            controller = await window.ShowProgressAsync( "Signing in.", "Signing into opensubtitles.org." );
            controller.SetIndeterminate( );
            LogInOutput output = await SignInClient( );

            if ( output.LogInSuccesful && MainWindow.Client.IsLoggedIn )
            {
                controller.SetTitle( "Downloading subtitle languages." );
                controller.SetMessage( "Downloading the available subtitle languages from opensubtitles.org." );
                this.languages = await GetSubtitleLanguages( );
                this.LanguageList.ItemsSource = this.languages;

                CollectionView languagesView = ( CollectionView )CollectionViewSource.GetDefaultView( LanguageList.ItemsSource );
                languagesView.SortDescriptions.Add( new SortDescription( "LanguageName", ListSortDirection.Ascending ) );
            }
            else
                await window.ShowMessageAsync( "Signing in failed", $"Unable to sign in to opensubtitles.org. Please try again later. (Status: {output.Status}, {output.StatusStringWithoutCode})" );

            await controller.CloseAsync( );

            OnFlyoutOpen( );
        }
コード例 #9
0
ファイル: Login.xaml.cs プロジェクト: ahageali/lclient
 private async Task ProgressFailed(ProgressDialogController controller, String reason)
 {
     controller.SetMessage("Failure to login: " + reason);
     await Task.Delay(1500);
     await controller.CloseAsync();
 }
コード例 #10
0
ファイル: Login.xaml.cs プロジェクト: ahageali/lclient
 private async Task LoginRTMP(ProgressDialogController controller, HTTPLoginResult res)
 {
     controller.SetMessage("Contacting RTMP Server");
     Supporting.LRtmp rtmpClient = new Supporting.LRtmp();
     await rtmpClient.ConnectAsync();
     com.riotgames.platform.login.AuthenticationCredentials rtmpInfo = new com.riotgames.platform.login.AuthenticationCredentials()
     {
         operatingSystem = "Windows 8",
         username = txtUser.Text,
         domain = "lolclient.lol.riotgames.com",
         clientVersion = "4.17.14_09_22_18_55", //todo: don't hardcode this
         locale = "en_US",
         password = txtPass.Password,
         macAddress = ""
     };
     rtmpInfo.authToken = await Task.Factory.StartNew(() => Newtonsoft.Json.JsonConvert.SerializeObject(new com.riotgames.platform.login.AuthToken
     {
         account_id = res.lqt.account_id,
         account_name = res.lqt.account_name,
         fingerprint = res.lqt.fingerprint,
         other = res.lqt.other,
         resources = res.lqt.resources,
         signature = res.lqt.signature,
         timestamp = res.lqt.timestamp,
         uuid = res.lqt.uuid
     }));
     if (await rtmpClient.LoginAsync(rtmpInfo))
     {
         com.riotgames.platform.clientfacade.domain.LoginDataPacket data = await rtmpClient.GetLoginDataPacketAsync();
         MainWindow mainWindow = new MainWindow(data, rtmpClient);
         mainWindow.Show();
         rtmpClient.PerformHeartBeatLoop();
         this.Close();
         return;
     }
     else
     {
         await ProgressFailed(controller, "Rejected from RTMPS side(?)");
     }
 }
コード例 #11
0
 public void SetMessage(string message)
 {
     _controller.SetMessage(message);
 }