документация на самом деле не упоминает, как удалить окно или панель;
c api проклятий имеет функции delwin
и del_panel
, но ни одна из них не доступна в python api;Означает ли это, что правильный способ удаления окна в python - просто отсоединить все ссылки на него и позволить ему собирать мусор?относится ли то же самое к панели?
единственное место, где я нашел del_panel
, вызывается в модуле python curses.panel
, в деаллокаторе:
static void
PyCursesPanel_Dealloc(PyCursesPanelObject *po)
{
PyObject *obj = (PyObject *) panel_userptr(po->pan);
if (obj) {
(void)set_panel_userptr(po->pan, NULL);
Py_DECREF(obj);
}
(void)del_panel(po->pan);
if (po->wo != NULL) {
Py_DECREF(po->wo);
remove_lop(po);
}
PyObject_DEL(po);
}