<table><tr><td style="">sitter created this revision.<br />sitter added a reviewer: cfeck.<br />Herald added a project: Frameworks.<br />Herald added a subscriber: kde-frameworks-devel.<br />sitter requested review of this revision.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D22375">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>this mimics QQC's BusyIndicator and more specifically our styling of it.</p>
<p>KBIW loads an icon from the icon theme, scales it to the widget size<br />
and rotates it 360 degrees every second for as long as it is running.</p>
<p>the intent here is to give an easy to use spinner implementation that looks<br />
like and feels (to the developer) like the one seen in plasma/kirigami.<br />
this does however somewhat infringe on the business of kpixmapsequence,<br />
so here's why KBIW is better for this specific use case:</p>
<ul class="remarkup-list">
<li class="remarkup-list-item">not pixmap based</li>
<li class="remarkup-list-item">because it's not pixmap based scaling works much better for SVGs</li>
<li class="remarkup-list-item">since we paint a QIcon directly we don't have to manually faff about with pixmap copies/segments</li>
<li class="remarkup-list-item">more robust as themes may incorrectly or not at all implement the animation icon spec (which is rather offhandedly specified really). KBIW takes care of the animation so the theme need only supply a very standard icon and there is no change for things to go wrong more or less</li>
<li class="remarkup-list-item">because this fully leverages QIcon/KIconThemes we get full advantage of SVG coloring. i.e. when using a dark theme the icon is correctly using a contrasting color</li>
<li class="remarkup-list-item">users of KBIW no longer need to explicitly use KIconLoader to resolve a pixmap path</li>
</ul></div></div><br /><div><strong>TEST PLAN</strong><div><p>widget works.<br />
not sure an autotest is worth here, there's not much to assert.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R236 KWidgetsAddons</div></div></div><br /><div><strong>BRANCH</strong><div><div>master</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D22375">https://phabricator.kde.org/D22375</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>src/CMakeLists.txt<br />
src/kbusyindicatorwidget.cpp<br />
src/kbusyindicatorwidget.h<br />
tests/CMakeLists.txt<br />
tests/kbusyindicatorwidgettest.cpp</div></div></div><br /><div><strong>To: </strong>sitter, cfeck<br /><strong>Cc: </strong>kde-frameworks-devel, apol, LeGast00n, michaelh, ngraham, bruns<br /></div>