|
|
|
This file describes the coding conventions used in Gwenview.
|
|
|
|
|
|
|
|
|
|
|
|
Naming
|
|
|
|
------
|
|
|
|
|
|
|
|
Classes should be named like this: MyClass. The class MyClass should be defined
|
|
|
|
in the myclass.h file and implemented in myclass.cpp.
|
|
|
|
|
|
|
|
Variables and functions should be named like this: myVariable. Static and
|
|
|
|
member variables are identified by a prefix (s or m), without underscore.
|
|
|
|
|
|
|
|
int sStaticVariable.
|
|
|
|
|
|
|
|
class MyClass {
|
|
|
|
int mMemberVariable;
|
|
|
|
|
|
|
|
void doSomething() {
|
|
|
|
int localVariable;
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
Enum items and consts are spelled like this:
|
|
|
|
|
|
|
|
const int MY_CONST_VALUE=120;
|
|
|
|
enum AnEnum { ITEM1, ITEM2, ITEM3 };
|
|
|
|
|
|
|
|
|
|
|
|
Namespace
|
|
|
|
---------
|
|
|
|
|
|
|
|
All code should be enclosed in the "Gwenview" namespace. Make sure the closing
|
|
|
|
curly bracket of the namespace looks like this :
|
|
|
|
|
|
|
|
} // namespace
|
|
|
|
|
|
|
|
This avoids wondering why the curly bracket is here.
|
|
|
|
|
|
|
|
|
|
|
|
Code layout
|
|
|
|
-----------
|
|
|
|
|
|
|
|
Use tabs, not spaces.
|
|
|
|
|
|
|
|
The opening brace follows the function/class/for/while. Insert a space after
|
|
|
|
commas and after for/while keywords.
|
|
|
|
|
|
|
|
void myFunction() {
|
|
|
|
int v1;
|
|
|
|
int v2=12;
|
|
|
|
for (v1=0; v1<10; ++v1) {
|
|
|
|
doSomething(v1, v2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
class MyClass {
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
If the if content is only one line long, you can place it on the same line and
|
|
|
|
omit the curly braces, but DO NOT omit them if you place the content after the
|
|
|
|
if.
|
|
|
|
|
|
|
|
// Ok
|
|
|
|
if (!data) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
// Ok too
|
|
|
|
if (!data) return;
|
|
|
|
|
|
|
|
// Bad
|
|
|
|
if (!data)
|
|
|
|
return;
|
|
|
|
|
|
|
|
|
|
|
|
Include files
|
|
|
|
-------------
|
|
|
|
|
|
|
|
Group include files in the Qt, KDE or local groups and sort them
|
|
|
|
alphabetically. When writing the implementation file of a class which is a
|
|
|
|
Q_OBJECT, make sure you include the .moc file, not the .h.
|
|
|
|
|
|
|
|
// Qt
|
|
|
|
#include <qobject.h>
|
|
|
|
#include <qwidget.h>
|
|
|
|
|
|
|
|
// KDE
|
|
|
|
#include <kiconview.h>
|
|
|
|
#include <tdelistview.h>
|
|
|
|
|
|
|
|
// Local
|
|
|
|
#include "aclass.h"
|
|
|
|
#include "myclass.moc"
|