Esempio n. 1
0
        private async Task InitQRCode()
        {
            // this is vaild for 10 minutes
            _uuid      = Guid.NewGuid().ToString();
            _gotQRCode = await QrCodeGenerator.RequestNew_QR_Code(_uuid, ApplicationStateManager.RigID());

            if (_gotQRCode)
            {
                // create qr code
                var(image, ok) = QrCodeImageGenerator.GetQRCodeImage(_uuid);
                if (ok)
                {
                    rect_qrCode.Fill          = image;
                    ScanLabel.Content         = "Scan with official NiceHash mobile application";
                    ScanConfirmButton.Content = "Confirm scan";
                }
                else
                {
                    ScanLabel.Content            = "QR Code image generation failed";
                    ScanConfirmButton.Visibility = Visibility.Collapsed;
                }
            }
            else
            {
                ScanConfirmButton.Visibility = Visibility.Collapsed;
                ScanLabel.Content            = "Unable to retreive QR Code";
                //ScanConfirmButton.Content = "Retry QR code";
            }
        }
Esempio n. 2
0
        private void SetTheme(bool isLight)
        {
            var displayTheme = isLight ? "Light" : "Dark";

            GUISettings.Instance.DisplayTheme = displayTheme;
            ThemeSetterManager.SetTheme(isLight);
            if (_gotQRCode)
            {
                var(image, ok) = QrCodeImageGenerator.GetQRCodeImage(_uuid, isLight);
                if (ok)
                {
                    rect_qrCode.Fill = image;
                }
            }
        }
Esempio n. 3
0
        private async Task ProcessQRCode()
        {
            stopWatch = new Stopwatch();
            stopWatch.Start();

            var rigID = ApplicationStateManager.RigID();
            var res   = await QrCodeGenerator.RequestNew_QR_Code(_uuid, rigID);

            if (!res)
            {
                lbl_qr_status.Visibility = Visibility.Visible;
                lbl_qr_status.Content    = "Unable to retreive QR Code";
                return;
            }

            var(image, ok) = QrCodeImageGenerator.GetQRCodeImage(_uuid, GUISettings.Instance.DisplayTheme == "Light");

            if (!ok)
            {
                lbl_qr_status.Visibility = Visibility.Visible;
                lbl_qr_status.Content    = "QR Code image generation failed";
                return;
            }

            rect_qrCode.Fill = image;
            while (true)
            {
                await Task.Delay(5000);

                if (stopWatch.ElapsedMilliseconds >= (1000 * 60 * 10))
                {
                    lbl_qr_status.Visibility = Visibility.Visible;
                    btn_gen_qr.Visibility    = Visibility.Visible;
                    lbl_qr_status.Content    = Translations.Tr("QR Code timeout. Please generate new one.");
                    return;
                }
            }
        }