1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- //
- // handles.cs: OO wrappers for some curses objects
- //
- // Authors:
- // Miguel de Icaza ([email protected])
- //
- // Copyright (C) 2007 Novell (http://www.novell.com)
- //
- // Permission is hereby granted, free of charge, to any person obtaining
- // a copy of this software and associated documentation files (the
- // "Software"), to deal in the Software without restriction, including
- // without limitation the rights to use, copy, modify, merge, publish,
- // distribute, sublicense, and/or sell copies of the Software, and to
- // permit persons to whom the Software is furnished to do so, subject to
- // the following conditions:
- //
- // The above copyright notice and this permission notice shall be
- // included in all copies or substantial portions of the Software.
- //
- // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
- // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
- // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
- // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- //
- namespace Unix.Terminal;
- #pragma warning disable CS1591 // Missing XML comment for publicly visible type or member
- public partial class Curses
- {
- public class Window
- {
- public readonly nint Handle;
- static Window ()
- {
- initscr ();
- Standard = new Window (console_sharp_get_stdscr ());
- Current = new Window (console_sharp_get_curscr ());
- }
- internal Window (nint handle) { Handle = handle; }
- public static Window Standard { get; }
- public static Window Current { get; }
- public int wtimeout (int delay) { return Curses.wtimeout (Handle, delay); }
- public int notimeout (bool bf) { return Curses.notimeout (Handle, bf); }
- public int keypad (bool bf) { return Curses.keypad (Handle, bf); }
- public int meta (bool bf) { return Curses.meta (Handle, bf); }
- public int intrflush (bool bf) { return Curses.intrflush (Handle, bf); }
- public int clearok (bool bf) { return Curses.clearok (Handle, bf); }
- public int idlok (bool bf) { return Curses.idlok (Handle, bf); }
- public void idcok (bool bf) { Curses.idcok (Handle, bf); }
- public void immedok (bool bf) { Curses.immedok (Handle, bf); }
- public int leaveok (bool bf) { return Curses.leaveok (Handle, bf); }
- public int setscrreg (int top, int bot) { return wsetscrreg (Handle, top, bot); }
- public int scrollok (bool bf) { return Curses.scrollok (Handle, bf); }
- public int wrefresh () { return Curses.wrefresh (Handle); }
- public int redrawwin () { return Curses.redrawwin (Handle); }
- #if false
- public int wredrawwin (int beg_line, int num_lines)
- {
- return Curses.wredrawwin (Handle, beg_line, num_lines);
- }
- #endif
- public int wnoutrefresh () { return Curses.wnoutrefresh (Handle); }
- public int move (int line, int col) { return wmove (Handle, line, col); }
- public int addch (char ch) { return waddch (Handle, ch); }
- //public int echochar (char ch)
- //{
- // return Curses.wechochar (Handle, ch);
- //}
- public int refresh () { return Curses.wrefresh (Handle); }
- }
- // Currently unused, to do later
- internal class Screen
- {
- public readonly nint Handle;
- internal Screen (nint handle) { Handle = handle; }
- }
- #pragma warning restore CS1591 // Missing XML comment for publicly visible type or member
- }
|