[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [calligra/krita-testing-kazakov] krita: Rename painting tools according to the suggested guideline
From: Dmitry Kazakov <dimula73 () gmail ! com>
Date: 2014-05-25 10:40:48
Message-ID: E1WoVrE-0006i5-Lb () scm ! kde ! org
[Download RAW message or body]
Git commit f9c305e920606d9fffe8a6c6787c90385ed7b2f2 by Dmitry Kazakov.
Committed on 25/05/2014 at 09:56.
Pushed by dkazakov into branch 'krita-testing-kazakov'.
Rename painting tools according to the suggested guideline
M +1 -1 krita/plugins/tools/defaulttools/kis_tool_brush.cc
M +1 -1 krita/plugins/tools/defaulttools/kis_tool_brush.h
M +1 -1 krita/plugins/tools/defaulttools/kis_tool_ellipse.cc
M +1 -1 krita/plugins/tools/defaulttools/kis_tool_ellipse.h
M +1 -1 krita/plugins/tools/defaulttools/kis_tool_line.cc
M +1 -1 krita/plugins/tools/defaulttools/kis_tool_line.h
M +1 -0 krita/plugins/tools/defaulttools/kis_tool_multihand.cpp
M +1 -1 krita/plugins/tools/defaulttools/kis_tool_multihand.h
M +1 -1 krita/plugins/tools/defaulttools/kis_tool_path.cc
M +1 -1 krita/plugins/tools/defaulttools/kis_tool_path.h
M +1 -1 krita/plugins/tools/defaulttools/kis_tool_pencil.cc
M +1 -1 krita/plugins/tools/defaulttools/kis_tool_pencil.h
M +1 -1 krita/plugins/tools/defaulttools/kis_tool_rectangle.cc
M +1 -1 krita/plugins/tools/defaulttools/kis_tool_rectangle.h
M +1 -1 krita/plugins/tools/tool_dyna/kis_tool_dyna.cpp
M +1 -1 krita/plugins/tools/tool_dyna/kis_tool_dyna.h
M +1 -1 krita/plugins/tools/tool_polygon/kis_tool_polygon.cc
M +1 -1 krita/plugins/tools/tool_polygon/kis_tool_polygon.h
M +1 -1 krita/plugins/tools/tool_polyline/kis_tool_polyline.cc
M +1 -1 krita/plugins/tools/tool_polyline/kis_tool_polyline.h
M +2 -2 krita/ui/tool/kis_tool_freehand.cc
M +1 -1 krita/ui/tool/kis_tool_freehand.h
M +6 -1 krita/ui/tool/kis_tool_freehand_helper.cpp
M +1 -0 krita/ui/tool/kis_tool_freehand_helper.h
M +2 -1 krita/ui/tool/kis_tool_multihand_helper.cpp
M +1 -0 krita/ui/tool/kis_tool_multihand_helper.h
http://commits.kde.org/calligra/f9c305e920606d9fffe8a6c6787c90385ed7b2f2
diff --git a/krita/plugins/tools/defaulttools/kis_tool_brush.cc \
b/krita/plugins/tools/defaulttools/kis_tool_brush.cc index ceab3d8..c9aa171 100644
--- a/krita/plugins/tools/defaulttools/kis_tool_brush.cc
+++ b/krita/plugins/tools/defaulttools/kis_tool_brush.cc
@@ -37,7 +37,7 @@
KisToolBrush::KisToolBrush(KoCanvasBase * canvas)
: KisToolFreehand(canvas,
KisCursor::load("tool_freehand_cursor.png", 5, 5),
- i18nc("(qtundo-format)", "Brush"))
+ i18nc("(qtundo-format)", "Freehand Brush Stroke"))
{
setObjectName("tool_brush");
}
diff --git a/krita/plugins/tools/defaulttools/kis_tool_brush.h \
b/krita/plugins/tools/defaulttools/kis_tool_brush.h index 25e47da..1afa570 100644
--- a/krita/plugins/tools/defaulttools/kis_tool_brush.h
+++ b/krita/plugins/tools/defaulttools/kis_tool_brush.h
@@ -85,7 +85,7 @@ public:
KisToolBrushFactory(const QStringList&)
: KoToolFactoryBase("KritaShape/KisToolBrush") {
- setToolTip(i18n("Paint with brushes"));
+ setToolTip(i18n("Freehand Brush Tool"));
// Temporarily
setToolType(TOOL_TYPE_SHAPE);
diff --git a/krita/plugins/tools/defaulttools/kis_tool_ellipse.cc \
b/krita/plugins/tools/defaulttools/kis_tool_ellipse.cc index dbde9e6..d911b11 100644
--- a/krita/plugins/tools/defaulttools/kis_tool_ellipse.cc
+++ b/krita/plugins/tools/defaulttools/kis_tool_ellipse.cc
@@ -61,7 +61,7 @@ void KisToolEllipse::finishRect(const QRectF& rect)
if (!currentNode()->inherits("KisShapeLayer")) {
KisSystemLocker locker(currentNode());
- KisFigurePaintingToolHelper helper(i18n("Ellipse"),
+ KisFigurePaintingToolHelper helper(i18nc("(qtundo-format)", "Draw Ellipse"),
image(),
canvas()->resourceManager(),
strokeStyle(),
diff --git a/krita/plugins/tools/defaulttools/kis_tool_ellipse.h \
b/krita/plugins/tools/defaulttools/kis_tool_ellipse.h index b281ebf..f2ec9d1 100644
--- a/krita/plugins/tools/defaulttools/kis_tool_ellipse.h
+++ b/krita/plugins/tools/defaulttools/kis_tool_ellipse.h
@@ -53,7 +53,7 @@ class KisToolEllipseFactory : public KoToolFactoryBase
public:
KisToolEllipseFactory(const QStringList&)
: KoToolFactoryBase("KritaShape/KisToolEllipse") {
- setToolTip(i18n("Draw an ellipse"));
+ setToolTip(i18n("Ellipse Tool"));
setToolType(TOOL_TYPE_SHAPE);
setActivationShapeId(KRITA_TOOL_ACTIVATION_ID);
setIconName(koIconNameCStr("krita_tool_ellipse"));
diff --git a/krita/plugins/tools/defaulttools/kis_tool_line.cc \
b/krita/plugins/tools/defaulttools/kis_tool_line.cc index 2b8a15d..06bd43a 100644
--- a/krita/plugins/tools/defaulttools/kis_tool_line.cc
+++ b/krita/plugins/tools/defaulttools/kis_tool_line.cc
@@ -183,7 +183,7 @@ void KisToolLine::endPrimaryAction(KoPointerEvent *event)
#endif
if (nodeAbility == PAINT) {
- KisFigurePaintingToolHelper helper(i18nc("a straight drawn line", "Line"),
+ KisFigurePaintingToolHelper helper(i18nc("(qtundo-format)", "Draw Line"),
image(),
canvas()->resourceManager(),
KisPainter::StrokeStyleBrush,
diff --git a/krita/plugins/tools/defaulttools/kis_tool_line.h \
b/krita/plugins/tools/defaulttools/kis_tool_line.h index 803657d..cceb585 100644
--- a/krita/plugins/tools/defaulttools/kis_tool_line.h
+++ b/krita/plugins/tools/defaulttools/kis_tool_line.h
@@ -82,7 +82,7 @@ public:
KisToolLineFactory(const QStringList&)
: KoToolFactoryBase("KritaShape/KisToolLine") {
- setToolTip(i18n("Draw a straight line with the current brush"));
+ setToolTip(i18n("Line Tool"));
// Temporarily
setToolType(TOOL_TYPE_SHAPE);
setActivationShapeId(KRITA_TOOL_ACTIVATION_ID);
diff --git a/krita/plugins/tools/defaulttools/kis_tool_multihand.cpp \
b/krita/plugins/tools/defaulttools/kis_tool_multihand.cpp index cfcf292..23f0451 \
100644
--- a/krita/plugins/tools/defaulttools/kis_tool_multihand.cpp
+++ b/krita/plugins/tools/defaulttools/kis_tool_multihand.cpp
@@ -56,6 +56,7 @@ KisToolMultihand::KisToolMultihand(KoCanvasBase *canvas)
{
m_helper =
new KisToolMultihandHelper(paintingInformationBuilder(),
+ i18nc("(qtundo-format)", "Multibrush Stroke"),
recordingAdapter());
resetHelper(m_helper);
diff --git a/krita/plugins/tools/defaulttools/kis_tool_multihand.h \
b/krita/plugins/tools/defaulttools/kis_tool_multihand.h index 3dda937..512f255 100644
--- a/krita/plugins/tools/defaulttools/kis_tool_multihand.h
+++ b/krita/plugins/tools/defaulttools/kis_tool_multihand.h
@@ -96,7 +96,7 @@ public:
KisToolMultiBrushFactory(const QStringList&)
: KoToolFactoryBase("KritaShape/KisToolMultiBrush") {
- setToolTip(i18n("Paint with multibrushes"));
+ setToolTip(i18n("Multibrush Tool"));
// Temporarily
setToolType(TOOL_TYPE_SHAPE);
diff --git a/krita/plugins/tools/defaulttools/kis_tool_path.cc \
b/krita/plugins/tools/defaulttools/kis_tool_path.cc index fbdc002..b4a9d51 100644
--- a/krita/plugins/tools/defaulttools/kis_tool_path.cc
+++ b/krita/plugins/tools/defaulttools/kis_tool_path.cc
@@ -72,5 +72,5 @@ void __KisToolPathLocalTool::paintPath(KoPathShape &pathShape, \
QPainter &painter
void __KisToolPathLocalTool::addPathShape(KoPathShape* pathShape)
{
- m_parentTool->addPathShape(pathShape, i18n("Path"));
+ m_parentTool->addPathShape(pathShape, i18nc("(qtundo-format)", "Draw Bezier \
Curve")); }
diff --git a/krita/plugins/tools/defaulttools/kis_tool_path.h \
b/krita/plugins/tools/defaulttools/kis_tool_path.h index fb96247..36db16a 100644
--- a/krita/plugins/tools/defaulttools/kis_tool_path.h
+++ b/krita/plugins/tools/defaulttools/kis_tool_path.h
@@ -73,7 +73,7 @@ class KisToolPathFactory : public KoToolFactoryBase
public:
KisToolPathFactory(const QStringList&)
: KoToolFactoryBase("KisToolPath") {
- setToolTip(i18n("Draw a path. Shift-mouseclick ends the path."));
+ setToolTip(i18n("Bezier Curve Tool. Shift-mouseclick ends the curve."));
setToolType(TOOL_TYPE_SHAPE);
setActivationShapeId(KRITA_TOOL_ACTIVATION_ID);
setIconName(koIconNameCStr("krita_draw_path"));
diff --git a/krita/plugins/tools/defaulttools/kis_tool_pencil.cc \
b/krita/plugins/tools/defaulttools/kis_tool_pencil.cc index 73d5639..91f1fb2 100644
--- a/krita/plugins/tools/defaulttools/kis_tool_pencil.cc
+++ b/krita/plugins/tools/defaulttools/kis_tool_pencil.cc
@@ -58,5 +58,5 @@ void __KisToolPencilLocalTool::addPathShape(KoPathShape* pathShape, \
bool closePa pathShape->normalize();
}
- m_parentTool->addPathShape(pathShape, i18n("Path"));
+ m_parentTool->addPathShape(pathShape, i18nc("(qtundo-format)", "Draw Freehand \
Path")); }
diff --git a/krita/plugins/tools/defaulttools/kis_tool_pencil.h \
b/krita/plugins/tools/defaulttools/kis_tool_pencil.h index 7f847cf..8a69428 100644
--- a/krita/plugins/tools/defaulttools/kis_tool_pencil.h
+++ b/krita/plugins/tools/defaulttools/kis_tool_pencil.h
@@ -64,7 +64,7 @@ class KisToolPencilFactory : public KoToolFactoryBase
public:
KisToolPencilFactory(const QStringList&)
: KoToolFactoryBase("KisToolPencil") {
- setToolTip(i18n("Draw a freehand path."));
+ setToolTip(i18n("Freehand Path Tool"));
setToolType(TOOL_TYPE_SHAPE);
setActivationShapeId(KRITA_TOOL_ACTIVATION_ID);
setIconName(koIconNameCStr("krita_tool_freehandvector"));
diff --git a/krita/plugins/tools/defaulttools/kis_tool_rectangle.cc \
b/krita/plugins/tools/defaulttools/kis_tool_rectangle.cc index 8fd2e69..9550e45 \
100644
--- a/krita/plugins/tools/defaulttools/kis_tool_rectangle.cc
+++ b/krita/plugins/tools/defaulttools/kis_tool_rectangle.cc
@@ -64,7 +64,7 @@ void KisToolRectangle::finishRect(const QRectF &rect)
if (!currentNode()->inherits("KisShapeLayer")) {
KisSystemLocker locker(currentNode());
- KisFigurePaintingToolHelper helper(i18n("Rectangle"),
+ KisFigurePaintingToolHelper helper(i18nc("(qtundo-format)", "Draw \
Rectangle"), image(),
canvas()->resourceManager(),
strokeStyle(),
diff --git a/krita/plugins/tools/defaulttools/kis_tool_rectangle.h \
b/krita/plugins/tools/defaulttools/kis_tool_rectangle.h index 6509d2d..b387d51 100644
--- a/krita/plugins/tools/defaulttools/kis_tool_rectangle.h
+++ b/krita/plugins/tools/defaulttools/kis_tool_rectangle.h
@@ -58,7 +58,7 @@ class KisToolRectangleFactory : public KoToolFactoryBase
public:
KisToolRectangleFactory(const QStringList&)
: KoToolFactoryBase("KritaShape/KisToolRectangle") {
- setToolTip(i18n("Draw a rectangle"));
+ setToolTip(i18n("Rectangle Tool"));
setToolType(TOOL_TYPE_SHAPE);
setActivationShapeId(KRITA_TOOL_ACTIVATION_ID);
diff --git a/krita/plugins/tools/tool_dyna/kis_tool_dyna.cpp \
b/krita/plugins/tools/tool_dyna/kis_tool_dyna.cpp index 52e4cc9..84873d6 100644
--- a/krita/plugins/tools/tool_dyna/kis_tool_dyna.cpp
+++ b/krita/plugins/tools/tool_dyna/kis_tool_dyna.cpp
@@ -43,7 +43,7 @@
KisToolDyna::KisToolDyna(KoCanvasBase * canvas)
- : KisToolFreehand(canvas, KisCursor::load("tool_freehand_cursor.png", 5, 5), \
i18nc("(qtundo-format)", "Dyna")) + : KisToolFreehand(canvas, \
KisCursor::load("tool_freehand_cursor.png", 5, 5), i18nc("(qtundo-format)", "Dynamic \
Brush Stroke")) {
setObjectName("tool_dyna");
initDyna();
diff --git a/krita/plugins/tools/tool_dyna/kis_tool_dyna.h \
b/krita/plugins/tools/tool_dyna/kis_tool_dyna.h index 97084d0..e8940c7 100644
--- a/krita/plugins/tools/tool_dyna/kis_tool_dyna.h
+++ b/krita/plugins/tools/tool_dyna/kis_tool_dyna.h
@@ -152,7 +152,7 @@ public:
KisToolDynaFactory(const QStringList&)
: KoToolFactoryBase("KritaShape/KisToolDyna") {
- setToolTip(i18n("Paint with brushes using dynamic movements"));
+ setToolTip(i18n("Dynamic Brush Tool"));
// Temporarily
setToolType(TOOL_TYPE_SHAPE);
diff --git a/krita/plugins/tools/tool_polygon/kis_tool_polygon.cc \
b/krita/plugins/tools/tool_polygon/kis_tool_polygon.cc index be062ab..e658c7a 100644
--- a/krita/plugins/tools/tool_polygon/kis_tool_polygon.cc
+++ b/krita/plugins/tools/tool_polygon/kis_tool_polygon.cc
@@ -60,7 +60,7 @@ void KisToolPolygon::finishPolyline(const QVector<QPointF>& points)
}
if (!currentNode()->inherits("KisShapeLayer")) {
KisSystemLocker locker(currentNode());
- KisFigurePaintingToolHelper helper(i18n("Polygon"),
+ KisFigurePaintingToolHelper helper(i18nc("(qtundo-format)", "Draw Polygon"),
image(),
canvas()->resourceManager(),
strokeStyle(),
diff --git a/krita/plugins/tools/tool_polygon/kis_tool_polygon.h \
b/krita/plugins/tools/tool_polygon/kis_tool_polygon.h index 3f1a3bb..d6a8c6e 100644
--- a/krita/plugins/tools/tool_polygon/kis_tool_polygon.h
+++ b/krita/plugins/tools/tool_polygon/kis_tool_polygon.h
@@ -48,7 +48,7 @@ class KisToolPolygonFactory : public KoToolFactoryBase
public:
KisToolPolygonFactory(const QStringList&)
: KoToolFactoryBase("KisToolPolygon") {
- setToolTip(i18n("Draw a polygon. Shift-mouseclick ends the polygon."));
+ setToolTip(i18n("Polygon Tool. Shift-mouseclick ends the polygon."));
setToolType(TOOL_TYPE_SHAPE);
setActivationShapeId(KRITA_TOOL_ACTIVATION_ID);
setIconName(koIconNameCStr("tool_polygon"));
diff --git a/krita/plugins/tools/tool_polyline/kis_tool_polyline.cc \
b/krita/plugins/tools/tool_polyline/kis_tool_polyline.cc index 3e9df36..ec308aa \
100644
--- a/krita/plugins/tools/tool_polyline/kis_tool_polyline.cc
+++ b/krita/plugins/tools/tool_polyline/kis_tool_polyline.cc
@@ -64,7 +64,7 @@ void KisToolPolyline::finishPolyline(const QVector<QPointF>& \
points) }
if (!currentNode()->inherits("KisShapeLayer")) {
KisSystemLocker locker(currentNode());
- KisFigurePaintingToolHelper helper(i18n("Polyline"),
+ KisFigurePaintingToolHelper helper(i18nc("(qtundo-format)", "Draw \
Polyline"), image(),
canvas()->resourceManager(),
strokeStyle(),
diff --git a/krita/plugins/tools/tool_polyline/kis_tool_polyline.h \
b/krita/plugins/tools/tool_polyline/kis_tool_polyline.h index 7d46dab..24f3642 100644
--- a/krita/plugins/tools/tool_polyline/kis_tool_polyline.h
+++ b/krita/plugins/tools/tool_polyline/kis_tool_polyline.h
@@ -48,7 +48,7 @@ class KisToolPolylineFactory : public KoToolFactoryBase
public:
KisToolPolylineFactory(const QStringList&)
: KoToolFactoryBase("KisToolPolyline") {
- setToolTip(i18n("Draw a polyline. Shift-mouseclick ends the polyline."));
+ setToolTip(i18n("Polyline Tool. Shift-mouseclick ends the polyline."));
setToolType(TOOL_TYPE_SHAPE);
setActivationShapeId(KRITA_TOOL_ACTIVATION_ID);
setIconName(koIconNameCStr("polyline"));
diff --git a/krita/ui/tool/kis_tool_freehand.cc b/krita/ui/tool/kis_tool_freehand.cc
index 88c4d36..6a28290 100644
--- a/krita/ui/tool/kis_tool_freehand.cc
+++ b/krita/ui/tool/kis_tool_freehand.cc
@@ -60,7 +60,7 @@
#include "strokes/freehand_stroke.h"
-KisToolFreehand::KisToolFreehand(KoCanvasBase * canvas, const QCursor & cursor, \
const QString & /*transactionText*/) +KisToolFreehand::KisToolFreehand(KoCanvasBase * \
canvas, const QCursor & cursor, const QString &transactionText) : \
KisToolPaint(canvas, cursor) {
m_assistant = false;
@@ -70,7 +70,7 @@ KisToolFreehand::KisToolFreehand(KoCanvasBase * canvas, const \
QCursor & cursor,
m_infoBuilder = new KisToolPaintingInformationBuilder(this);
m_recordingAdapter = new KisRecordingAdapter();
- m_helper = new KisToolFreehandHelper(m_infoBuilder, m_recordingAdapter);
+ m_helper = new KisToolFreehandHelper(m_infoBuilder, transactionText, \
m_recordingAdapter); }
KisToolFreehand::~KisToolFreehand()
diff --git a/krita/ui/tool/kis_tool_freehand.h b/krita/ui/tool/kis_tool_freehand.h
index b6bb0fd..7809e6a 100644
--- a/krita/ui/tool/kis_tool_freehand.h
+++ b/krita/ui/tool/kis_tool_freehand.h
@@ -50,7 +50,7 @@ class KRITAUI_EXPORT KisToolFreehand : public KisToolPaint
public:
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
- KisToolFreehand(KoCanvasBase * canvas, const QCursor & cursor, const QString & \
transactionText); + KisToolFreehand(KoCanvasBase * canvas, const QCursor & cursor, \
const QString &transactionText); virtual ~KisToolFreehand();
virtual int flags() const;
diff --git a/krita/ui/tool/kis_tool_freehand_helper.cpp \
b/krita/ui/tool/kis_tool_freehand_helper.cpp index 48a8011..eba3a35 100644
--- a/krita/ui/tool/kis_tool_freehand_helper.cpp
+++ b/krita/ui/tool/kis_tool_freehand_helper.cpp
@@ -86,6 +86,8 @@ struct KisToolFreehandHelper::Private
KisRecordingAdapter *recordingAdapter;
KisStrokesFacade *strokesFacade;
+ QString transactionText;
+
bool haveTangent;
QPointF previousTangent;
@@ -113,12 +115,15 @@ struct KisToolFreehandHelper::Private
KisToolFreehandHelper::KisToolFreehandHelper(KisPaintingInformationBuilder \
*infoBuilder, + const QString \
&transactionText,
KisRecordingAdapter *recordingAdapter)
: m_d(new Private)
{
m_d->infoBuilder = infoBuilder;
m_d->recordingAdapter = recordingAdapter;
+ m_d->transactionText = transactionText;
+
m_d->strokeTimeoutTimer.setSingleShot(true);
connect(&m_d->strokeTimeoutTimer, SIGNAL(timeout()), SLOT(finishStroke()));
@@ -198,7 +203,7 @@ void KisToolFreehandHelper::initPaint(KoPointerEvent *event,
KisStrokeStrategy *stroke =
new FreehandStrokeStrategy(m_d->resources->needsIndirectPainting(),
m_d->resources->indirectPaintingCompositeOp(),
- m_d->resources, m_d->painterInfos, i18n("Freehand \
Brush Stroke")); + m_d->resources, \
m_d->painterInfos, m_d->transactionText);
m_d->strokeId = m_d->strokesFacade->startStroke(stroke);
diff --git a/krita/ui/tool/kis_tool_freehand_helper.h \
b/krita/ui/tool/kis_tool_freehand_helper.h index ee49086..3c37d1f 100644
--- a/krita/ui/tool/kis_tool_freehand_helper.h
+++ b/krita/ui/tool/kis_tool_freehand_helper.h
@@ -49,6 +49,7 @@ protected:
public:
KisToolFreehandHelper(KisPaintingInformationBuilder *infoBuilder,
+ const QString &transactionText = "",
KisRecordingAdapter *recordingAdapter = 0);
~KisToolFreehandHelper();
diff --git a/krita/ui/tool/kis_tool_multihand_helper.cpp \
b/krita/ui/tool/kis_tool_multihand_helper.cpp index 2f80122..f6d8df6 100644
--- a/krita/ui/tool/kis_tool_multihand_helper.cpp
+++ b/krita/ui/tool/kis_tool_multihand_helper.cpp
@@ -29,8 +29,9 @@ struct KisToolMultihandHelper::Private
};
KisToolMultihandHelper::KisToolMultihandHelper(KisPaintingInformationBuilder \
*infoBuilder, + const QString \
&transactionText,
KisRecordingAdapter \
*recordingAdapter)
- : KisToolFreehandHelper(infoBuilder, recordingAdapter)
+ : KisToolFreehandHelper(infoBuilder, transactionText, recordingAdapter)
, d(new Private)
{
}
diff --git a/krita/ui/tool/kis_tool_multihand_helper.h \
b/krita/ui/tool/kis_tool_multihand_helper.h index d996049..a62c101 100644
--- a/krita/ui/tool/kis_tool_multihand_helper.h
+++ b/krita/ui/tool/kis_tool_multihand_helper.h
@@ -28,6 +28,7 @@ class KRITAUI_EXPORT KisToolMultihandHelper : public \
KisToolFreehandHelper
public:
KisToolMultihandHelper(KisPaintingInformationBuilder *infoBuilder,
+ const QString &transactionText,
KisRecordingAdapter *recordingAdapter = 0);
virtual ~KisToolMultihandHelper();
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic