LINUX.ORG.RU

gtk: необходимо ли здесь наследование?


0

0

Сейчас: в теле функции создается GtkDialog, в него упаковываются GtkEntry и пара кнопок. Хочу: когда содержимое GtkEntry становится пустым, одной из кнопок устанавливалось sensitivity = FALSE.

И возник у меня вопрос, как это правильно делается? Первый подход: сделать отдельный файл, в котором будет создаваться этот самый диалог, добавляться все контрольки, а также навешиваться обработчики на сигналы и сами слоты; т.е. использование в других частях программы будет выглядеть как:

 #include "my-custom-dialog.h"

 GtkWidget* dialog = make_my_custom_dialog("Edit", "Cancel", "initial text")
 gtk_widget_show_all(dialog);
 gtk_dialog_run(GTK_DIALOG(dialog));
То есть на лицо откровенная композиция.

А есть другой подход: сделать класс-наследник от GtkDialog, в конструкторе которого будут добавляться необходимые виджеты и устанавливаться сигналы.

Какой подход более правильный? Оба выглядят неплохо, однако во втором случае смущает, что я делаю слишком узкую специализацию, которая не будет использоваться для дальнейшего наследования.

Спасибо.

anonymous

Свой виджет - правильный выбор.
При необходимости всегда можно добавить свойств и методов для повышения универсальности.

anonymous
()

первый. огород лепить тут нет нужды.

Deleted
()

Первый .. или +1 ;)

Mrak ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.