Про Look and Feel

Пользователи мак-версии RawDigger вероятно заметили уже, что окошко гистограмм очень широкое.

А широкое оно оттого, что контролов много. Окну же сказано уменьшаться только до тех пор, пока все контролы видны.

А вот как это отрисовывает Qt под разными ОС (окно завернуто в минимальную ширину):

По клику откроется полный размер.

Сверху вниз:
  • Mac Native (и такой spacing так и задуман) - ширина окна 1088 пикселов и меньше не делается.
  • Результат применения setStyle(QStyleFactory::create("windows")); - 908 пикселов, на 20% меньше.
  • Win7 Native (без каких-то настроек spacing) - 821 пиксел, еще на 10% меньше.
Эксперимент не полностью чистый: маковский десктоп 1920x1200 и никаких настроек шрифтов не делалось, на винде шрифты увеличены (115%), а разрешение монитора 2560x1600. В полностью одинаковых условиях винды, скорее всего, будут еще компактнее (пробовать страшно, потрогав размер шрифта у винды есть риск обратно не вернуться).

Родной маковский выглядит просторнее, но вот в редких случаях хотелось бы иметь возможность сделать все плотненько. Но разумным способом - никак (можно выписать свой StyleSheet, но хочется то бе этого). Имею сказать, что виндового размера контролов лично мне на маке очень не хватает.

Update: Добрые люди подсказали про Qt::WA_MacMiniSize. Результат - 859 пикселов ширины. Чуть хуже винды, но непринципиально. Хотя, конечно, спинбоксы по мне выглядят чуть мелковато.

Comments

Не вижу ничего плохого в данном случае в setStyle(QStyleFactory::create("windows")). Логика тут такая у меня - на маке, вообще говоря, подобный интерфейс в нативном look & feel выглядел бы совсем иначе, типа так - основное окно - только гистограмма, кнопки - сверху на тулбаре, элементы управления - на сайдбарах. Но профессиональный софт имеет право отклоняться от правил и канонов как угодно для удобства этих самых профессионалов: выпускаемый самим Эпплом Logic Pro тому подтверждение. А раз уж идем по этому пути - можно и на нестандартность элементов управления забить.

В реальной жизни кнопки управления используются часто. Т.е. "приборный интерфейс", со всеми ручками выведенными на панель - по моему мнению нужен.

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

Кстати, лейбл слева от чекбокса - это против вообще всех гайдлайнов в природе :)

А справа - говно получается.