diff --git a/src/include/mask.cpp b/src/include/mask.cpp index 90548bb1e..f8dc0644f 100755 --- a/src/include/mask.cpp +++ b/src/include/mask.cpp @@ -561,6 +561,30 @@ void TMask::enable_page( } } } +// @mfunc Abilita/disabilita una pagina + +void TMask::enable_single_page( + byte page, // @parm Pagina da abilitare/disabilitare + bool on) // @parm Operazione da svolgere: + // + // @flag true | Abilita la pagina

(default) + // @flag false | Disabilita la pagina

+{ + if (page > 0 && page < _pages) // Non posso spegnere la prima pagina + { + CHECK(_notebook, "Can't find an useful notebook"); + const short tabs = xvt_notebk_get_num_tabs(_notebook); + + _enabled.set(page, on); + for (int p = tabs - 1; p >= 0; p--) + xvt_notebk_rem_tab(_notebook, p); + for (int p = 0; p < _pages; p++) + if (_enabled[p]) + xvt_notebk_add_page(_notebook, _pagewin[p], NULL, NULL, p); + if (!on) + _page = -1; + } +} // Controlla lo stato di abilitazione di una pagina // Certified 99% diff --git a/src/include/mask.h b/src/include/mask.h index fb8fcca85..5cf35f66e 100755 --- a/src/include/mask.h +++ b/src/include/mask.h @@ -404,7 +404,9 @@ public: void show_page(int p); // @cmember Abilita/disabilita una pagina e tutte le successive void enable_page(byte p, bool on = true); - // @cmember Disabilita una pagina e tutte le successive (chiama ) + // @cmember Abilita/disabilita una pagina + void enable_single_page(byte p, bool on = true); + // @cmember Disabilita una pagina e tutte le successive (chiama ) void disable_page(byte p) { enable_page(p, false); } // @cmember Controlla se una pagina e' disabilitata (true se disabilitata)