Terminal.Gui.csproj 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. <Project Sdk="Microsoft.NET.Sdk">
  2. <PropertyGroup>
  3. <TargetFrameworks>net472;netstandard2.0</TargetFrameworks>
  4. <RootNamespace>Terminal.Gui</RootNamespace>
  5. <AssemblyName>Terminal.Gui</AssemblyName>
  6. <DocumentationFile>bin\Release\Terminal.Gui.xml</DocumentationFile>
  7. <GenerateDocumentationFile Condition=" '$(Configuration)' == 'Release' ">true</GenerateDocumentationFile>
  8. <AssemblyVersion>0.82.0.0</AssemblyVersion>
  9. </PropertyGroup>
  10. <PropertyGroup>
  11. <GeneratePackageOnBuild Condition=" '$(Configuration)' == 'Release' ">true</GeneratePackageOnBuild>
  12. <PackageId>Terminal.Gui</PackageId>
  13. <PackageVersion>0.82</PackageVersion>
  14. <Authors>Miguel de Icaza</Authors>
  15. <PackageLicenseExpression>MIT</PackageLicenseExpression>
  16. <PackageProjectUrl>https://github.com/migueldeicaza/gui.cs/</PackageProjectUrl>
  17. <PackageTags>csharp, terminal, c#, f#, gui, toolkit, console</PackageTags>
  18. <Description>Console-based user interface toolkit for .NET applications.</Description>
  19. <Owners>Miguel de Icaza</Owners>
  20. <Summary>Application framework for creating modern console applications using .NET </Summary>
  21. <Title>Gui.cs is a framework for creating console user interfaces</Title>
  22. <PackageReleaseNotes>
  23. 0.82: Many fixes
  24. * API documentation completely revamped and updated. Readme upated. Contributors guide added (Thanks @tig!)
  25. * New sample/demo app - UI Catalog - Replaces demo.cs with an easy to use and extend set of demo scenarios. (Thanks @tig!)
  26. * MenuBar can now have MenuItems directly (enables top-level menu items with no submenu). (Thanks @tig!)
  27. * Apps can now get KeyUp/KeyDown events. (Thanks @tig!)
  28. * Fixes #396 - Text alignnment issues. (Thanks @tig!)
  29. * Fixes #423 - Fix putting results of ocgv on command line erases cursor. (Thanks @tig!)
  30. * Example/Designer csproj files updated to latest Visual Studio model. (Thanks @tig!)
  31. * Adjusted the default colors for Windows to make more readable. (Thanks @tig!)
  32. * Toplevel.Ready event - Fired once the Toplevel's MainLoop has started (#445). (Thanks @tig!)
  33. * Refactored several events to use event vs. Action. (BREAKING CHANGE) (Thanks @tig!)
  34. * All compile warnings fixed. (Thanks @tig!)
  35. * Fixed a crash in EnsureVisibleBounds. (Thanks @tig!)
  36. * Application.Init/Shutdown are more robust. (Thanks @tig!)
  37. * New "Draw Window Frame" code; consistent across Window, FrameView, and Menu. Fixes many drawing bugs. (Thanks @tig!)
  38. * The project has been refactored an reorganized to reduce risk of bugs and make it easier to contribute #541. (Thanks @tig!)
  39. * Fixes #522 - Last view of Frameview not drawn. (Thanks @tig!)
  40. * Clipping has been fixed/restored - it now works properly. (#586) (Thanks @tig!)
  41. * Added a View.LayoutComplete event (#569). (Thanks @tig!)
  42. * Fixes #299 - MessageBox now auto sizes. (Thanks @tig!)
  43. * Fixes #557 - MessageBoxes on small screens. (Thanks @tig!)
  44. * Fixes #432 - MessageBox does not deal with long text; width/height params are goofy. (Thanks @tig!)
  45. * Fixes #35 - Dialog should have 1 char padding. (Thanks @tig!)
  46. * `MessageBox.Query` called with `width` and `height` == 0 get auto-size behavior. A new constructor is added making this easy to use. (Thanks @tig!)
  47. * Multi-line `MessageBox`es are now supported. Just use `\n` to add lines. The height of the MessageBox will adjust automatically. (Thanks @tig!)
  48. * The `MessageBoxes` Scenario in UI Catalog provides a full demo/test-case. (Thanks @tig!)
  49. * `Dialog` called with `width` and `height` == 0 are sized to 85% container. A new constructor is added making this easy to use. (Thanks @tig!)
  50. * Dialog (and MessageBox `Buttons` are now dynamically laid out using Computed layout. (Thanks @tig!)
  51. * A `Dialogs` Scenario has been added to UI Catalog making it easy to test the API. (Thanks @tig!)
  52. * `Button` now supports BOTH specifying a hotkey with '_' and the old behavior of using the first uppercase char (if '_' is not found). (Thanks @tig!)
  53. * All UI Catalog scenarios that use `Dialog` or `MessageBox` now use the simplified API. (Thanks @tig!)
  54. * `Terminal.Gui.dll` now has version metadata and UI Catalog's about box displays it as a test case. (Thanks @tig!)
  55. * Button, Dialog, and MessageBox API documentation has been updated/revised. (Thanks @tig!)
  56. * `View`, `Window`, `FrameView`, and `Dialog` have been upgraded to use the new `ConsoleDriver.DrawFrameWindow` API directly. (Thanks @tig!)
  57. * New ComboBox control (Thanks @fergusonr!)
  58. * ConsoleDriver now supports improved KeyModifers (shift keys) with an expanded Keys Sceanrio in UI Catalog. (Thanks @bdisp!)
  59. * Tons of mouse handling improvements. (Thanks @bdisp!)
  60. * Fsharp sample updated. (Thanks @bdisp!)
  61. * Fixes #562 - Background drawing issue. (Thanks @bdisp!)
  62. * Fixes #517 - Focus and mouse handlers enahced (BREAKING CHANGE). (Thanks @bdisp!)
  63. * Fixed resizing update and correct Toplevel colors without colors. (Thanks @bdisp!)
  64. * Fixed #515, #518, #536, #540. (Thanks @bdisp!)
  65. * Added Threading Scenario to UI catalog. (Thanks @bdisp!)
  66. * Added support for F11 and F12 keys. (Thanks @bdisp!)
  67. * Multiple improvements to Date/TimeField. (Thanks @bdisp!)
  68. * Fixes #409 - Invoke does not cause Wakeup #501. (Thanks @bdisp!)
  69. * Fixed Label text alignemnt. (Thanks @bdisp!)
  70. * Added mouse features in the Unix version. Supports xterm-1006. (Thanks @bdisp!)
  71. * Several StatusBar fixes. (Thanks @bdisp!)
  72. * Tons of mouse improvements including mouse wheel support (e.g. #404, #409). (Thanks @bdisp!)
  73. * Added a CloseFile method to the TextView as stated in #452. (Thanks @bdisp)
  74. * Added a OpenSelectedItem event to the ListView #429. (Thanks @bdisp!)
  75. * Fixes the return value of the position cursor in the TextField. (Thanks @bdisp!)
  76. * Updates screen on Unix window resizing. (Thanks @bdisp!)
  77. * Fixes the functions of the Edit-&gt;Copy-Cut-Paste menu for the TextField that was not working well. (Thanks @bdisp!)
  78. * More robust error handing in Pos/Dim. Fixes #355 stack overflow with Pos based on the size of windows at startup. Added a OnResized action to set the Pos after the terminal are resized. (Thanks @bdisp!)
  79. * Fixes #389 Window layouting breaks when resizing. (Thanks @bdisp!)
  80. * Fixes #557 MessageBox needs to take ustrings (BREAKING CHANGE). (Thanks @tig!)
  81. * Fixes ScrollView in several key ways. (Thanks @tig!)
  82. * Now supports Computed layout and has constructors that don't require parameters.
  83. * ScrollBarViews are now positioned using Computed layout versus error prone absoulte
  84. * ScrollBarViews now correctly position themselves when one, either, or both are on/off.
  85. * IsVertical is now a public property that does the expected thing when changed
  86. * Mouse handling is better; there's still a bug where the mouse doesn't get grabbed by the ScrollView initially but I think this is a broader problem. I need @BDisp's help on this.
  87. * Supports "infinite scrolling" via the new OnDrawContent/DrawContent event on the View class.
  88. * The Scrolling Scenario was enhanced to demo dynamically adding/removing horizontal/vertical scrollbars (and to prove it was working right).
  89. * The Checkbox.Toggled event is now an EventHandler event and passes previous state. (Thanks @tig!)
  90. 0.81:
  91. * Fix ncurses engine for macOS/Linux, it works again
  92. * Fixes an issue with referencing views that have not been allocated yet causing a stack overflow
  93. * New OnCloseMenu event on menus
  94. * Button cursor position looks better
  95. * Listview in single-selection mode uses a radio-button look
  96. * Fixes a couple of crashes (356)
  97. * Default the samples to work on Catalina
  98. 0.80: Jumbo update from BDisp:
  99. * Fixed key events traversal for modal dialogs
  100. * Fixes culture info of DataField from pr
  101. * Fixes the rectangle drawing issue
  102. * Redraw issue when setting coordinates of label
  103. * Added sub menus into menu bar with mouse and key navigation
  104. * Added Colors.Menu.Disabled to CursesDriver.cs
  105. * Mouse text selection with cut, copy and paste on text fields
  106. * Change sepChar from char to string in DateField
  107. * Adding a disabled menu item in the demo file
  108. * Fixes Button repainting issue when changing the text length to one smaller
  109. * Fixes Redraw issue when setting coordinates of label
  110. * Fixes ScrollView does not render some content
  111. * Fixed bug in Button that caused a loop redraw calling TerminalResized
  112. * Fixes a repaint issue (282)
  113. * Mouse features added to FileDialog including wheel support.
  114. * Switch netcoreapp target to netstandard2.0
  115. * Added TextView.TextChanged event
  116. * Fixes issue #306 async/await hang (#312)
  117. * Replaced static driver initialization with property getter for reference passing in Core.cs::View class, this allows the library to be reinitialized at any time.
  118. * Made the Shutdown method on Core.cs::Application class public, since there is no reason to keep it private. Applications can shutdown the library and revert the console to the initial stage by calling it.
  119. * Fixed a memory-leak on Drivers/WindowsDriver class by destroying the generated screen buffers at library shutdown by calling CloseHandle.
  120. * Minor change to Core.cs::Application.Init(Func) for better initialization status tracking, via backend property instead of relying on the Top field.
  121. * Moved `ListView.ListWrapper` out of `ListView` migueldeicaza/gui.cs#313` (#315)
  122. * Resizing the MessageBox width to accommodate all message text (#299)
  123. * Timefield format with bounds values (#303)
  124. * Implemented lower and upper bounds to TimeField
  125. * Passing old text to the Changed event handler
  126. * Extract methods on ListView to make it controlable from other controls
  127. 0.70: Bug fixes (320, 321, 306, 304, 291, 299, 303); Surface ListView.ListWrapper, surface various internal methods for use in ListView; Allow list item selection; ; 0.65: Added new TimeField from Jörg Preiß; Fixes for Backtab by Martin Björkström; ListView now supports simple selection; Bug fixes by giladlevi, Daniel Cazzulino and Marius Ungureanu; New Application.Run of T entry point by Daniel Cazzulino; Added various View methods to bring forward, backwards and move views in the hierarchy; Switch to Portable PDBs by Daniel Cazzulino; Dims can now be compared by Daniel Cazzulino; OnMenuOpen handler by giladlevi; Various memory usage optimizations by giladlevi; FileDialog.FilePath is now a full path by Yanwei Wang; ISupportInitialize/ISupportInitializeNotification is now supported thanks to the work from Daniel Cazzulino; Support for non-modal TopLevels by Daniel Cazzulino and Adrian Alonso; 0.24: the Windows driver implements WakeUp, allowing some scenarios like bug #207 to be fixed;
  128. 0.23: Better support for disabled menu items; Raises text changed event after the internals have been updated; Fix Caps-NumLock; Alt-HotKey now work on menus
  129. 0.22: Correct vertical scrollview behavior, Small curses driver fix for terminals without mouse support, TextView support for scrolling, Surface Used property on TextField, Surface Cursor on RadioGroup.
  130. 0.21: Introudce Attribute.Make to more easily create attributes, and fix a bug in the file panel.
  131. 0.20: Expose some of the CursesDriver APIs
  132. 0.19: PageUpDown updates (GaikwadPratik); Fixes in multi-line labels ([email protected]); Support Delete char in TextView (Greg Amidon); Prevent empty TextViews from crashing; Allow TextFields to be updated on the Changed event.
  133. 0.18: Fixes hotkeys for menus (Sang Kil); Fixes RemoveAll for all containers; Allows Toplevels with no views; Fixes FileDialog layout; Prevent crash in TextView
  134. 0.17: Unix, dynamically load ncurses library to support different configurations, and not require -dev on Linux, various bug fixes.
  135. 0.16: Support for Shift-Tab on Windows (fix by @mholo65)
  136. 0.15: WindowsDriver fix for Legacy Console keyboard input (issue #105)
  137. 0.14: WindowsDriver fix for EventType size.
  138. 0.13: Fixes keyboard input for Alt-Gr and numbers.
  139. 0.12: Fixes the text editor merge line command.
  140. 0.11: Simplify TextField implementation, fixes a couple of editing bugs.
  141. 0.10: Fix unicode rendering for TextField, and bring F# example
  142. 0.9: File Open/File Save dialogs, HexView, Windows Driver allows resizing, mouse events, faster (thanks to Nick Van Dyck, nickvdyck for the contribution!), smaller bug fixes,
  143. 0.8: Completes keyboard support on Windows; Fixes delete on Windows, some layout fixes.
  144. 0.7: terminal resizing on Linux propagates sizes with new layout system, and new features on the layout system (documented)
  145. 0.6: new layout system, multi-line textview editor, Linux bug fix for .NET Core
  146. 0.5: support Linux with .NET Core, Windows driver fixes.
  147. 0.4: hotkey handling fix for RadioButtons
  148. 0.3: Fix Windows key input to not echo characters on console, proper Fkey mapping
  149. 0.2: Auto-detect the best console
  150. </PackageReleaseNotes>
  151. </PropertyGroup>
  152. <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
  153. <DebugType></DebugType>
  154. </PropertyGroup>
  155. <ItemGroup>
  156. <PackageReference Include="NStack.Core" Version="0.14.0" />
  157. </ItemGroup>
  158. <ItemGroup>
  159. </ItemGroup>
  160. <!--<ItemGroup>
  161. <Reference Include="NStack">
  162. <HintPath>..\..\..\Users\miguel\.nuget\packages\nstack.core\0.14.0\lib\netstandard2.0\NStack.dll</HintPath>
  163. </Reference>
  164. </ItemGroup>-->
  165. <ItemGroup>
  166. <None Remove="ConsoleDrivers\#ConsoleDriver.cs#" />
  167. </ItemGroup>
  168. <ItemGroup>
  169. <PackageReference Include="SauceControl.InheritDoc" Version="1.0.0">
  170. <PrivateAssets>all</PrivateAssets>
  171. <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
  172. </PackageReference>
  173. </ItemGroup>
  174. </Project>