Открыть главное меню

UIX DlgDelete

UIX_DlgDelete — удаление диалога по указателю на его экземпляр.

Содержание

Прототип

UINT32 UIX_DlgDelete( void * dlg );

dlg - указатель на экземпляр диалога.

Возвращает RESULT_OK в случае успеха.

Описание

Функция удаляет экземпляр диалога и все его дочерние диалоги. Также исправляется у родителя (если таковой был) указатель на дочерний диалог.


Примеры

// функция создает "композитор сообщения" поверх текущего диалога
UINT32 openMsgComposer( EVENT_STACK_T * ev_st, APPLICATION_T * app, CONTACT_T * contact )
{	THISAPP_T *	papp = thisapp(app);	void *	d;	// pDialog	char	hdr[64];	// запомним текущий контакт	papp->mc_contact = contact;	// создаем диалог ввода текста	d = UIX_CreateInputDlg(app, 1024*2-1, NULL,	INP_USE_DIGITAL | INP_USE_ENGLISH | INP_USE_OTHERS,	// цифры, латиница и остальные языки	mcOnDone);	if ( d == NULL )	// если диаог не удалось создать	return RESULT_FAIL;	if ( UIX_DialogSetChildDlg(app->dialog, d) != RESULT_OK )	// если текущему диалогу не удалось выставиь дочерний	UIX_DlgDelete(d);	// удалим созданный диалог	// Динамический заголовка диалога	sprintf(hdr, "Message to '%s'", contact->name);	UIX_DlgSetTitle(d, hdr, GetUINStatusIcon(contact->flags));	// Показать диалог	return UIX_Render(app->dialog);
}

Более наглядных примеров нету т.к. обычно используется UIX_DeleteTopDlg

См. также