LINUX.ORG.RU
ФорумTalks

Qt меня немного пугает.


0

1

Все таки Qt плющит и таращит. Проверьте кому не лень. Это в 4.7.

Итак, тема пластик.
Смотрим в документацию.
QStyleOptionTitleBar
titleBarState - принимает Qt::WindowStates
state - принимает QStyle::State

Но, смотрим в код того QPlastiqueStyle и видим следующее:
bool active = (option->titleBarState & QStyle::State_Active);

То есть с точностью до наоборот.
Теперь вопрос, как оно работает то? :)

★★
Ответ на: комментарий от iceberk

Оно работает не правильно, для отрисовки титла активного надо в titleBarState дать QStyle::State_Active. Отписался в баг репорт, посмотрим, будет ли решено.

zJes ★★
() автор топика
Ответ на: комментарий от dt1

> ну там вообще не написано, какие значения принимает titleBarState

This is basically the window state of the underlying widget. See also QWidget::windowState().

Мельком глянул, такая проблема только для пластика. :)
Остальные берут нормально, WindowActive.

zJes ★★
() автор топика
Ответ на: комментарий от dt1

Хотя да, я скорее всего ничего не понимаю, полез копать дальше по коду Qt, это естественное состояние что в титлбарстейт фигачат State_Active, полностью игнорируя WindowActive. Выглядит дибильно. Хотя, все таки это баг, и если не в коде, то в документации.

zJes ★★
() автор топика
Ответ на: комментарий от zJes

это баг в коде, не отраженный в документации :) вряд ли они код станут править, скорее всего сошлются на то, что это повлияет на уже написанные программы

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