Page 1 of 1
Drag&drop?
Posted:
Sun May 03, 2009 10:27 am
by ikm
Ars,
скажи, ты пробовал, работают ли твои изменения в drag&drop в группах, перед тем как их комиттить?
Re: Drag&drop?
Posted:
Sun May 03, 2009 4:13 pm
by Ars
Да, я проверял в висте и 9-й кубунте. Все нормально, и по драг-дропу, и по кнопкам. Почему в предыдущем диалоге падало - я понял, сейчас словари выбираю по id и падений ни разу не было замечено.
А что, что то не так?
Re: Drag&drop?
Posted:
Sun May 03, 2009 4:26 pm
by ikm
Конечно не так. Перемещение словарей внутри группы не работает - словари просто удаляются. Добавление новых словарей происходит всегда в конец группы, даже если я четко выбираю место. куда их кинуть. Неужто это сложно заметить?
Сделай ты просто -- после системного дропа выкидывай все возможные дупы. то есть:
void MyClass::dropAcrion()
{
QtClass::dropAction();
removeDuplicates();
}
И раскомментируй insertRows() и setData(). Вот тебе и решение. И блин -- ну не надо ломать-то функционал, всё ж работало раньше, а теперь непонятно что происходит;)
Re: Drag&drop?
Posted:
Sun May 03, 2009 6:55 pm
by Ars
ммм... проблему с удалением после дропа я заметил и пофиксил, а насчет порядка, честно говоря, мне это было неочевидно.
К тому же я не совсем понял, каким образом обрабатывается дроп - получается, каким-то волшебным образом вставляются N строк без проверок существования чего-либо. Ладно, сейчас верну и попробую сделать фильтр, но имхо это как-то неправильно - нигде нет явной обработки факта перетаскивания.
Re: Drag&drop?
Posted:
Sun May 03, 2009 6:59 pm
by ikm
Явная обработка есть в базовом классе Qt. По умолчанию Qt сама всё делает, используя функции insert/removeRows() и setData().