コード例 #1
0
ファイル: DefaultScript.cs プロジェクト: Stmen/ImGui.Wpf
    public async Task OnGui(Dispatcher dispatcher, ImGuiWpf imGui)
    {
        await imGui.Text("Hello World {0:F}", m_sliderValue);

        if (await imGui.Button("Save"))
        {
            await ShowMessage(dispatcher, $"You clicked save!\n{m_textContents}");
        }

        m_isChecked = await imGui.CheckBox("Check Me!", m_isChecked);

        if (m_isChecked)
        {
            await imGui.Label("You checked me!");
        }

        m_selectedFruit = await imGui.ComboBox("Fruit:", m_selectedFruit, m_fruit);

        m_textContents = await imGui.InputText("Input Text:", m_textContents);

        m_sliderValue = await imGui.Slider("Slider:", m_sliderValue, 0.0, 1.0);

        m_isChecked = await imGui.ToggleButton("Toggle Me", m_isChecked);

        m_selectedFruit = await imGui.ListBox("Fruit:", m_selectedFruit, m_fruit);

        m_isChecked = await imGui.RadioButton("Radio Checked", m_isChecked);

        m_isChecked = !await imGui.RadioButton("Radio UnChecked", !m_isChecked);

        await imGui.ProgressBar(m_sliderValue, 0.0, 1.0);

        await LayoutExample(dispatcher, imGui);
    }
コード例 #2
0
ファイル: DefaultScript.cs プロジェクト: Stmen/ImGui.Wpf
    private async Task LayoutExample(Dispatcher dispatcher, ImGuiWpf imGui)
    {
        using (await imGui.BeginHorizontal())
        {
            if (await imGui.Button("Left"))
            {
                await ShowMessage(dispatcher, "You clicked left.");
            }

            if (await imGui.Button("Right"))
            {
                await ShowMessage(dispatcher, "You clicked right.");
            }

            using (await imGui.BeginVertical())
            {
                if (await imGui.Button("A"))
                {
                    await ShowMessage(dispatcher, "You clicked A.");
                }

                if (await imGui.Button("B"))
                {
                    await ShowMessage(dispatcher, "You clicked B.");
                }

                if (await imGui.Button("C"))
                {
                    await ShowMessage(dispatcher, "You clicked C.");
                }
            }

            using (await imGui.BeginHorizontal())
            {
                if (await imGui.Button("1"))
                {
                    await ShowMessage(dispatcher, "You clicked 1.");
                }

                if (await imGui.Button("2"))
                {
                    await ShowMessage(dispatcher, "You clicked 2.");
                }

                if (await imGui.Button("3"))
                {
                    await ShowMessage(dispatcher, "You clicked 3.");
                }
            }
        }
    }
コード例 #3
0
ファイル: MainWindow.xaml.cs プロジェクト: Stmen/ImGui.Wpf
        private async Task UpdateImAbout(GroupBox owner)
        {
            using (var imGui = await ImGuiWpf.BeginUi(owner))
            {
                while (true)
                {
                    await imGui.BeginFrame();

                    await imGui.Text("This is a simple example of using ImGui.Wpf" +
                                     "The idea of this library is to implement an immediate mode " +
                                     "Gui system usable in WPF." +
                                     "The primary use for this library is to enable runtime script " +
                                     "execution to also implement Gui's.");

                    await imGui.EndFrame();

                    await Task.Delay(100);
                }
            }
        }
コード例 #4
0
ファイル: MainWindow.xaml.cs プロジェクト: Stmen/ImGui.Wpf
        private async Task UpdateImDemo(GroupBox owner)
        {
            var sliderValue = 0.5;
            var buffer      = "Hello World";
            var isChecked   = false;

            var fruit         = new[] { "Apple", "Banana", "Tomato" };
            var comboSelected = fruit[1];

            using (var imGui = await ImGuiWpf.BeginUi(owner))
            {
                while (true)
                {
                    await imGui.BeginFrame();

                    await imGui.Text("Hello World {0:F}", sliderValue);

                    if (await imGui.Button("Save"))
                    {
                        MessageBox.Show($"You clicked save!\n{buffer}");
                    }

                    isChecked = await imGui.CheckBox("Check Me!", isChecked);

                    if (isChecked)
                    {
                        await imGui.Label("You checked me!");
                    }

                    comboSelected = await imGui.ComboBox("Fruit:", comboSelected, fruit);

                    buffer = await imGui.InputText("Input Text:", buffer);

                    sliderValue = await imGui.Slider("Slider:", sliderValue, 0.0, 1.0);

                    isChecked = await imGui.ToggleButton("Toggle Me", isChecked);

                    comboSelected = await imGui.ListBox("Fruit:", comboSelected, fruit);

                    isChecked = await imGui.RadioButton("Radio Checked", isChecked);

                    isChecked = !await imGui.RadioButton("Radio UnChecked", !isChecked);

                    await imGui.ProgressBar(sliderValue, 0.0, 1.0);

                    using (await imGui.BeginHorizontal())
                    {
                        if (await imGui.Button("Left"))
                        {
                            MessageBox.Show("You clicked left.");
                        }

                        if (await imGui.Button("Right"))
                        {
                            MessageBox.Show("You clicked right.");
                        }

                        using (await imGui.BeginVertical())
                        {
                            if (await imGui.Button("A"))
                            {
                                MessageBox.Show("You clicked A.");
                            }

                            if (await imGui.Button("B"))
                            {
                                MessageBox.Show("You clicked B.");
                            }

                            if (await imGui.Button("C"))
                            {
                                MessageBox.Show("You clicked C.");
                            }
                        }

                        using (await imGui.BeginHorizontal())
                        {
                            if (await imGui.Button("1"))
                            {
                                MessageBox.Show("You clicked 1.");
                            }

                            if (await imGui.Button("2"))
                            {
                                MessageBox.Show("You clicked 2.");
                            }

                            if (await imGui.Button("3"))
                            {
                                MessageBox.Show("You clicked 3.");
                            }
                        }
                    }

                    await imGui.EndFrame();

                    await Task.Delay(20);
                }
            }
        }