API Review: Tracking down the last beasties

Kevin Ottens ervin at kde.org
Mon Oct 27 23:44:51 CET 2008


Hello all,

I've been taking some time to complete the API reviews, we only have a few 
smallish issues left. Since Aaron basically said he'd not be really around 
this week[*], but still we've to move on we'll proceed in the following way:
 - This mail contains the list of changes I'm planning;
 - I'll wait for two days to see if any big problems with my changes appear 
(aka I'll ignore bikeshedding);
 - After the two days period I'll apply the changes which didn't raise 
problems.

I'm not exactly confortable with doing that without some ack. from the 
maintainer, especially since we had quite a few disagreement in the past, but 
that's probably the best plan I can come up with to still meet the deadline on 
the 31st[**].

So, without more babbling on my side, here is the list of changes I'm 
proposing:

- ConfigXml will become ConfigLoader
Rationale: move away from the Xml naming (implementation detail, not relevant 
at use time), make it more consistent with UiLoader (similar use for ui files)

- Containment::(add|remove)ToolBoxTool(QAction *action) will become 
Containment::(add|remove)ToolBoxAction(QAction *action)
Rationale: avoid the redundancy in the name, also make it consistent with the 
type of the parameter (QAction*)

- Flash will become FlashingLabel
Rationale: instances of this class are not instances of a super-hero. Just be 
more precise in what it is.

- Icon will become IconWidget
Rationale: Assess that it's really a widget, not a representation of an Icon 
(like KIcon or QIcon).

- PanelSvg will become FrameSvg
Note: This one got discussed at lengths. It'll also impact method names in 
there:
 * resizePanel() => resizeFrame()
 * panelSize() => frameSize()
 * setCacheAllRenderedPanels() => setCacheAllRenderedFrames()
 * cacheAllRenderedPanels() => cacheAllRenderedFrames()
 * panelPixmap() => framePixmap()
 * paintPanel() => paintFrame()
Note2: Just in case I did the same exercise with "BorderSvg", trust me it's 
really not as pleasant, naming the methods was really painful and didn't 
deliver anything interesting. Also, interestingly Plasma::Frame uses 
Plasma::PanelSvg, so that's probably a good match.

- WebContent will become WebView
Rationale: consistency with Qt API, and TreeView.

As you can see we're pretty close to be done, which is good, I'll (at last) be 
able to work on some other funnier stuff. :-)

So not many changes planned. Thanks for your attention.

Regards.

[*] http://aseigo.blogspot.com/2008/10/scheduling.html
[**] That unfortunately excludes AbstractRunner and Service for this deadline, 
but I really don't see a way to meet this deadline for those ones and not have 
a rushed proposal at this point. That's why they'll have to be in the next 
batch (aka they'll prolly make it for 4.2, just not for the 31st).
-- 
Kévin 'ervin' Ottens, http://ervin.ipsquad.net
"Ni le maître sans disciple, Ni le disciple sans maître,
Ne font reculer l'ignorance."
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part.
Url : http://mail.kde.org/pipermail/plasma-devel/attachments/20081027/e0a70d08/attachment.sig 


More information about the Plasma-devel mailing list