конкретных обязанностей в многочисленных моделях, которые упоминаются как Model-View-Presenter варьироваться. В основном они различаются в зависимости от того, какой контроль над представлением представлен ведущим. Мартин Фаулер подробно обсуждает ряд различных вариантов в своей главе на GUI Architectures, это стоит прочитать.
Посмотрите на Presenter First, так как он касается адаптеров и обязанностей на некоторой глубине.
И стоит Passive View и Supervising Controller.
модель (или модель предметной области) == логическое представление сущностей, участвующих в системе, включая их состояние и поведение
ведущий == прослушивания событий из точки зрения (и, возможно, модель) и обслуживание этих запросов, преобразовать модель типы в виде вида (пассивный вид), это действительно сантехника, чтобы скрыть представление и модель друг от друга. Реагирует на стимул от пользователя.
вид == представление: визуальное представление модели, пользователь может взаимодействовать, сбор пользовательского ввода
Ваших конкретные вопросов вокруг обратных вызовов и получения стиля ячейки сетки оба собираются привлечь обработки вида события от сетки и повышения событий до ведущего, чтобы запросить действия или получить данные из модели. Это идеально подходит для обратного вызова, когда содержимое ячейки обновляется (это должно быть опубликовано ведущим, чтобы ведущий мог проверить изменение модели и внести изменения в модель).
Для стиля ячейки сетки я думаю, что для какого-то адаптера в представлении может потребоваться перевести состояние из модели (полученное через событие от представления до ведущего) в информацию стиля ячейки сетки. Это может произойти в презентаторе, но я лично предпочел бы, чтобы ведущий не знал о виджетах в представлении.