[Qt-creator] Project <-insert cool name here->
Nicolas Arnaud-Cormos
nicolas.arnaud-cormos at kdab.com
Thu Nov 4 09:40:40 CET 2010
Hi,
I would like to propose a community effort to enhance the API of Qt Creator.
I can see several areas where the community can help Nokia developers.
Coding style
========
I was a little frustrated with my first big merge request, when I had to make
all those little changes to follow the coding style, whereas the existing code
is not following it:
* use of m_ for class members
* use of d-pointer for exported classes
* use class instead of struct
I can also see some inconsistency, I'm sure I can find 5 different way to create
a d-pointer (private class inside the class, private class outside, append
Private to the class name, just Private, struct, class...).
Documentation
==========
The documentation of exported is sometimes missing, or incomplete.
I'm talking about the code documentation, for plugin developers, not the
documentation of Qt Creator.
API
==
The API is sometime strange, I have two examples in mind I came across
recently:
* it looks like exporting the plugin class is a bad idea, but the
ProjectExplorerPlugin is exported whereas other plugins are using
handler/manager/whatever
* the openEditorAt method is a static method in BaseTextEditor, whereas the
EditorManager has openEditor and openEditorWithContents
Maybe there are good reason for those choices, it just feels strange.
There are also some lack for the plugin developers. I know that the policy is
to not export anything until it's used, but some method seems so useful that
they should be exported, so the developer can use them directly (changing the
Qt Creator code can be discouraging). Some example:
* there's no method to get the different panes
* I'm biased here but I think switchHeaderSource can be really really useful
(see my MR #188)
The goal of the project is to:
* collect all these (I'm thinking of a wiki page on Qt DevNet)
* discuss what should be done with the Nokia developers
* propose some MR to enhance the code
I totally understand that Nokia developers don't have time to polish the API,
and need more features (Meego target, QML integration...), but it can't
succeed without your help.
What do you think?
Cheers,
Nicolas
--
Nicolas Arnaud-Cormos | nicolas.arnaud-cormos at kdab.com | Software Engineer
Klarälvdalens Datakonsult AB, a KDAB Group company
Tel. Sweden (HQ) +46-563-540090, USA +1-866-777-KDAB(5322)
KDAB - Qt Experts - Platform-independent software solutions
More information about the Qt-creator-old
mailing list