Так, с активацией кнопок после выделения любой строки в таблице разобрался
Все как всегда лежало на поверхности!
Добавляем следующий код после секции
columns для таблицы планов:
listeners: {
selectionchange: function(selModel, selections) {
var notSelections = selections.length === 0;
win.down('#planedit').setDisabled(notSelections);
win.down('#plandelete').setDisabled(notSelections);
}
}
И для таблицы новостей такой же, код - только для функции
down указываем другие
id кнопок.
Собственно этого достаточно что бы не активные кнопки "Редактировать" и "Удалить" стали активными.
Так же стало ясно, что как для получения данных с сервера, так и для отправки данных на него (новых, измененных или удаления данных) нужно использовать все тот же
Store... Неожиданно, но вполне логично... Спасибо все тому же примеру
Ext.data.writer.Writer Example.
К моему глубочайшему сожалению, все данные с которому требуется оперировать нужно таки запихивать в ответ сервера сразу - что, на мой взгляд не есть гуд - у меня, в некоторых случаях данных может быть для одной таблицы очень много и все их передавать (пусть и порциями - спасибо
PagingToolbar) не резон, при том что форма редактирования может быть и не вызвана за весь сеанс (
например, что-то искалось по заголовкам не совсем конкретное, для чего нельзя было использовать поиск - возможно все страницы будут пролистаны вручную, а форма редактирования так и не будет открыта)
И все ещё остается вопрос на повестке дня:
Как на добавление и редактирование создать форму и передать туда данные по выбранной записи (хотя бы
id, из
Store, а не порядковый в таблице)? И как засунуть его потом в запросы
Store который уже будет использоваться в созданной форме (использовать тот же что и в таблице считаю не рациональным в виду объемов передаваемых данных)?