Beispiel #1
0
        void RefreshScreen()
        {
            IImageCreator ic = DependencyService.Get <IImageCreator>();
            Task <Stream> t  = ic.CreateAsync(memoryBuffer, (int)viewWidth, (int)viewHeight);

            this.imageHost.Source = ImageSource.FromStream(() => t.Result);
        }
Beispiel #2
0
        private bool SetImageSize(double width, double height)
        {
            // Get the full resolution scale factor
            IImageCreator ic = DependencyService.Get <IImageCreator>();

            width  *= ic.ScaleFactor;
            height *= ic.ScaleFactor;

            if (viewWidth != width || viewHeight != height || memoryBuffer == null)
            {
                viewWidth  = width;
                viewHeight = height;

                memoryBuffer = new int[(int)(viewWidth * viewHeight)];

                if (imageHost != null)
                {
                    imageHost.Source        = null;
                    imageHost.WidthRequest  = viewWidth;
                    imageHost.HeightRequest = viewHeight;
                    return(true);
                }
            }
            return(false);
        }
Beispiel #3
0
        public void MakeCreator()
        {
            reader = A.Fake <ITextReader>();
            var words = new List <string> {
                "Привет", "Земля", "и", "Земля"
            };

            A.CallTo(() => reader.ReadWords(null))
            .WithAnyArguments()
            .Returns(words);

            wordProcessor = A.Fake <IWordProcessor>();
            var wordsWithCounts = new List <WordWithCount>
            {
                new WordWithCount("земля", 2),
                new WordWithCount("привет", 1)
            };

            A.CallTo(() => wordProcessor.ProcessWords(words))
            .WithAnyArguments()
            .Returns(wordsWithCounts);

            var builder = new ContainerBuilder();

            builder.RegisterInstance(reader).As <ITextReader>();
            builder.RegisterInstance(wordProcessor).As <IWordProcessor>();
            var container = GetContainer(builder);

            imageCreator = container.Resolve <IImageCreator>();
        }
        private void TakeScreenshot()
        {
            if (_engine.GraphState == GraphState.Reset)
            {
                return;
            }

            IImageCreator imageCreator = _imageCreaterFactory.GetNew();
            var           goodToGo     = false;

            try
            {
                _engine.GetCurrentImage(imageCreator);
                goodToGo = imageCreator.Created;
            }
            catch (Exception e)
            {
                TraceSink.GetTraceSink().TraceError(string.Format("Error creating a screenshot: {0}", e));
            }

            if (goodToGo)
            {
                Task.Factory.StartNew(SaveScreenshot, imageCreator).ContinueWith(prevTask =>
                {
                    var disposable = imageCreator as IDisposable;
                    if (disposable != null)
                    {
                        disposable.Dispose();
                    }
                });
            }
        }
        public async Task <WeatherResponse> GetWeatherResponse(string cityName)
        {
            requestJsonService  = new RequestJsonService();
            requestImageService = new RequestImageService();
            imageCreator        = new ImageCreator();

            var requestUrl = string.Format(queryEndpoint, cityName, appId);
            var json       = await requestJsonService.RequestJsonAsync(requestUrl).ConfigureAwait(false);

            if (string.IsNullOrEmpty(json))
            {
                return(new WeatherResponse());
            }
            var weather = JsonConvert.DeserializeObject <WeatherResponse>(json);

            var requestIconUrl    = string.Format(queryIconEndpoint, weather.Weather.First().Icon);
            var responseByteArray = await requestImageService.RequestByteArrayAsyc(requestIconUrl).ConfigureAwait(false);

            if (responseByteArray != null)
            {
                var bitmapImage = imageCreator.CreteBitmapImage(responseByteArray);
                weather.ImageDownloaded = bitmapImage;
            }

            return(weather);
        }
Beispiel #6
0
 public ImageController(IImageCreator imageCreator,
                        ILanguageReader languageReader,
                        IImageRemover imageRemover,
                        ILogger <ImageController> logger)
 {
     this.imageCreator   = imageCreator;
     this.logger         = logger;
     this.imageRemover   = imageRemover;
     this.languageReader = languageReader;
 }
        public void GetCurrentImage(IImageCreator imageCreator)
        {
            if (_filterGraph != null)
            {
                GraphState currentState = GraphState;

                IntPtr           dibFull = IntPtr.Zero;
                IntPtr           dibDataOnly;
                BITMAPINFOHEADER header;
                try
                {
                    if (_filterGraph.Renderer is VideoRenderer)
                    {
                        if (currentState != GraphState.Paused)
                        {
                            PauseGraph();
                        }
                    }

                    if (_filterGraph.Renderer.GetCurrentImage(out header, out dibFull, out dibDataOnly))
                    {
                        imageCreator.CreateImage(ref header, dibDataOnly);
                    }
                }
                finally
                {
                    Marshal.FreeCoTaskMem(dibFull);
                    if (GraphState != currentState)
                    {
                        switch (currentState)
                        {
                        case GraphState.Running:
                            ResumeGraph();
                            break;

                        case GraphState.Stopped:
                            StopGraph();
                            break;
                        }
                    }
                }
            }
        }
        private void SaveScreenshot(object state)
        {
            IImageCreator imageCreator = state as IImageCreator;

            if (imageCreator == null)
            {
                return;
            }

            try
            {
                lock (_screenshotsSyncRoot)
                {
                    imageCreator.Save(GetNewScreenshotName());
                }
            }
            catch (Exception e)
            {
                TraceSink.GetTraceSink().TraceError(string.Format("Error saving a screenshot: {0}", e));
            }
        }
Beispiel #9
0
        static void Main()
        {
            settings = new Settings();
            settings.Load();
            isp = new AbloadService(settings.Cookies);

            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            using (ProcessIcon pi = new ProcessIcon(settings, isp))
            {
                kcm      = new KeyControlManager();
                selector = new Windows10RegionSelector(kcm.GlobalHook);
                ic       = new NQuantImageCreator();

                kcm.RegionShotStart = selector.Start;
                kcm.AbortRegionShot = selector.Abort;

                selector.RegionFinished += new EventHandler <RegionSelector.Region>(
                    (sender, region) =>
                {
                    Stream image = ic.CreateFromScreenRegion(region);
                    isp.Upload(image);
                }
                    );

                isp.UploadFinished += new EventHandler <UploadResult>(
                    (sender, result) =>
                {
                    Clipboard.SetText(result.ImageUrl);
                    pi.NotifyUser(Enum.GetName(typeof(UploadResult.UploadStatus), result.Status), result.ImageUrl, result.ImageUrl);
                }
                    );

                Application.Run();
            }
        }
 public void GetCurrentImage(IImageCreator imageCreator)
 {
     _mediaControl.GetCurrentImage(imageCreator);
 }
Beispiel #11
0
 public static void Register(IImageCreator creator)
 {
     _creator = creator;
 }
Beispiel #12
0
 static ImageFactory()
 {
     _creator = J2kSetup.GetDefaultPlatformInstance <IImageCreator>();
 }
Beispiel #13
0
 public PhotoUploaderLogic(IImageCreator imageCreator, IImageServices imageServices, IImageSaverService imageSaverService)
 {
     _imageCreator      = imageCreator;
     _imageServices     = imageServices;
     _imageSaverService = imageSaverService;
 }
 /// <summary>
 /// Gets a snapshot of the current image that is being shown.
 /// It is recommended to wrap the call to this method in a try/catch block.
 /// A pointer provided to IImageCreator.CreateImage method will be released upon return
 /// so a caller should make sure there is no dependency on the pointer.
 /// </summary>
 /// <param name="imageCreator">A platform/technology specific image creator.</param>
 public void GetCurrentImage(IImageCreator imageCreator)
 {
     MediaEngine.GetCurrentImage(imageCreator);
 }
Beispiel #15
0
 public static void Register(IImageCreator creator)
 {
     _creator = creator;
 }
Beispiel #16
0
 public CyclicConsoleUI(ISettingsCommand[] settingsCommands, IImageCreator imageCreator)
 {
     this.imageCreator     = imageCreator;
     this.settingsCommands = settingsCommands;
 }
 public static Image <THelper> Image <THelper>(this IImageCreator <THelper> creator, string src, string alt = null)
     where THelper : BootstrapHelper <THelper>
 {
     return(new Image <THelper>(creator.GetHelper()).SetSrc(src).SetAlt(alt));
 }
Beispiel #18
0
 static ImageFactory()
 {
     _creator = J2kSetup.GetDefaultPlatformInstance<IImageCreator>();
 }
Beispiel #19
0
 public BasicConsoleUI(IImageCreator imageCreator)
 {
     this.imageCreator = imageCreator;
 }
Beispiel #20
0
 public CreateController(IImageCreator imageCreator, ILogger <CreateController> logger)
 {
     this.imageCreator = imageCreator;
     this.logger       = logger;
 }
Beispiel #21
0
 public DocumentsController(IAuthenticator authenticator, IImageCreator imageCreator)
 {
     Authenticator = authenticator; ImageCreator = imageCreator;
 }
Beispiel #22
0
        static void Main()
        {
            bool isAlreadyRunning = System.Diagnostics.Process.GetProcessesByName(System.IO.Path.GetFileNameWithoutExtension(System.Reflection.Assembly.GetEntryAssembly().Location)).Length > 1;

            if (isAlreadyRunning)
            {
                return;
            }

#if !DEBUG
            try
#endif
            {
                settings = new Config();
                settings.Load();
                isp = new AbloadService(settings.Cookies);

                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);

                using (ProcessIcon pi = new ProcessIcon(settings, isp))
                {
                    kcm      = new KeyControlManager();
                    selector = new Windows10RegionSelector(kcm.GlobalHook);
                    ic       = new NQuantImageCreator();

                    // Tie display shot to key action
                    kcm.DisplayShot = new Action(() =>
                    {
                        Region region = selector.GetAllScreenRegion();
                        Stream image  = ic.CreateFromScreenRegion(region);
                        SaveAndUpload(image);
                    });

                    // Tie single display shot to key action
                    kcm.SingleDisplayShot = new Action(() =>
                    {
                        Region region = selector.GetCurrentScreenRegion();
                        Stream image  = ic.CreateFromScreenRegion(region);
                        SaveAndUpload(image);
                    });

                    // Tie window shot to key action
                    kcm.WindowShot = new Action(() =>
                    {
                        Region region = selector.GetCurrentWindowRegion();
                        Stream image  = ic.CreateFromScreenRegion(region);
                        SaveAndUpload(image);
                    });

                    // Tie region selector to key events
                    kcm.RegionShotStart = selector.Start;
                    kcm.AbortRegionShot = selector.Abort;

                    selector.RegionFinished += new EventHandler <Region>(
                        (sender, region) =>
                    {
                        Stream image = ic.CreateFromScreenRegion(region);
                        SaveAndUpload(image);
                    }
                        );

                    isp.UploadFinished += new EventHandler <UploadResult>(
                        (sender, result) =>
                    {
                        if (result.Status == UploadResult.UploadStatus.Succeeded)
                        {
                            Clipboard.SetText(result.ImageUrl);
                            pi.NotifyUserSuccess(
                                Enum.GetName(typeof(UploadResult.UploadStatus), result.Status),
                                result.ImageUrl,
                                (string)result.Reason
                                );
                        }
                        else
                        {
                            var ex = result.Reason as Exception;
                            pi.NotifyUserFail(
                                Enum.GetName(typeof(UploadResult.UploadStatus), result.Status),
                                ex.Message,
                                ex.InnerException.Message
                                );
                        }
                    }
                        );

                    Application.Run();
                }
            }
#if !DEBUG
            catch (Exception ex)
            {
                MessageBox.Show(null, ex.Message + "\r\n\r\nIf this is helpful for you, here is the stack trace:\r\n\r\n" + ex.GetType().ToString() + ex.StackTrace, ex.GetType().ToString(), MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
#endif
        }