Просмотр исходного кода

Add SetConsoleCursorInfo and GetConsoleCursorInfo to sys/windows package

Christian Seibold 2 лет назад
Родитель
Сommit
852c8b533c
2 измененных файлов с 8 добавлено и 0 удалено
  1. 2 0
      core/sys/windows/kernel32.odin
  2. 6 0
      core/sys/windows/types.odin

+ 2 - 0
core/sys/windows/kernel32.odin

@@ -393,6 +393,8 @@ foreign kernel32 {
 	GetConsoleScreenBufferInfo :: proc(hConsoleOutput: HANDLE, lpConsoleScreenBufferInfo: PCONSOLE_SCREEN_BUFFER_INFO) -> BOOL ---
 	SetConsoleScreenBufferSize :: proc(hConsoleOutput: HANDLE, dwSize: COORD) -> BOOL ---
 	SetConsoleWindowInfo :: proc(hConsoleOutput: HANDLE, bAbsolute : BOOL, lpConsoleWindow: ^SMALL_RECT) -> BOOL ---
+	GetConsoleCursorInfo :: proc(hConsoleOutput: HANDLE, lpConsoleCursorInfo: PCONSOLE_CURSOR_INFO) -> BOOL ---
+	SetConsoleCursorInfo :: proc(hConsoleOutput: HANDLE, lpConsoleCursorInfo: PCONSOLE_CURSOR_INFO) -> BOOL ---
 
 	GetDiskFreeSpaceExW :: proc(
 		lpDirectoryName: LPCWSTR,

+ 6 - 0
core/sys/windows/types.odin

@@ -3941,8 +3941,14 @@ CONSOLE_SCREEN_BUFFER_INFO :: struct {
 	dwMaximumWindowSize: COORD,
 }
 
+CONSOLE_CURSOR_INFO :: struct {
+	dwSize: DWORD,
+	bVisible: BOOL,
+}
+
 
 PCONSOLE_SCREEN_BUFFER_INFO :: ^CONSOLE_SCREEN_BUFFER_INFO
+PCONSOLE_CURSOR_INFO :: ^CONSOLE_CURSOR_INFO
 
 //
 // Networking