crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Проголосуйте, пожалуйста, за несколько багов., Несколько моих багов в багтрекере Qt
Obey-Kun
  опции профиля:
сообщение 20.1.2011, 6:25
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 96
Регистрация: 24.3.2010
Пользователь №: 1556

Спасибо сказали: 3 раз(а)




Репутация:   0  


По порядку.

http://bugreports.qt.nokia.com/browse/QTBUG-15756 — ну тут просто утечка памяти в примере про Undo Framework, причём очень тупая и исправляемая одной строчкой.

http://bugreports.qt.nokia.com/browse/QTBUG-15764 — хотелось бы иметь возможность удалять отменённые команды в QUndoStack. То есть очищать его от отменённых команд, оставляя те, что применены. В баге приведён пример, где такое может понадобиться. Опять же, реализация очень проста, а профита будет много.

http://bugreports.qt.nokia.com/browse/QTBUG-16297 — нужно иметь более низкоуровневый prepareGeometryChange. А именно такой, который бы обновлял bsp trees и прочую информацию о итемах в сцене, но ничего не перерисовывал. Пример я там привёл такой: у меня есть КАД, в этом КАДе есть инструмент-прямоугольник, лежащий в сцене. При изменении, скажем, позиции такого прямоугольника, не обязательно перерисовывать всё в предыдущей и новой позиции, ведь если они пересекаются, то достаточно лишь обновить всё, что лежит вне пересечения. Объяснил коряво. Если хотите более понятного объяснения, напишите в комментах здесь, просто сейчас пол-седьмого утра, а я не спал. Может, картинка что-то прояснит: http://rghost.ru/4005943/image.png

http://bugreports.qt.nokia.com/browse/QTBUG-16762 — нужно добавить информацию в документацию по поводу transformationAnchor == AnchorUnderMouse в QGraphicsView. Там 2 пункта. В баге всё вроде понятно описано.

Заранее спасибо.

Самый важный баг для меня — второй, без его исправления мой проект неполон :(. А если бы они исправили и третий, то мой проект стал бы ГОРАЗДО шустрее.

Сообщение отредактировал Obey-Kun - 20.1.2011, 6:33
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов (1 - 5)
igor_bogomolov
  опции профиля:
сообщение 25.1.2011, 14:18
Сообщение #2


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Цитата(Obey-Kun @ 20.1.2011, 6:25) *
http://bugreports.qt.nokia.com/browse/QTBUG-15764 — хотелось бы иметь возможность удалять отменённые команды в QUndoStack. То есть очищать его от отменённых команд, оставляя те, что применены. В баге приведён пример, где такое может понадобиться. Опять же, реализация очень проста, а профита будет много.
Впервые задействовал QUndoStack и столкнулся с той же самой проблемой: нет никакой возможности удалить команду из QUndoStack. Предполагал что последовательность действий undo, setClean должно решить проблему, а нет. И даже костыль придумать не удаётся. Маразм какой то, как можно было этого не предусмотреть?

Obey-Kun, может ты какой костыль сумел придумать, как удалить команду из стека?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Obey-Kun
  опции профиля:
сообщение 25.1.2011, 17:33
Сообщение #3


Студент
*

Группа: Участник
Сообщений: 96
Регистрация: 24.3.2010
Пользователь №: 1556

Спасибо сказали: 3 раз(а)




Репутация:   0  


Не придумал :(.

Вот ещё пара багов:
http://bugreports.qt.nokia.com/browse/QTBUG-16821 — хотелось бы иметь qFuzzyCompare для геом. фигур (QPointF и пр.)
http://bugreports.qt.nokia.com/browse/QTBUG-16819 — у qFuzzyCompare для qreal и double сейчас ужасный алгоритм. Если одно из сравниваемых чисел равно 0, то алгоритм не сработает. Это задокументировано, но ужасно, т.к. приходится писать костыли, если заранее не знаешь, что сравниваться будет. Там в обсуждении предложили другой алгоритм, нормальный.

Сообщение отредактировал Obey-Kun - 25.1.2011, 17:37
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
igor_bogomolov
  опции профиля:
сообщение 25.1.2011, 17:43
Сообщение #4


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Цитата(Obey-Kun @ 25.1.2011, 17:33) *
Не придумал :(.
Я тоже :(
Даже отнаследовавшись не получить доступ до command_list и macro_list.
Единственный вариант заимствовать классы в свой проект и добавлять нужный функционал
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Obey-Kun
  опции профиля:
сообщение 25.1.2011, 17:56
Сообщение #5


Студент
*

Группа: Участник
Сообщений: 96
Регистрация: 24.3.2010
Пользователь №: 1556

Спасибо сказали: 3 раз(а)




Репутация:   0  


Ну да, или можно унаследовать QUndoStack и сделать типа "временный" стэк с возможностью добавления в главный... костылище.

Сообщение отредактировал Obey-Kun - 25.1.2011, 18:02
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
igor_bogomolov
  опции профиля:
сообщение 27.1.2011, 15:01
Сообщение #6


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Проголосуйте тогда и за мой баг, может быстрее решат.
http://bugreports.qt.nokia.com/browse/QTBUG-16947
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.3.2024, 14:29