コード例 #1
0
        public void Rendering_without_a_child_view_should_not_throw()
        {
            var screen = new ScreenView(_renderer, _synchronizationContext);

            Action renderAction = () => screen.Render();

            renderAction.Should().NotThrow();
        }
コード例 #2
0
        public void Dispose_shows_the_cursor()
        {
            var screen = new ScreenView(_renderer, _terminal, _synchronizationContext);

            screen.Dispose();

            _terminal.Events.Should().BeEquivalentSequenceTo(new TestTerminal.CursorShown());
        }
コード例 #3
0
 public ExplorerViewModel(Explorer explorer, Playlist playlist, ScreenView view, List <String> extensions, ControlViewModel control)
 {
     this.extensions = extensions;
     this.explorer   = explorer;
     this.playlist   = playlist;
     this.view       = view;
     this.control    = control;
 }
コード例 #4
0
        public void Render_hides_the_cursor()
        {
            var screen = new ScreenView(_renderer, _terminal, _synchronizationContext);

            screen.Render();

            _terminal.Events.Should().BeEquivalentSequenceTo(new TestTerminal.CursorHidden());
        }
コード例 #5
0
ファイル: Program.cs プロジェクト: marraia/marraia.cli
        private static Command NewProject(List <Projects> repositories)
        {
            var cmd = new Command("new", "Comando para criar um novo projeto");

            foreach (var command in repositories)
            {
                var repositoryCommad = new Command(command.Description, $"Comando para criar um projeto à partir do template {command.Description}");
                repositoryCommad.AddOption(new Option(new[] { "--name", "-n" }, "Nome da solução")
                {
                    Argument = new Argument <string>
                    {
                        Arity = ArgumentArity.ExactlyOne
                    }
                });

                repositoryCommad.Handler = CommandHandler.Create <string>((name) => {
                    if (string.IsNullOrEmpty(name))
                    {
                        Console.WriteLine("Usage: new [template] [options]");
                        Console.WriteLine("\n");
                        Console.WriteLine("Options:");
                        Console.WriteLine("-n, --name <NomeDoSeuProjeto>");
                        return;
                    }

                    CreateProject(name, command.Description, command.Url);
                });

                cmd.Add(repositoryCommad);
            }

            cmd.Handler = CommandHandler.Create(() =>
            {
                var table = new TableView <Projects>
                {
                    Items = repositories
                };

                Console.WriteLine("\n");
                Console.WriteLine("Usage: new [template]");
                Console.WriteLine("\n");

                table.AddColumn(template => template.Description, "Template");

                var screen = new ScreenView(consoleRenderer, invocationContext.Console)
                {
                    Child = table
                };
                screen.Render();

                Console.WriteLine("-----");
                Console.WriteLine("\n");
                Console.WriteLine("Exemples:");
                Console.WriteLine($"  ConsoleApp1 new { repositories[0].Description } --name NomeDoSeuProjeto");
            });

            return(cmd);
        }
コード例 #6
0
 public MovePlaceholderCommand(PlaceholderViewEventArgs args, PlaceHolderCollectionModel collectionModel, ScreenView screenView, ScreenModel screenModel,
                               PlaceholderUserChangeValidator moveValidator)
 {
     this.args            = args;
     this.collectionModel = collectionModel;
     this.screenView      = screenView;
     this.screenModel     = screenModel;
     this.moveValidator   = moveValidator;
 }
コード例 #7
0
ファイル: ListCommand.cs プロジェクト: zpf1989/grpc-dotnet
        public void List()
        {
            var consoleRenderer  = new ConsoleRenderer(Console);
            var protobufElements = Project.GetItems(ProtobufElement).ToList();

            if (protobufElements.Count == 0)
            {
                Console.Log(CoreStrings.LogNoReferences);
                return;
            }

            var table = new TableView <ProjectItem> {
                Items = protobufElements
            };

            // Required columns (always displayed)
            table.AddColumn(r => r.UnevaluatedInclude, CoreStrings.TableColumnProtobufReference);
            table.AddColumn(r =>
            {
                var serviceType = r.GetMetadataValue(GrpcServicesElement);
                return(string.IsNullOrEmpty(serviceType) ? "Both" : serviceType);
            }, CoreStrings.TableColumnServiceType);

            // Optional columns (only displayed if an element is not default)
            if (protobufElements.Any(r => !string.IsNullOrEmpty(r.GetMetadataValue(SourceUrlElement))))
            {
                table.AddColumn(r => r.GetMetadataValue(SourceUrlElement), CoreStrings.TableColumnSourceUrl);
            }

            // The default value is Public set by Grpc.Tools so skip this column if everything is default
            if (protobufElements.Any(r => !string.Equals(r.GetMetadataValue(AccessElement), Access.Public.ToString(), StringComparison.OrdinalIgnoreCase)))
            {
                table.AddColumn(r => r.GetMetadataValue(AccessElement), CoreStrings.TableColumnAccess);
            }

            if (protobufElements.Any(r => !string.IsNullOrEmpty(r.GetMetadataValue(AdditionalImportDirsElement))))
            {
                table.AddColumn(r => r.GetMetadataValue(AdditionalImportDirsElement), CoreStrings.TableColumnAdditionalImports);
            }

            var screen = new ScreenView(consoleRenderer, Console)
            {
                Child = table
            };
            Region region;

            try
            {
                // System.Console.WindowWidth can throw an IOException when runnning without a console attached
                region = new Region(0, 0, System.Console.WindowWidth, System.Console.WindowHeight);
            }
            catch (IOException)
            {
                region = new Region(0, 0, int.MaxValue, int.MaxValue);
            }
            screen.Child?.Render(consoleRenderer, region);
        }
コード例 #8
0
        public void TestInitFull()
        {
            ScreenView sv = new ScreenView().SetName("name").SetId("id").Build();
            Dictionary <string, object> payload = (Dictionary <string, object>)sv.GetPayload().GetDictionary()["data"];

            Assert.AreEqual(2, payload.Count);
            Assert.AreEqual("id", payload [Constants.SV_ID]);
            Assert.AreEqual("name", payload [Constants.SV_NAME]);
            Assert.AreEqual("iglu:com.snowplowanalytics.snowplow/screen_view/jsonschema/1-0-0", (string)sv.GetPayload().GetDictionary()["schema"]);
        }
コード例 #9
0
ファイル: Program.cs プロジェクト: origamirobot/archivist
        static void UpdateUi(List <Capture> items)
        {
            var captureView = new CaptureView(items);

            Screen = new ScreenView(Renderer, Console)
            {
                Child = captureView
            };
            Screen.Render(Region);
        }
コード例 #10
0
        /// <summary>
        /// </summary>
        public TestDiscordScreen()
        {
            DiscordManager.CreateClient("473243746922659842", LogLevel.None);
            DiscordManager.Client.SetPresence(new RichPresence()
            {
                Details = "TestDiscordScreen",
                State   = "Testing"
            });

            View = new TestDiscordScreenView(this);
        }
コード例 #11
0
        public void TestInitException()
        {
            ScreenView sv = null;

            try {
                sv = new ScreenView().Build();
            } catch (Exception e) {
                Assert.AreEqual("Both Name and Id cannot be null or empty.", e.Message);
            }
            Assert.IsNull(sv);
        }
コード例 #12
0
        //Set current screen
        public void SetScreen(ScreenView view)
        {
            //Stop old music
            HandleMusicOff(current, view);

            //Switch view
            current = view;

            //Start new music
            HandleMusicOn(current);
        }
コード例 #13
0
ファイル: LobbyScreen.cs プロジェクト: vysiondev/Quaver
        /// <summary>
        /// </summary>
        public LobbyScreen()
        {
            CheckConnected();
            OnlineManager.JoinLobby();

            DiscordHelper.Presence.Details      = "Finding a Game";
            DiscordHelper.Presence.State        = "In the Multiplayer Lobby";
            DiscordHelper.Presence.EndTimestamp = 0;
            DiscordRpc.UpdatePresence(ref DiscordHelper.Presence);

            View = new LobbyScreenView(this);
        }
コード例 #14
0
        public void Dispose_unregisters_from_updated_event()
        {
            var screen = new ScreenView(_renderer, _synchronizationContext);
            var view   = new TestView();

            screen.Child = view;

            screen.Dispose();
            view.RaiseUpdated();

            _synchronizationContext.PostInvocationCount.Should().Be(0);
        }
コード例 #15
0
    public void Setup(Painting painting, ScreenView screenViewManager)
    {
        _painting         = painting;
        _sourceImage      = painting.Texture;
        ScreenViewManager = screenViewManager;

        ImageControl.sprite = Sprite.Create(_sourceImage, new Rect(0, 0, _sourceImage.width, _sourceImage.height), new Vector2(0, 0));
        ButtonControl.onClick.AddListener(new UnityEngine.Events.UnityAction(() =>
        {
            PaintingManager.SelectPainting(_painting);
            ScreenViewManager.Back(ScreenView.Type.Out);
        }));
    }
コード例 #16
0
 public ControlViewModel(MainWindow mainView, ScreenView view, List <String> extensions, Explorer explorer, ExplorerView explorerView)
 {
     this.explorerView             = explorerView;
     this.extensions               = extensions;
     this.media                    = view;
     this.mainView                 = mainView;
     this.mainView.PreviewKeyDown += new System.Windows.Input.KeyEventHandler(HandleEsc);
     this.explorer                 = explorer;
     this.isFullscreen             = false;
     timer.Interval                = TimeSpan.FromSeconds(1);
     timer.Tick                   += timer_Tick;
     timer.Start();
 }
コード例 #17
0
        public void testInitScreenView()
        {
            var sv = new ScreenView()
                     .SetId("someId")
                     .SetName("someName")
                     .SetTrueTimestamp(123456789123)
                     .Build();

            var sdj = (SelfDescribingJson)sv.GetPayload();

            Assert.IsNotNull(sv);
            Assert.IsNotNull(sdj);
            Assert.AreEqual(@"{""schema"":""iglu:com.snowplowanalytics.snowplow/screen_view/jsonschema/1-0-0"",""data"":{""name"":""someName"",""id"":""someId""}}", sdj.ToString());
            Assert.IsNotNull(sv.GetContexts());
        }
コード例 #18
0
        public void On_child_updated_the_screen_is_rendered()
        {
            _terminal.Height     = 40;
            _terminal.Width      = 100;
            _terminal.CursorLeft = _terminal.CursorTop = 20;

            var screen = new ScreenView(_renderer, _terminal, _synchronizationContext);
            var view   = new TestView();

            screen.Child = view;

            view.RaiseUpdated();

            _synchronizationContext.InvokePostCallbacks();
            view.RenderedRegions.Should().BeEquivalentSequenceTo(new Region(0, 0, 100, 40));
        }
コード例 #19
0
        public void HandleMusicOff(ScreenView oldView, ScreenView newView)
        {
            //Check what the old screen was
            switch (oldView)
            {
            case ScreenView.MENU:
                MenuScreen menuScreen = (MenuScreen)screens[oldView];
                if (newView == ScreenView.SETTINGS)
                {
                    //Do nothing, let music play
                }
                else
                {
                    menuScreen.StopMusic();
                }
                break;

            case ScreenView.PAUSED_MENU:
                //Do nothing, no music plays during pause menu
                break;

            case ScreenView.GAMELOSE:
                //Going to menu, do nothing
                break;

            case ScreenView.GAMEWIN:
                //Going to menu, do nothing
                break;

            case ScreenView.INGAME:
                GameScreen gameScreen = (GameScreen)screens[oldView];
                if (newView != ScreenView.PAUSED_MENU)
                {
                    gameScreen.StopMusic();
                }
                else     //next view is the pause menu, don't restart music
                {
                    gameScreen.PauseMusic();
                }
                break;

            case ScreenView.SETTINGS:
                //Do nothing, only case is to go from settings to menu
                break;
            }
        }
コード例 #20
0
 private void RefreshTick()
 {
     if (cUrl != url)
     {
         if (cUrl == "refresh")
         {
             ScreenView.Refresh();
             lock (cUrl) cUrl = url;
         }
         else
         {
             ScreenView.Navigate(new Uri(cUrl));
             localSettings.Values["url"] = cUrl;
             lock (cUrl) url = cUrl;
         }
     }
 }
コード例 #21
0
        private static void RenderView <T>(ItemsView <T> view)
        {
            var context = Program.InvocationContext;

            var consoleRenderer = new ConsoleRenderer(
                context.Console,
                context.BindingContext.OutputMode());

            var screen = new ScreenView(consoleRenderer, context.Console)
            {
                Child = view
            };

            screen.Render(new Region(0, 0, new Size(Console.WindowWidth, view.Items.Count + 1)));
            screen.Dispose();

            Console.WriteLine("\n");
        }
コード例 #22
0
        /// <inheritdoc />
        ///  <summary>
        ///  </summary>
        public NavbarItemUser(ScreenView view)
        {
            View = view;

            Selected = false;
            UsePreviousSpriteBatchOptions = true;
            Size  = new ScalableVector2(175, 45);
            Tint  = Color.Black;
            Alpha = 0f;

            CreateAvatar();
            SteamManager.SteamUserAvatarLoaded += OnSteamAvatarLoaded;

            CreateUsername();
            CreateBottomLine();

            Clicked += OnClick;
        }
コード例 #23
0
        public static async Task Handler(InvocationContext invocationContext, Uri fhirServer)
        {
            var region = new Region(
                0,
                0,
                Console.WindowWidth,
                Console.WindowHeight,
                true);

            var httpClient = new HttpClient
            {
                BaseAddress = fhirServer,
            };

            var jsonResult = await httpClient.GetStringAsync(new Uri("/_schema/versions"));

            List <JToken> resultsJson = JArray.Parse(jsonResult).ToList();

            var tableView = new TableView <JToken>
            {
                Items = resultsJson,
            };

            tableView.AddColumn(
                cellValue: f => f["id"],
                header: new ContentView("Version"));

            tableView.AddColumn(
                cellValue: f => f["script"],
                header: new ContentView("Script"));

            var consoleRenderer = new ConsoleRenderer(
                invocationContext.Console,
                mode: invocationContext.BindingContext.OutputMode(),
                resetAfterRender: true);

            var screen = new ScreenView(renderer: consoleRenderer)
            {
                Child = tableView
            };

            screen.Render(region);
        }
コード例 #24
0
        /// <summary>
        /// Execute the list command
        /// </summary>
        public override Task <int> InvokeAsync(InvocationContext context)
        {
            var store = new BackupStore(Options.Server, Microsoft.Extensions.Options.Options.Create(Options.GetBackupStoreSettings()));

            _ = Options.SourceServer ?? throw new NotSupportedException("The source server must be defined.");
            _ = Options.SourceDatabase ?? throw new NotSupportedException("The source database must be defined.");
            IEnumerable <BackupHeader> backups = store.GetLatestBackupSet
                                                 (
                Options.SourceServer,
                Options.SourceDatabase,
                Options.BackupType == BackupRestoreType.Diff || Options.BackupType == BackupRestoreType.All,
                Options.BackupType == BackupRestoreType.Log || Options.BackupType == BackupRestoreType.All,
                Options.Before
                                                 );

            DatabaseRestore?restore = backups.Any() ? new DatabaseRestore(
                Options.Server,
                Options.Database,
                backups,
                null,
                ServiceProvider.GetRequiredService <ILogger <DatabaseRestore> >()) : null;
            var view = new RestoreView(backups, Options);

            view.Initialize();
            if (!Options.Silent)
            {
                _ = context.Console ?? throw new ArgumentException("Console property is null", nameof(context));
                using var screen = new ScreenView(ConsoleRenderer, context.Console)
                      {
                          Child = view
                      };
                screen.Render();
            }
            if (restore != null)
            {
                restore.Execute();
                return(Task.FromResult(0));
            }
            else
            {
                return(Task.FromResult(-1));
            }
        }
コード例 #25
0
        public void RenderReport(BaseReportView baseViewModel)
        {
            MemoryReportView viewModel = (MemoryReportView)baseViewModel;
            var region = new Region(0,
                                    0,
                                    1080,
                                    10800,
                                    true);



            var console = _invocationContext;

            if (console is ITerminal terminal)
            {
                terminal.Clear();
            }

            console.Append(new ContentView("Dump details"));
            console.Append(new SplitterView());
            console.Append(new DumpDetailsView(viewModel));
            console.Append(new ContentView("\n\n"));
            StackLayoutView stackLayoutView2 = new StackLayoutView
            {
                new SplitterView(),
                new ContentView($"Total GC Heap Size: {viewModel.TotalGCMemory}"),
                new SplitterView(),
                new ContentView("\n\n"),
                new TemplateStackView("GC split per logical heap", new HeapBalanceView(viewModel)),
                new TemplateStackView("Memory stats per GC type", new GCHeapBreakupView(viewModel)),
                new TemplateStackView("LOH stats", new LOHView(viewModel)),
                new TemplateStackView("Finalizer Object Stats", new FinalizerView(viewModel)),
                new TemplateStackView("Top 50 Types consumig memory", new HeapStatsView(viewModel)),
                new SplitterView()
            };
            var screen = new ScreenView(_consoleRenderer, _invocationContext)
            {
                Child = stackLayoutView2
            };

            screen.Render(region);
        }
コード例 #26
0
        private void GetFocusedRowData(int index)
        {
            if (index >= 0 && ScreenView.RowCount > 0)
            {
                ScreenView.FocusedRowHandle = index;
                btnSave.Enabled             = false;
                btnAddNew.Enabled           = btnDelete.Enabled = btnModify.Enabled = true;
                txtScreenCode.Text          = ScreenView.GetRowCellValue(index, ScreenManager.ScreenDetails.ScreenCode.ToString()).ToString();
                txtScreenName.Text          = ScreenView.GetRowCellValue(index, ScreenManager.ScreenDetails.ScreenName.ToString()).ToString();
                DALLayer.Screen s = new ScreenManager().Get(int.Parse(txtScreenCode.Text));

                for (int i = 0; i < dgvPermissions.Rows.Count; i++)
                {
                    foreach (PermissionsInScreen p in s.PermissionsInScreen)
                    {
                        dgvPermissions.Rows[i].Cells[check.Name].Value = p.Permission_Code == int.Parse(dgvPermissions.Rows[i].Cells[PerCode.Name].Value.ToString()) ? true : dgvPermissions.Rows[i].Cells[check.Name].Value;
                    }
                }
            }
        }
コード例 #27
0
    public LoadedScreen(LoadedScreenCache loadedScreenCache)
    {
        _loadedScreenCache = loadedScreenCache;

        _scene           = SceneManager.GetSceneByPath(loadedScreenCache.scenePath);
        _duplicateScreen = GameObject.FindObjectOfType <ScreenView>().gameObject;

        if (_scene.isLoaded)
        {
            foreach (GameObject rootObject in _scene.GetRootGameObjects())
            {
                _screenController = rootObject.GetComponent <ScreenView>();

                if (_screenController != null)
                {
                    break;
                }
            }
        }
    }
コード例 #28
0
        override protected void DrawLayer(Rectangle clipRectangle)
        {
            try
            {
                SwapDrawBuffer();

                //!!!Draw all objects after FillTransparent (*ClipRectangle)
                FillTransparent();

                var localScreenView = (ScreenRectangle)ScreenView.Clone();

                RedrawCables(localScreenView);
                RedrawVertexes(localScreenView);
            }
            finally
            {
                SwapDrawBuffer();
            }
            FireInvalidateLayer(clipRectangle);
        }
コード例 #29
0
        public void On_child_updated_the_render_operation_is_synchronized()
        {
            _console.Height     = 40;
            _console.Width      = 100;
            _console.CursorLeft = _console.CursorTop = 20;

            var screen = new ScreenView(_renderer, _synchronizationContext);
            var view   = new TestView();

            screen.Child = view;

            //Simulate multiple concurrent updates
            view.RaiseUpdated();
            view.RaiseUpdated();
            _synchronizationContext.InvokePostCallbacks();

            _synchronizationContext.PostInvocationCount.Should().Be(1);
            view.RenderedRegions
            .Should()
            .BeEquivalentSequenceTo(new Region(0, 0, 100, 40));
        }
コード例 #30
0
        public MainPage()
        {
            InitializeComponent();

            if (localSettings.Values.ContainsKey("url"))
            {
                cUrl = localSettings.Values["url"].ToString();
            }
            else
            {
                localSettings.Values["url"] = cUrl;
            }

            ScreenView.Navigate(new Uri(cUrl));
            ScreenView.PermissionRequested += ScreenView_PermissionRequested;

            Debug.WriteLine("Browser done, server next");

            StartRefreshTimer();
            SetupServer();
        }