From a300dd492b2a6f9996f714da72b13a79aa2662e5 Mon Sep 17 00:00:00 2001 From: Christian Burger Date: Tue, 26 Apr 2022 20:53:14 +0200 Subject: [PATCH] added ncurses `addnwstr()` to window --- Window.cpp | 5 +++++ include/NCursesPtyWindow/Window.hpp | 19 +++++++++++++------ 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/Window.cpp b/Window.cpp index 96e7b0e..46a3fec 100644 --- a/Window.cpp +++ b/Window.cpp @@ -10,6 +10,11 @@ namespace krikkel::NCursesPtyWindow : NCursesWindow(lines, columns, y, x) {} + int Window::addnwstr(const wchar_t *wstr, int n) + { + return ::waddnwstr(w, wstr, n); + } + int Window::add_wch(const cchar_t *character) { return ::wadd_wch(w, character); diff --git a/include/NCursesPtyWindow/Window.hpp b/include/NCursesPtyWindow/Window.hpp index cf4f59a..938c929 100644 --- a/include/NCursesPtyWindow/Window.hpp +++ b/include/NCursesPtyWindow/Window.hpp @@ -10,30 +10,37 @@ #include +#ifdef addnwstr +inline void UNDEF(addnwstr)(const wchar_t *wstr, int n) { addnwstr(wstr, n); } +#undef addnwstr +#define addnwstr UNDEF(addnwstr) +#endif + #ifdef add_wch inline void UNDEF(add_wch)(const cchar_t *character) { add_wch(character); } #undef add_wch #define add_wch UNDEF(add_wch) #endif -#ifdef get_wch -inline void UNDEF(get_wch)(wint_t *character) { get_wch(character); } -#undef get_wch -#define get_wch UNDEF(get_wch) -#endif - #ifdef ins_wch inline void UNDEF(ins_wch)(cchar_t *character) { ins_wch(character); } #undef ins_wch #define ins_wch UNDEF(ins_wch) #endif +#ifdef get_wch +inline void UNDEF(get_wch)(wint_t *character) { get_wch(character); } +#undef get_wch +#define get_wch UNDEF(get_wch) +#endif + namespace krikkel::NCursesPtyWindow { class Window : public NCursesWindow { public: Window(int lines, int columns, int y, int x); + int addnwstr(const wchar_t *wstr, int n); int add_wch(const cchar_t *character); int ins_wch(const cchar_t *character); int get_wch(wint_t *character);