forked from LeenkxTeam/LNXSDK
		
	
		
			
				
	
	
		
			63 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Haxe
		
	
	
	
	
	
			
		
		
	
	
			63 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Haxe
		
	
	
	
	
	
| package eval.luv;
 | |
| 
 | |
| enum abstract TtyMode(Int) {
 | |
| 	var NORMAL = 0;
 | |
| 	var RAW = 1;
 | |
| 	var IO = 2;
 | |
| }
 | |
| 
 | |
| enum abstract VTermState(Int) {
 | |
| 	var SUPPORTED = 0;
 | |
| 	var UNSUPPORTED = 1;
 | |
| }
 | |
| 
 | |
| /**
 | |
| 	Consoles.
 | |
| 
 | |
| 	@see https://aantron.github.io/luv/luv/Luv/Tty
 | |
| **/
 | |
| @:using(eval.luv.Handle)
 | |
| @:using(eval.luv.Stream)
 | |
| @:coreType abstract Tty to Handle to Stream to Stream.TStream<Tty> {
 | |
| 	/**
 | |
| 		To be called when the program exits.
 | |
| 		Resets TTY settings to default values for the next process to take over.
 | |
| 	**/
 | |
| 	static public function resetMode():Result<Result.NoData>;
 | |
| 
 | |
| 	/**
 | |
| 		Controls whether console virtual terminal sequences are processed by libuv
 | |
| 		or console. Useful in particular for enabling ConEmu support of ANSI X3.64
 | |
| 		and Xterm 256 colors. Otherwise Windows10 consoles are usually detected
 | |
| 		automatically.
 | |
| 
 | |
| 		This function is only meaningful on Windows systems. On Unix it is silently
 | |
| 		ignored.
 | |
| 	**/
 | |
| 	static public function setVTermState(state:VTermState):Void;
 | |
| 
 | |
| 	/**
 | |
| 		Get the current state of whether console virtual terminal sequences are
 | |
| 		handled by libuv or the console.
 | |
| 
 | |
| 		This function is not implemented on Unix, where it returns `UVError.UV_ENOTSUP`.
 | |
| 	**/
 | |
| 	static public function getVTermState():Result<VTermState>;
 | |
| 
 | |
| 	/**
 | |
| 		Allocates and initializes a TTY handle.
 | |
| 
 | |
| 		The handle should be cleaned up with `eval.luv.Handle.close` when no longer needed.
 | |
| 	**/
 | |
| 	static public function init(loop:Loop, file:File):Result<Tty>;
 | |
| 
 | |
| 	/**
 | |
| 		Sets the TTY's mode.
 | |
| 	**/
 | |
| 	public function setMode(mode:TtyMode):Result<Result.NoData>;
 | |
| 
 | |
| 	/**
 | |
| 		Retrieves the current window size.
 | |
| 	**/
 | |
| 	public function getWinSize():Result<{width:Int, height:Int}>;
 | |
| } |