[KDE/Mac] Review Request 128097: optional mode to draw checked menu items with only a check mark
René J.V. Bertin
rjvbertin at gmail.com
Sun Jun 5 15:23:27 UTC 2016
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/128097/
-----------------------------------------------------------
(Updated June 5, 2016, 5:23 p.m.)
Review request for KDE Software on Mac OS X and Yichao Yu.
Changes
-------
As requested, a couple screenshots to give an idea of the rendering differences.
Since I'm working on the config UI anyway I'm looking into adding a menu preview to stylepreview.ui . That's something I've been missing for a while already and it would make sense to add it now.
Repository: qtcurve
Description
-------
This introduces an option (hidden for now) to adorn checked menu items with only a check mark rather than the same widget that is used for checkboxes or radio buttons (for sets of mutually exclusive menu items).
Initially I implemented this by simply skipping the widget "box" and drawing only the checkbox tick for both kinds of menu items (cf. https://bugs.kde.org/show_bug.cgi?id=363895). I then realised that this looks weird when the user uses a very tall or tiny font (or has a high DPI screen). Therefore the check is now generated using the UniCode `Check Mark` glyph (? cf. http://www.fileformat.info/info/unicode/char/2713/index.htm) rendered in the menu font (or `Apple Symbols`, on OS X).
A new member is introduced in the `Options` structure that controls this new behaviour. Its value is read from and written to the config file, but I have not yet implemented its UI control through the configuration interface. I'll want some guidance for that step.
I propose to make this the default behaviour on OS X, so that popup menus can be closer in appearance to the native menus from the toplevel menubar (those menus are not rendered through Qt, and use a single check mark too).
The GTk2 style already rendered checked menu items like this so I did not change anything there (and don't really plan to touch that code at all).
Diffs
-----
gtk2/common/common.h cb0ec87
gtk2/common/config_file.cpp 96936e2
qt4/common/common.h 313db33
qt4/common/config_file.cpp c58ad1a
qt4/style/qtcurve.cpp 951ec1a
qt5/common/common.h bb103fd
qt5/common/config_file.cpp 362381a
qt5/style/qtcurve_api.cpp b8535da
qt5/style/qtcurve_primitive.cpp a8a2bed
Diff: https://git.reviewboard.kde.org/r/128097/diff/
Testing
-------
On OS X 10.9 and Linux with Qt 4.8.7 and Qt 5.6.0 .
File Attachments (updated)
----------------
QtCurve, check marks only on X11
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/05/ef4fe141-c028-4cc0-b5dd-3edae7dd600b__KPT-qtcurveFontTicks-X11.png
QtCurve with the "standard" checkable menu items, X11
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/05/a31bdbc8-ca8e-4af7-a48a-d6d5386b3a7e__KPT-qtcurveStandard-X11.png
QtCurve checkmark-only popup menu on OS X (without KDE platform theme plugin)
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/05/7cd3ceb0-7049-44b0-80ff-adbf21e82133__noKPT-qtcurveFontTicks.png
QtCurve standard popup menus on OS X, no platform theme plugin
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/05/3ceb9b1d-c484-4296-ba47-778263f50439__noKPT-qtcurveStandard-macintosh.png
Thanks,
René J.V. Bertin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-mac/attachments/20160605/23683d20/attachment.html>
More information about the kde-mac
mailing list