<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" content="1" /><style type="text/css">p, li { white-space: pre-wrap; }</style></head><body style=" font-family:'Segoe'; font-size:9pt; font-weight:400; font-style:normal;">Am Sunday 07 June 2009 schrieb Anders Lund:<br>
> Would it be possible to do it at kde library level?<br>
for KDE widgets, sure. but you'd have to reimplement all painting routines (QPainter::drawText() sets the mnemonic flag) - and thus all widgets just for this purpose... and as soon as an app says e.g. 'new QLabel("text", parent)' you're out :-( (so you shifted the problem from "telling styles to not do weird things on mnemonics" to "telling all apps to migrate to KDE classes only" ... :-\<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>overmore KDE apps would stop to integrate on other DEs (while one could check the environment and/or provide a checkbox for this) but "we need to reimplement QLabel to override Qt's mnemonic strategy and thus you must not use e.g. QLabel - or any 3rd party inheritor" is afaik the showstopper for this.<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>another option was to force the usage of a general proxystyle - but this can lead to quite some trouble as well (i.e. "forcing" maybe the wrong approach, "providing" was likely better - i wrote one to allow e.g. all styles to make use of the XBar and later on the GMBv2 protocol - no issues on some rough tests, but also nothing i'd "force load" by any app) - unfortunately /not/ autolading it is rather inconvenient... i'm still looking for a more transparent solution<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>the solution to your problem is however as simple as mentioned:<br>
make it configurable or usefully preset by KStyle and ask at least styles shipped with KDE not to override it.<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>and if another style breaks that, it's users will be either confident with it or start mourning (the reason why i made it configurable...).<br>
as styles are a) plugins and b) expression of the users personal taste, i don't see any problem on this. *shrug*<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>Thomas</p></body></html>