[PR #285] [MERGED] Add GUIConsole sample #24099

Open
opened 2026-01-31 09:01:23 +00:00 by claunia · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/microsoft/terminal/pull/285
Author: @pingzing
Created: 10/14/2018
Status: ✅ Merged
Merged: 5/18/2019
Merged by: @undefined

Base: master ← Head: master


📝 Commits (9)

  • abac2da Add GUIConsole sample
  • 6644c20 Remove acrylic native functions, add a title bar
  • 07d06f6 Fix WPF app namespaces
  • e27c9e9 Respond to PR feedback
  • 9c95da8 Removed unused native calls, and fix up some stray spaces
  • 2f54b15 Switch pwsh to powershell
  • 5895fb9 Missed a spot.
  • df75c8a Fix typo, add newlines
  • 8f0c625 Fix merge conflict

📊 Changes

22 files changed (+1193 additions, -0 deletions)

View changed files

➕ samples/ConPTY/GUIConsole/GUIConsole.ConPTY/GUIConsole.ConPTY.csproj (+7 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.ConPTY/Native/ConsoleApi.cs (+23 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.ConPTY/Native/ProcessApi.cs (+86 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.ConPTY/Native/PseudoConsoleApi.cs (+30 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.ConPTY/Processes/Process.cs (+70 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.ConPTY/Processes/ProcessFactory.cs (+99 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.ConPTY/PseudoConsole.cs (+40 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.ConPTY/PseudoConsolePipe.cs (+48 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.ConPTY/Terminal.cs (+113 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.WPF/App.config (+6 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.WPF/App.xaml (+8 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.WPF/App.xaml.cs (+15 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.WPF/GUIConsole.WPF.csproj (+105 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.WPF/MainWindow.xaml (+84 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.WPF/MainWindow.xaml.cs (+121 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.WPF/Properties/AssemblyInfo.cs (+55 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.WPF/Properties/Resources.Designer.cs (+63 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.WPF/Properties/Resources.resx (+117 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.WPF/Properties/Settings.Designer.cs (+26 -0)
➕ samples/ConPTY/GUIConsole/GUIConsole.WPF/Properties/Settings.settings (+7 -0)

...and 2 more files

📄 Description

As mentioned in #274, here's a WPF-centric sample. It creates a window that (for now) draws the raw VT100 codes the console emits, and accepts user input. It's based on @waf's MiniTerm C# sample.

I've also set it up to use the ACCENT_ENABLE_ACRYLICBLURBEHIND property, mostly for fun. However, that's accomplished with the undocumented SetWindowCompositionAttribute function. If that should be removed for the sake of keeping scope simple, let me know 👍


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/microsoft/terminal/pull/285 **Author:** [@pingzing](https://github.com/pingzing) **Created:** 10/14/2018 **Status:** ✅ Merged **Merged:** 5/18/2019 **Merged by:** [@undefined](undefined) **Base:** `master` ← **Head:** `master` --- ### 📝 Commits (9) - [`abac2da`](https://github.com/microsoft/terminal/commit/abac2daf192929872b28b95bf6ada0058b83c917) Add GUIConsole sample - [`6644c20`](https://github.com/microsoft/terminal/commit/6644c20be79ce790c2cb47144d5773a870e03d55) Remove acrylic native functions, add a title bar - [`07d06f6`](https://github.com/microsoft/terminal/commit/07d06f62aa5a883f70cbe8572bf8ea1f8577f53f) Fix WPF app namespaces - [`e27c9e9`](https://github.com/microsoft/terminal/commit/e27c9e93250e8438430085fa756940a7436dee0d) Respond to PR feedback - [`9c95da8`](https://github.com/microsoft/terminal/commit/9c95da88cbe0a26a462319efa794c9cca9550653) Removed unused native calls, and fix up some stray spaces - [`2f54b15`](https://github.com/microsoft/terminal/commit/2f54b15612ce54683d06b7b51ad100641a7637dc) Switch pwsh to powershell - [`5895fb9`](https://github.com/microsoft/terminal/commit/5895fb917e6e6a6dec2b24011c0f77280ed3314d) Missed a spot. - [`df75c8a`](https://github.com/microsoft/terminal/commit/df75c8a97b613a4b2f4f365dc6e3952940a749b2) Fix typo, add newlines - [`8f0c625`](https://github.com/microsoft/terminal/commit/8f0c625809115fbe7eef3951b3c7c627d67994a9) Fix merge conflict ### 📊 Changes **22 files changed** (+1193 additions, -0 deletions) <details> <summary>View changed files</summary> ➕ `samples/ConPTY/GUIConsole/GUIConsole.ConPTY/GUIConsole.ConPTY.csproj` (+7 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.ConPTY/Native/ConsoleApi.cs` (+23 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.ConPTY/Native/ProcessApi.cs` (+86 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.ConPTY/Native/PseudoConsoleApi.cs` (+30 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.ConPTY/Processes/Process.cs` (+70 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.ConPTY/Processes/ProcessFactory.cs` (+99 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.ConPTY/PseudoConsole.cs` (+40 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.ConPTY/PseudoConsolePipe.cs` (+48 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.ConPTY/Terminal.cs` (+113 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.WPF/App.config` (+6 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.WPF/App.xaml` (+8 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.WPF/App.xaml.cs` (+15 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.WPF/GUIConsole.WPF.csproj` (+105 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.WPF/MainWindow.xaml` (+84 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.WPF/MainWindow.xaml.cs` (+121 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.WPF/Properties/AssemblyInfo.cs` (+55 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.WPF/Properties/Resources.Designer.cs` (+63 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.WPF/Properties/Resources.resx` (+117 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.WPF/Properties/Settings.Designer.cs` (+26 -0) ➕ `samples/ConPTY/GUIConsole/GUIConsole.WPF/Properties/Settings.settings` (+7 -0) _...and 2 more files_ </details> ### 📄 Description As mentioned in #274, here's a WPF-centric sample. It creates a window that (for now) draws the raw VT100 codes the console emits, and accepts user input. It's based on @waf's MiniTerm C# sample. I've also set it up to use the ACCENT_ENABLE_ACRYLICBLURBEHIND property, mostly for fun. However, that's accomplished with the undocumented SetWindowCompositionAttribute function. If that should be removed for the sake of keeping scope simple, let me know :+1: --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
claunia added the pull-request label 2026-01-31 09:01:23 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#24099